import { Scope, ModuleScope } from "../scope";
import * as ESTree from "estree";
export interface RefsToModuleExtractor {
    refsToModule: string[];
}
export declare class PureDeclaratorTraverser implements RefsToModuleExtractor {
    readonly validatorDeclarator: ESTree.VariableDeclarator;
    readonly moduleScope: ModuleScope;
    readonly refsToModule: string[];
    readonly relevantScopes: Scope[];
    readonly ids: ESTree.Identifier[];
    constructor(validatorDeclarator: ESTree.VariableDeclarator, moduleScope: ModuleScope);
    private nodeContains;
}
export declare class ChildScopesTraverser implements RefsToModuleExtractor {
    readonly scope: Scope;
    readonly refsToModule: string[];
    constructor(scope: Scope);
    private traverse;
}