import { Emitter } from '@difizen/mana-app'; interface DocStatus { source: string[]; cursor: number; changes?: string; } interface CompletionChange { start?: DocStatus; accept?: DocStatus; close?: DocStatus; selectIndex?: number; } export declare class CompletionMonitor { protected static instance: CompletionMonitor; static getInstance(): CompletionMonitor; protected completionChangeEmitter: Emitter; get compeltionChange(): import("@difizen/mana-app").Event; protected tooltipChangeEmitter: Emitter; get onTooltipChange(): import("@difizen/mana-app").Event; protected currentChange: CompletionChange | undefined; start(doc: DocStatus): void; accept(doc: DocStatus): void; close(doc: DocStatus): void; updateIndex(index: number): void; emitChange(change: CompletionChange): void; } export interface MonitorPluginOptions { onTooltipChange?: (visible: boolean) => void; } export declare const monitorPlugin: (options: MonitorPluginOptions) => import("@codemirror/state").Extension; export {}; //# sourceMappingURL=monitor.d.ts.map