import { type Contract, type RuntimePricingClient } from "@runapi.ai/mcp-core/web"; import type { BusinessToolClient } from "../business-tools.js"; import type { SearchPromptsParams } from "../types.js"; export type ListModelsInput = { modality?: "image" | "video" | "audio" | "utility"; service?: string; action?: string; }; export type GetModelInfoInput = { model: string; service?: string; action?: string; }; export declare function listModelsHandler(input: ListModelsInput, contract: Contract): { count: number; source: string; models: { model: string | undefined; service: string; action: string; modality: "image" | "audio" | "video" | "utility"; model_line: string; required_fields: string[]; }[]; }; export declare function getModelInfoHandler(input: string | GetModelInfoInput, contract: Contract, client: Pick): Promise<{ error: string; hint: string; } | { ambiguous?: boolean | undefined; hint?: string | undefined; matches?: { service: string; action: string; modality: "image" | "audio" | "video" | "utility"; }[] | undefined; price: unknown; input_rules?: import("@runapi.ai/mcp-core/web").InputRule[] | undefined; model: string | undefined; service: string; action: string; modality: "image" | "audio" | "video" | "utility"; model_line: string; fields: { name: string; required: boolean; enum: unknown[] | undefined; default: unknown; min: number | undefined; max: number | undefined; min_items: number | undefined; max_items: number | undefined; type: string | undefined; }[]; error?: undefined; }>; export declare function listActionsHandler(contract: Contract): { groups: { modality: string; actions: string[]; }[]; }; export declare function checkPricingHandler(input: { service: string; action: string; model?: string; }, contract: Contract, client: Pick): Promise<{ supported: boolean; message: string; hint: string; model?: undefined; service?: undefined; action?: undefined; price?: undefined; } | { supported: boolean; model: string | undefined; service: string; action: string; price: { as_of: string; price_schedule: Record; } | { error: string; pricing_url: string; }; message?: undefined; hint?: undefined; }>; export declare function searchPromptsHandler(input: SearchPromptsParams, client: Pick): Promise<{ source: string; count: number; pagination: { page: number; per_page: number; total: number; pages: number; }; prompts: { id: number; title: string | null | undefined; prompt: string; model: string | null | undefined; service: string | null | undefined; action: string | null | undefined; modality: string; category: string | null | undefined; tags: string[]; featured: boolean | undefined; }[]; error?: undefined; hint?: undefined; } | { error: string; hint: string; source?: undefined; count?: undefined; pagination?: undefined; prompts?: undefined; }>;