export interface SamplingMessage {
    role: 'user' | 'assistant';
    content: {
        type: 'text';
        text: string;
    };
}
export interface SamplingResponse {
    model: string;
    content: {
        type: string;
        text: string;
    };
}
export interface SamplingCapableServer {
    getClientCapabilities: () => Record<string, unknown> | null | undefined;
    createMessage: (params: {
        messages: SamplingMessage[];
        maxTokens: number;
    }) => Promise<SamplingResponse>;
}
export declare function checkSamplingSupport(server: SamplingCapableServer): boolean;
export declare function requestSampling(server: SamplingCapableServer, messages: SamplingMessage[], maxTokens: number): Promise<SamplingResponse>;
export declare function extractTextFromSamplingResponse(response: unknown): string;
//# sourceMappingURL=sampling.d.ts.map