diff --git a/src/service/transformer/declaration-tree-shaker/reference/is-referenced/is-referenced.ts b/src/service/transformer/declaration-tree-shaker/reference/is-referenced/is-referenced.ts index 686bcf3a..a24419b4 100644 --- a/src/service/transformer/declaration-tree-shaker/reference/is-referenced/is-referenced.ts +++ b/src/service/transformer/declaration-tree-shaker/reference/is-referenced/is-referenced.ts @@ -1,4 +1,4 @@ -import {forEachChild, isExportAssignment, isExportDeclaration, isExportSpecifier, isIdentifier, Node} from "typescript"; +import {forEachChild, isExportAssignment, isExportDeclaration, isExportSpecifier, isIdentifier, isModuleDeclaration, Node} from "typescript"; import {IsReferencedOptions} from "./is-referenced-options"; import {nodeContainsChild} from "../../util/node-contains-child"; import {getIdentifiersForNode} from "../../util/get-identifiers-for-node"; @@ -41,7 +41,7 @@ function visitNode(currentNode: Node, options: ReferenceVisitorOptions): void { */ export function isReferenced({seenNodes = new Set(), ...options}: IsReferencedOptions): boolean { // Exports are always referenced and should never be removed - if (isExportDeclaration(options.node) || isExportSpecifier(options.node) || isExportAssignment(options.node) || hasExportModifier(options.node)) return true; + if (isExportDeclaration(options.node) || isExportSpecifier(options.node) || isExportAssignment(options.node) || hasExportModifier(options.node) || isModuleDeclaration(options.node)) return true; // If it has been computed previously, use the cached result if (options.cache.hasReferencesCache.has(options.node)) { diff --git a/src/service/transformer/declaration-tree-shaker/util/is-ambient-module-root-level-node.ts b/src/service/transformer/declaration-tree-shaker/util/is-ambient-module-root-level-node.ts index caeccdab..f3574c66 100644 --- a/src/service/transformer/declaration-tree-shaker/util/is-ambient-module-root-level-node.ts +++ b/src/service/transformer/declaration-tree-shaker/util/is-ambient-module-root-level-node.ts @@ -1,13 +1,14 @@ import { - Node, isClassDeclaration, isEnumDeclaration, isExportAssignment, isExportDeclaration, isFunctionDeclaration, isInterfaceDeclaration, + isModuleDeclaration, isTypeAliasDeclaration, - isVariableStatement + isVariableStatement, + Node } from "typescript"; /** @@ -20,6 +21,7 @@ export function isAmbientModuleRootLevelNode(node: Node): boolean { isExportDeclaration(node) || isExportAssignment(node) || isInterfaceDeclaration(node) || + isModuleDeclaration(node) || isEnumDeclaration(node) || isClassDeclaration(node) || isTypeAliasDeclaration(node) ||