/** Preserve the inferred tool signatures for a package-runtime MCP server. */ export declare function defineMcpServer(server: TServer): TServer; declare type JsonSchema = { readonly [key: string]: unknown; }; /** * Host-mediated elicitation available only while a package MCP tool executes. * Each tool invocation may request at most one elicitation. */ export declare type McpElicitationApi = { elicit(request: McpElicitationRequest): MiniAppMaybePromise; }; /** Closed flat-object schema supported by package MCP elicitation forms. */ export declare type McpElicitationFormSchema = { type: 'object'; title?: string; description?: string; properties: Record; required?: readonly string[]; }; /** Closed elicitation capabilities a package-runtime MCP server may request. */ export declare type McpElicitationMode = 'form' | 'url'; declare type McpElicitationPropertyBase = { type: TType; title?: string; description?: string; default?: TDefault; }; /** One primitive field the trusted host can render in an elicitation form. */ export declare type McpElicitationPropertySchema = (McpElicitationPropertyBase<'string', string> & { enum?: readonly string[]; minLength?: number; maxLength?: number; pattern?: string; format?: 'email'; }) | (McpElicitationPropertyBase<'number' | 'integer', number> & { minimum?: number; maximum?: number; }) | McpElicitationPropertyBase<'boolean', boolean>; /** One host-mediated elicitation initiated by a package-runtime MCP tool. */ export declare type McpElicitationRequest = { mode: 'form'; message: string; requestedSchema: McpElicitationFormSchema; } | { mode: 'url'; message: string; url: string; elicitationId: string; }; /** The user's decision for one package-runtime MCP elicitation. */ export declare type McpElicitationResult = { action: 'accept' | 'cancel' | 'decline'; content?: Record; }; /** The tools exposed by one package-runtime MCP server. */ export declare type McpServerDefinition = { tools: Record; }; /** One tool implemented by a package-runtime MCP server. */ export declare type McpServerToolDefinition = { description: string; inputSchema: JsonSchema; execute(arguments_: TArguments): MiniAppMaybePromise; }; /** JSON-compatible values accepted by public miniapp operations. */ declare type MiniAppJsonValue = null | boolean | number | string | MiniAppJsonValue[] | { [key: string]: MiniAppJsonValue; }; declare type MiniAppMaybePromise = T | Promise; export { }