UNPKG

1.98 kBTypeScriptView Raw
1import { TSESTree } from '../ts-estree';
2import { EcmaVersion } from '../ts-eslint';
3import { Scope } from './Scope';
4import { Variable } from './Variable';
5interface ScopeManagerOptions {
6 directive?: boolean;
7 optimistic?: boolean;
8 ignoreEval?: boolean;
9 nodejsScope?: boolean;
10 sourceType?: 'module' | 'script';
11 impliedStrict?: boolean;
12 ecmaVersion?: EcmaVersion;
13}
14interface ScopeManager {
15 __options: ScopeManagerOptions;
16 __currentScope: Scope;
17 __nodeToScope: WeakMap<TSESTree.Node, Scope[]>;
18 __declaredVariables: WeakMap<TSESTree.Node, Variable[]>;
19 scopes: Scope[];
20 globalScope: Scope;
21 __useDirective(): boolean;
22 __isOptimistic(): boolean;
23 __ignoreEval(): boolean;
24 __isNodejsScope(): boolean;
25 isModule(): boolean;
26 isImpliedStrict(): boolean;
27 isStrictModeSupported(): boolean;
28 __get(node: TSESTree.Node): Scope | undefined;
29 getDeclaredVariables(node: TSESTree.Node): Variable[];
30 acquire(node: TSESTree.Node, inner?: boolean): Scope | null;
31 acquireAll(node: TSESTree.Node): Scope | null;
32 release(node: TSESTree.Node, inner?: boolean): Scope | null;
33 attach(): void;
34 detach(): void;
35 __nestScope<T extends Scope>(scope: T): T;
36 __nestGlobalScope(node: TSESTree.Node): Scope;
37 __nestBlockScope(node: TSESTree.Node): Scope;
38 __nestFunctionScope(node: TSESTree.Node, isMethodDefinition: boolean): Scope;
39 __nestForScope(node: TSESTree.Node): Scope;
40 __nestCatchScope(node: TSESTree.Node): Scope;
41 __nestWithScope(node: TSESTree.Node): Scope;
42 __nestClassScope(node: TSESTree.Node): Scope;
43 __nestSwitchScope(node: TSESTree.Node): Scope;
44 __nestModuleScope(node: TSESTree.Node): Scope;
45 __nestFunctionExpressionNameScope(node: TSESTree.Node): Scope;
46 __isES6(): boolean;
47}
48declare const ScopeManager: new (options: ScopeManagerOptions) => ScopeManager;
49export { ScopeManager, ScopeManagerOptions };
50//# sourceMappingURL=ScopeManager.d.ts.map
\No newline at end of file