import { Thenable, MarkedString, CompletionItem } from './jsonLanguageService'; export interface JSONWorkerContribution { getInfoContribution(uri: string, location: JSONPath): Thenable; collectPropertyCompletions(uri: string, location: JSONPath, currentWord: string, addValue: boolean, isLast: boolean, result: CompletionsCollector): Thenable; collectValueCompletions(uri: string, location: JSONPath, propertyKey: string, result: CompletionsCollector): Thenable; collectDefaultCompletions(uri: string, result: CompletionsCollector): Thenable; resolveCompletion?(item: CompletionItem): Thenable; } export declare type Segment = string | number; export declare type JSONPath = Segment[]; export interface CompletionsCollector { add(suggestion: CompletionItem): void; error(message: string): void; log(message: string): void; setAsIncomplete(): void; getNumberOfProposals(): number; }