mirror of
https://github.com/Sevichecc/Urara-Blog.git
synced 2025-05-05 07:29:31 +08:00
50 lines
No EOL
1.9 KiB
Text
50 lines
No EOL
1.9 KiB
Text
import { TSESTree } from '../ts-estree';
|
|
import { EcmaVersion } from '../ts-eslint';
|
|
import { Scope } from './Scope';
|
|
import { Variable } from './Variable';
|
|
interface ScopeManagerOptions {
|
|
directive?: boolean;
|
|
optimistic?: boolean;
|
|
ignoreEval?: boolean;
|
|
nodejsScope?: boolean;
|
|
sourceType?: 'module' | 'script';
|
|
impliedStrict?: boolean;
|
|
ecmaVersion?: EcmaVersion;
|
|
}
|
|
interface ScopeManager {
|
|
__options: ScopeManagerOptions;
|
|
__currentScope: Scope;
|
|
__nodeToScope: WeakMap<TSESTree.Node, Scope[]>;
|
|
__declaredVariables: WeakMap<TSESTree.Node, Variable[]>;
|
|
scopes: Scope[];
|
|
globalScope: Scope;
|
|
__useDirective(): boolean;
|
|
__isOptimistic(): boolean;
|
|
__ignoreEval(): boolean;
|
|
__isNodejsScope(): boolean;
|
|
isModule(): boolean;
|
|
isImpliedStrict(): boolean;
|
|
isStrictModeSupported(): boolean;
|
|
__get(node: TSESTree.Node): Scope | undefined;
|
|
getDeclaredVariables(node: TSESTree.Node): Variable[];
|
|
acquire(node: TSESTree.Node, inner?: boolean): Scope | null;
|
|
acquireAll(node: TSESTree.Node): Scope | null;
|
|
release(node: TSESTree.Node, inner?: boolean): Scope | null;
|
|
attach(): void;
|
|
detach(): void;
|
|
__nestScope<T extends Scope>(scope: T): T;
|
|
__nestGlobalScope(node: TSESTree.Node): Scope;
|
|
__nestBlockScope(node: TSESTree.Node): Scope;
|
|
__nestFunctionScope(node: TSESTree.Node, isMethodDefinition: boolean): Scope;
|
|
__nestForScope(node: TSESTree.Node): Scope;
|
|
__nestCatchScope(node: TSESTree.Node): Scope;
|
|
__nestWithScope(node: TSESTree.Node): Scope;
|
|
__nestClassScope(node: TSESTree.Node): Scope;
|
|
__nestSwitchScope(node: TSESTree.Node): Scope;
|
|
__nestModuleScope(node: TSESTree.Node): Scope;
|
|
__nestFunctionExpressionNameScope(node: TSESTree.Node): Scope;
|
|
__isES6(): boolean;
|
|
}
|
|
declare const ScopeManager: new (options: ScopeManagerOptions) => ScopeManager;
|
|
export { ScopeManager, ScopeManagerOptions };
|
|
//# sourceMappingURL=ScopeManager.d.ts.map |