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