+++ /dev/null
-import { TSESTree } from '../../ts-estree';\r
-import * as TSESLint from '../../ts-eslint';\r
-declare const ReferenceTrackerREAD: unique symbol;\r
-declare const ReferenceTrackerCALL: unique symbol;\r
-declare const ReferenceTrackerCONSTRUCT: unique symbol;\r
-interface ReferenceTracker {\r
- /**\r
- * Iterate the references that the given `traceMap` determined.\r
- * This method starts to search from global variables.\r
- *\r
- * @see {@link https://eslint-utils.mysticatea.dev/api/scope-utils.html#tracker-iterateglobalreferences}\r
- */\r
- iterateGlobalReferences<T>(traceMap: ReferenceTracker.TraceMap<T>): IterableIterator<ReferenceTracker.FoundReference<T>>;\r
- /**\r
- * Iterate the references that the given `traceMap` determined.\r
- * This method starts to search from `require()` expression.\r
- *\r
- * @see {@link https://eslint-utils.mysticatea.dev/api/scope-utils.html#tracker-iteratecjsreferences}\r
- */\r
- iterateCjsReferences<T>(traceMap: ReferenceTracker.TraceMap<T>): IterableIterator<ReferenceTracker.FoundReference<T>>;\r
- /**\r
- * Iterate the references that the given `traceMap` determined.\r
- * This method starts to search from `import`/`export` declarations.\r
- *\r
- * @see {@link https://eslint-utils.mysticatea.dev/api/scope-utils.html#tracker-iterateesmreferences}\r
- */\r
- iterateEsmReferences<T>(traceMap: ReferenceTracker.TraceMap<T>): IterableIterator<ReferenceTracker.FoundReference<T>>;\r
-}\r
-interface ReferenceTrackerStatic {\r
- new (globalScope: TSESLint.Scope.Scope, options?: {\r
- /**\r
- * The mode which determines how the `tracker.iterateEsmReferences()` method scans CommonJS modules.\r
- * If this is `"strict"`, the method binds CommonJS modules to the default export. Otherwise, the method binds\r
- * CommonJS modules to both the default export and named exports. Optional. Default is `"strict"`.\r
- */\r
- mode: 'strict' | 'legacy';\r
- /**\r
- * The name list of Global Object. Optional. Default is `["global", "globalThis", "self", "window"]`.\r
- */\r
- globalObjectNames: readonly string[];\r
- }): ReferenceTracker;\r
- readonly READ: typeof ReferenceTrackerREAD;\r
- readonly CALL: typeof ReferenceTrackerCALL;\r
- readonly CONSTRUCT: typeof ReferenceTrackerCONSTRUCT;\r
-}\r
-declare namespace ReferenceTracker {\r
- type READ = ReferenceTrackerStatic['READ'];\r
- type CALL = ReferenceTrackerStatic['CALL'];\r
- type CONSTRUCT = ReferenceTrackerStatic['CONSTRUCT'];\r
- type ReferenceType = READ | CALL | CONSTRUCT;\r
- type TraceMap<T = any> = Record<string, TraceMapElement<T>>;\r
- interface TraceMapElement<T> {\r
- [ReferenceTrackerREAD]?: T;\r
- [ReferenceTrackerCALL]?: T;\r
- [ReferenceTrackerCONSTRUCT]?: T;\r
- [key: string]: TraceMapElement<T>;\r
- }\r
- interface FoundReference<T = any> {\r
- node: TSESTree.Node;\r
- path: readonly string[];\r
- type: ReferenceType;\r
- entry: T;\r
- }\r
-}\r
-/**\r
- * The tracker for references. This provides reference tracking for global variables, CommonJS modules, and ES modules.\r
- *\r
- * @see {@link https://eslint-utils.mysticatea.dev/api/scope-utils.html#referencetracker-class}\r
- */\r
-declare const ReferenceTracker: ReferenceTrackerStatic;\r
-export { ReferenceTracker };\r
-//# sourceMappingURL=ReferenceTracker.d.ts.map\r