import type { ExtensionUIContext } from "@earendil-works/pi-coding-agent"; import type { Client } from "@modelcontextprotocol/client"; import { type ElicitRequest, type ElicitRequestFormParams, type ElicitRequestURLParams, type ElicitResult } from "@modelcontextprotocol/client"; export type ElicitationValue = string | number | boolean | string[] | undefined; export type ElicitationUIContext = ExtensionUIContext; export interface ElicitationHandlerOptions { serverName: string; ui: ElicitationUIContext; allowUrl: boolean; onUrlAccepted?: (elicitationId: string) => void; } export type ServerElicitationConfig = Omit; export declare function registerElicitationHandler(client: Client, options: ElicitationHandlerOptions): void; export declare function handleElicitationRequest(options: ElicitationHandlerOptions, request: ElicitRequest): Promise; export declare function handleFormElicitation(options: ElicitationHandlerOptions, params: ElicitRequestFormParams): Promise; export declare function coerceAndValidateFormValues(params: ElicitRequestFormParams, values: Record): Record; export declare function handleUrlElicitation(options: ElicitationHandlerOptions, params: ElicitRequestURLParams): Promise;