import { type H3Event } from "h3"; export declare const AGENT_ENGINE_DISCONNECT_ACTION_NAME = "agent-engine-disconnect"; export declare const AGENT_ENGINE_API_KEY_ACTION_NAME = "agent-engine-api-key"; /** * POST /_agent-native/agent-engine/disconnect — clear the default model for * the caller's organization (owners and admins), or for a signed-in user with * no organization. Env vars are left alone so the next chat turn falls back to * resolveEngine's credential detection. */ export declare function createAgentEngineDisconnectHandler(): import("h3").EventHandlerWithFetch>; export interface DefaultModelSelectionRequest { engine: string; model?: string; } /** * Parse the optional `defaultModel: { engine, model }` field of a provider-key * save. Present means "also make this the default model when I may". */ export declare function readDefaultModelSelectionRequest(body: unknown): { ok: true; request: DefaultModelSelectionRequest | null; } | { ok: false; error: string; }; /** * What a provider-key save did to the default model. `skipped` is not a * failure: members, and owners or admins saving a personal key, only save the * key because the default model uses organization providers. */ export type SavedKeyDefaultModelOutcome = { status: "selected"; engine: string; model: string; } | { status: "skipped"; reason: "not-allowed" | "personal-key"; } | { status: "failed"; error: string; }; /** * After a provider key is saved, make it the default model when the key and * the default share a scope and the caller may change the default. This is * what lets one Save replace the old Save-then-Apply. */ export declare function selectDefaultModelForSavedKey(event: H3Event, input: { keyScope: "user" | "org"; keyScopeId: string; request: DefaultModelSelectionRequest; }): Promise;