# TSModuleScope

A lexical scope for TypeScript which represents the top-level scope of a module. Manages the module’s imported and exported symbols.

## Members

Extends [TSLexicalScope](../tslexicalscope/)

|                 |                                                                                                          |                                                                                                                                                                                                                                                         |
| --------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| addImport       | (targetSymbol: TSOutputSymbol, targetModule: TSModuleScope, options: AddImportOptions) => TSOutputSymbol |                                                                                                                                                                                                                                                         |
| debugInfo       | Record\<string, unknown>                                                                                 |                                                                                                                                                                                                                                                         |
| exportedSymbols | Map<[Refkey](../../../core/types/refkey/), [TSOutputSymbol](../tsoutputsymbol/)>                         |                                                                                                                                                                                                                                                         |
| getAllSymbols   | () => Set\<TSOutputSymbol>                                                                               |                                                                                                                                                                                                                                                         |
| importedModules | [ImportRecords](../importrecords/)                                                                       |                                                                                                                                                                                                                                                         |
| importedSymbols | Map<[TSOutputSymbol](../tsoutputsymbol/), [TSOutputSymbol](../tsoutputsymbol/)>                          |                                                                                                                                                                                                                                                         |
| removeImport    | (targetSymbol: TSOutputSymbol, options: AddImportOptions) => void                                        | Decrement the refcount for an import previously registered via addImport. When the last live consumer goes away, the local import symbol is deleted, which removes it from the module’s name spaces and triggers name-conflict-resolver reconciliation. |
