UNPKG

@opentui/core

Version:

OpenTUI is a TypeScript library for building terminal user interfaces (TUIs)

48 lines (47 loc) 1.95 kB
import { EventEmitter } from "events"; import type { TreeSitterClientOptions, TreeSitterClientEvents, BufferState, FiletypeParserOptions, Edit, PerformanceStats, SimpleHighlight } from "./types"; declare global { const OTUI_TREE_SITTER_WORKER_PATH: string; } export declare function addDefaultParsers(parsers: FiletypeParserOptions[]): void; export declare class TreeSitterClient extends EventEmitter<TreeSitterClientEvents> { private initialized; private worker; private buffers; private initializePromise; private initializeResolvers; private messageCallbacks; private messageIdCounter; private editQueues; private debouncer; private options; constructor(options: TreeSitterClientOptions); private emitError; private emitWarning; private startWorker; private stopWorker; private handleReset; initialize(): Promise<void>; private registerDefaultParsers; private resolvePath; addFiletypeParser(filetypeParser: FiletypeParserOptions): void; getPerformance(): Promise<PerformanceStats>; highlightOnce(content: string, filetype: string): Promise<{ highlights?: SimpleHighlight[]; warning?: string; error?: string; }>; private handleWorkerMessage; preloadParser(filetype: string): Promise<boolean>; createBuffer(id: number, content: string, filetype: string, version?: number, autoInitialize?: boolean): Promise<boolean>; updateBuffer(id: number, edits: Edit[], newContent: string, version: number): Promise<void>; private processEdit; removeBuffer(bufferId: number): Promise<void>; destroy(): Promise<void>; resetBuffer(bufferId: number, version: number, content: string): Promise<void>; getBuffer(bufferId: number): BufferState | undefined; getAllBuffers(): BufferState[]; isInitialized(): boolean; setDataPath(dataPath: string): Promise<void>; clearCache(): Promise<void>; }