import type { CancellationToken, Disposable, TextDocument } from 'vscode';
import { Copilot } from '../../../platform/inlineCompletions/common/api';
import { ContextItem } from '../../languageServer/common/languageContextService';
export declare const ILanguageContextProviderService: import("../../../util/common/services").ServiceIdentifier<ILanguageContextProviderService>;
export interface ILanguageContextProviderService {
    readonly _serviceBrand: undefined;
    registerContextProvider<T extends Copilot.SupportedContextItem>(provider: Copilot.ContextProvider<T>): Disposable;
    getAllProviders(): readonly Copilot.ContextProvider<Copilot.SupportedContextItem>[];
    getContextProviders(doc: TextDocument): Copilot.ContextProvider<Copilot.SupportedContextItem>[];
    getContextItems(doc: TextDocument, request: Copilot.ResolveRequest, cancellationToken: CancellationToken): AsyncIterable<ContextItem>;
    getContextItemsOnTimeout(doc: TextDocument, request: Copilot.ResolveRequest): ContextItem[];
}
//# sourceMappingURL=languageContextProviderService.d.ts.map