export interface DeclaredSymbol {
    column: number;
    deprecated?: boolean;
    exportedAs: string | undefined;
    isExported: boolean;
    line: number;
    name: string;
}
export interface NamedImportFromRelative {
    alias: string;
    imported: string;
    specifier: string;
}
export interface ReExportFromRelative {
    exportedAs: string;
    imported: string;
    specifier: string;
}
export interface FileSymbolReport {
    declarations: DeclaredSymbol[];
    defaultExport: undefined | {
        column: number;
        line: number;
    };
    /** identifier names referenced inside the file (uses, not declarations) */
    identifierRefs: Set<string>;
    namedImportsFromRelative: NamedImportFromRelative[];
    /** absolute paths of relative imports/exports — for cross-file reachability */
    namespaceImportFromRelative: Set<string>;
    /** specifiers of `export * from './foo'` */
    reExportAllFromRelative: Set<string>;
    reExportsFromRelative: ReExportFromRelative[];
    /** specifiers of `import './foo'` (side-effect or full import without bindings) */
    sideEffectFromRelative: Set<string>;
}
export declare function collectSymbolsFromFile(filePath: string): FileSymbolReport;
//# sourceMappingURL=collectSymbols.d.ts.map