import { type Api, type Model } from "../sdk/ai/index.js";
import type { ExtensionUIContext, ModelRegistry } from "../sdk/coding-agent/index.js";
import type { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { type CreateMessageRequest, type CreateMessageResult } from "@modelcontextprotocol/sdk/types.js";
export interface SamplingHandlerOptions {
    serverName: string;
    autoApprove: boolean;
    ui?: ExtensionUIContext;
    modelRegistry: ModelRegistry;
    getCurrentModel: () => Model<Api> | undefined;
    getSignal: () => AbortSignal | undefined;
}
export type ServerSamplingConfig = Omit<SamplingHandlerOptions, "serverName">;
export declare function registerSamplingHandler(client: Client, options: SamplingHandlerOptions): void;
export declare function handleSamplingRequest(options: SamplingHandlerOptions, request: CreateMessageRequest): Promise<CreateMessageResult>;
//# sourceMappingURL=sampling-handler.d.ts.map