export type Link = { from: import("@babel/types").Node; to: import("@babel/types").Node; label: string; }; export type WalkUsageOptions = { onNode: (refLink: ReferenceLinkage) => void; onLeaf: (path: import("@babel/traverse").NodePath) => void; onLink: (originPath: import("@babel/traverse").NodePath, refLink: ReferenceLinkage) => void; }; export type DetectableNode = import("@babel/types").CallExpression | import("@babel/types").Identifier | import("@babel/types").ReturnStatement | import("@babel/types").VariableDeclarator | import("@babel/types").MemberExpression; export type Detector = (targetPath: import("@babel/traverse").NodePath) => ReferenceLinkage[]; export type DetectableNodePath = import("@babel/traverse").NodePath; /** * @param {import('@babel/traverse').NodePath} targetPath * @returns */ export function expandUsage(targetPath: import("@babel/traverse").NodePath): { nodes: ReferenceLinkage[]; leaves: import("@babel/traverse").NodePath[]; }; export const pathLookup: WeakMap; /** * @typedef Link * @property {import('@babel/types').Node} from * @property {import('@babel/types').Node} to * @property {string} label */ /** * @param {import('@babel/traverse').NodePath} targetPath * @returns */ export function getGraph(targetPath: import("@babel/traverse").NodePath): { links: Link[]; nodes: any[]; }; declare class ReferenceLinkage { /** * @param {{ path: import('@babel/traverse').NodePath; label: string }} param0 */ constructor({ path, label }: { path: import("@babel/traverse").NodePath; label: string; }); path: import("@babel/traverse").NodePath; label: string; } export {}; //# sourceMappingURL=referenceTracker.d.ts.map