import type * as vscode from 'vscode';
import { Event } from '../../../util/vs/base/common/event';
import { ModelConfiguration } from './dataTypes/xtabPromptOptions';
export interface IInlineEditsModelService {
    readonly _serviceBrand: undefined;
    readonly modelInfo: vscode.InlineCompletionModelInfo | undefined;
    readonly onModelListUpdated: Event<void>;
    setCurrentModelId(modelId: string): Promise<void>;
    selectedModelConfiguration(): ModelConfiguration;
    defaultModelConfiguration(): ModelConfiguration;
}
export declare const IInlineEditsModelService: import("../../../util/common/services").ServiceIdentifier<IInlineEditsModelService>;
export interface IUndesiredModelsManager {
    readonly _serviceBrand: undefined;
    readonly onDidChange: Event<void>;
    isUndesiredModelId(modelId: string): boolean;
    addUndesiredModelId(modelId: string): Promise<void>;
    removeUndesiredModelId(modelId: string): Promise<void>;
}
export declare const IUndesiredModelsManager: import("../../../util/common/services").ServiceIdentifier<IUndesiredModelsManager>;
export declare class NullUndesiredModelsManager implements IUndesiredModelsManager {
    _serviceBrand: undefined;
    readonly onDidChange: Event<any>;
    isUndesiredModelId(_modelId: string): boolean;
    addUndesiredModelId(_modelId: string): Promise<void>;
    removeUndesiredModelId(_modelId: string): Promise<void>;
}
//# sourceMappingURL=inlineEditsModelService.d.ts.map