import { CancellationToken, DocumentSymbol, SymbolInformation } from 'vscode-languageserver'; import { ProgramView } from '../common/extensibility'; import { Uri } from '../common/uri/uri'; import { IndexOptions, IndexSymbolData } from './symbolIndexer'; export declare function convertToFlatSymbols(program: ProgramView, uri: Uri, symbolList: DocumentSymbol[]): SymbolInformation[]; export declare class DocumentSymbolProvider { protected readonly program: ProgramView; protected readonly uri: Uri; private readonly _supportHierarchicalDocumentSymbol; private readonly _indexOptions; private readonly _token; private _parseResults; constructor(program: ProgramView, uri: Uri, _supportHierarchicalDocumentSymbol: boolean, _indexOptions: IndexOptions, _token: CancellationToken); getSymbols(): DocumentSymbol[] | SymbolInformation[]; protected getHierarchicalSymbols(): DocumentSymbol[]; protected appendDocumentSymbolsRecursive(indexSymbolData: IndexSymbolData[] | undefined, symbolList: DocumentSymbol[]): void; }