1 import { TSESTree } from '../ts-estree';
2 declare namespace Scope {
3 interface ScopeManager {
5 globalScope: Scope | null;
6 acquire(node: TSESTree.Node, inner?: boolean): Scope | null;
7 getDeclaredVariables(node: TSESTree.Node): Variable[];
10 identifier: TSESTree.Identifier;
12 resolved: Variable | null;
13 writeExpr: TSESTree.Node | null;
17 isWriteOnly(): boolean;
18 isReadOnly(): boolean;
19 isReadWrite(): boolean;
23 identifiers: TSESTree.Identifier[];
24 references: Reference[];
30 type: 'block' | 'catch' | 'class' | 'for' | 'function' | 'function-expression-name' | 'global' | 'module' | 'switch' | 'with' | 'TDZ';
36 variables: Variable[];
37 set: Map<string, Variable>;
38 references: Reference[];
40 functionExpressionScope: boolean;
42 type DefinitionType = {
44 node: TSESTree.CatchClause;
48 node: TSESTree.ClassDeclaration | TSESTree.ClassExpression;
52 node: TSESTree.FunctionDeclaration | TSESTree.FunctionExpression;
55 type: 'ImplicitGlobalVariable';
56 node: TSESTree.Program;
59 type: 'ImportBinding';
60 node: TSESTree.ImportSpecifier | TSESTree.ImportDefaultSpecifier | TSESTree.ImportNamespaceSpecifier;
61 parent: TSESTree.ImportDeclaration;
64 node: TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.ArrowFunctionExpression;
68 node: TSESTree.VariableDeclarator;
69 parent: TSESTree.VariableDeclaration;
71 type Definition = DefinitionType & {
72 name: TSESTree.Identifier;
76 //# sourceMappingURL=Scope.d.ts.map