import Parser from 'web-tree-sitter';
export type TreeSitterLoaderOptions = {
    pathTemplate?: string;
    pathFactory?: (languageId: string) => string;
    readFile(path: string): Promise<Uint8Array>;
};
export declare class TreeSitterLoader {
    private options;
    private _initPromise?;
    private _parsersCache;
    constructor(options: TreeSitterLoaderOptions);
    ready(): Promise<void>;
    parse(languageId: string, input: string): Promise<Parser.Tree>;
    getLanguageParser(languageId: string): Promise<Parser>;
    getLanguage(languageId: string): Promise<Parser.Language>;
    protected createLanguageParser(languageId: string): Promise<Parser>;
    protected initLanguageParser(languageId: string): Promise<Parser>;
    protected loadLanguage(languageId: string): Promise<Parser.Language>;
    protected loadLanguageWasmFile(languageId: string): Promise<Uint8Array<ArrayBufferLike>>;
    dispose(): void;
}
