UNPKG

@ydb-platform/monaco-ghost

Version:

Inline completion adapter for Monaco Editor

28 lines 1.19 kB
import * as monaco from 'monaco-editor/esm/vs/editor/editor.api.js'; import { CodeCompletionConfig, EnrichedCompletion, ICodeCompletionAPI, ICodeCompletionService } from '../types'; export interface CompletionGroup { items: EnrichedCompletion[]; shownCount: number; requestId: string; wasAccepted?: boolean; } export interface CacheManager { getCachedCompletion(model: monaco.editor.ITextModel, position: monaco.Position): EnrichedCompletion[]; setCompletionGroup(group: CompletionGroup): void; emptyCache(): void; getCompletionGroup(): CompletionGroup | null; incrementShownCount(pristineText: string): void; markAsAccepted(pristineText: string): void; getActiveCompletion(): string | null; } export interface SuggestionProvider { getSuggestions(model: monaco.editor.ITextModel, position: monaco.Position): Promise<{ suggestions: EnrichedCompletion[]; requestId: string; }>; } export interface ServiceConfig extends Required<CodeCompletionConfig> { api: ICodeCompletionAPI; } export type { ICodeCompletionService, CodeCompletionConfig, EnrichedCompletion, ICodeCompletionAPI, }; //# sourceMappingURL=types.d.ts.map