export declare const LogsTailParamsSchema: import("@sinclair/typebox").TObject<{
    cursor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
    limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
    maxBytes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
}>;
export declare const LogsTailResultSchema: import("@sinclair/typebox").TObject<{
    file: import("@sinclair/typebox").TString;
    cursor: import("@sinclair/typebox").TInteger;
    size: import("@sinclair/typebox").TInteger;
    lines: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
    truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
    reset: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
}>;
export declare const ChatHistoryParamsSchema: import("@sinclair/typebox").TObject<{
    sessionKey: import("@sinclair/typebox").TString;
    limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
    before: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
}>;
export declare const ChatCommandsListParamsSchema: import("@sinclair/typebox").TObject<{}>;
export declare const ChatToolsListParamsSchema: import("@sinclair/typebox").TObject<{}>;
export declare const ChatSkillsListParamsSchema: import("@sinclair/typebox").TObject<{}>;
/**
 * Push a card to the symframe (the right-column dynamic display panel
 * in Glass UI). Mirrors the registry methods on `window.symframe`:
 *   - action="add"    → `card` required (id auto-generated if missing)
 *   - action="update" → `id` required, `card` carries the patch
 *   - action="remove" → `id` required, no card
 *
 * The handler broadcasts a `symframe` event over the WebSocket; clients
 * route it to their local registry. The card schema is permissive
 * (additionalProperties on card) so new content types can ship without
 * a schema bump.
 */
export declare const ChatSymframePushParamsSchema: import("@sinclair/typebox").TObject<{
    action: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"add">, import("@sinclair/typebox").TLiteral<"update">, import("@sinclair/typebox").TLiteral<"remove">, import("@sinclair/typebox").TLiteral<"dwell">, import("@sinclair/typebox").TLiteral<"release">, import("@sinclair/typebox").TLiteral<"recall">, import("@sinclair/typebox").TLiteral<"pin">, import("@sinclair/typebox").TLiteral<"unpin">, import("@sinclair/typebox").TLiteral<"setMode">]>;
    id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    /** Stage D (setMode only): which panel posture to switch to. */
    mode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ambient">, import("@sinclair/typebox").TLiteral<"focus">, import("@sinclair/typebox").TLiteral<"awaiting">, import("@sinclair/typebox").TLiteral<"quiet">]>>;
    /** Stage D (setMode + focus only): which card to halo. */
    focusedId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    /**
     * Stage A: required to update or remove a sticky card. Sticky cards
     * are the registry-managed wrappers around native panels and any card
     * pushed with sticky:true; without force the registry refuses the
     * patch/dismiss. See glass-ui/js/symframe.js update()/remove().
     */
    force: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
    card: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
        id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        type: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        /**
         * Stage A: intent vocabulary — what this card represents in the
         * agent's mental state. Orthogonal to renderer type. Loose
         * string here (matching the rest of the card schema) so new
         * intent kinds can ship without an RPC bump; the strict enum
         * lives in the display_artifact agent-tool schema. Renderers
         * ignore it for now; the registry stores it as data-intent on
         * the card root for Stage B+ CSS hooks.
         */
        intent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        body: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        bodyHtml: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        actions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>>;
        sticky: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
        dismissable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
    }>>;
}>;
export declare const ChatSendParamsSchema: import("@sinclair/typebox").TObject<{
    sessionKey: import("@sinclair/typebox").TString;
    message: import("@sinclair/typebox").TString;
    thinking: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    deliver: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
    attachments: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>>;
    timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
    idempotencyKey: import("@sinclair/typebox").TString;
}>;
export declare const ChatAbortParamsSchema: import("@sinclair/typebox").TObject<{
    sessionKey: import("@sinclair/typebox").TString;
    runId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>;
export declare const ChatInjectParamsSchema: import("@sinclair/typebox").TObject<{
    sessionKey: import("@sinclair/typebox").TString;
    message: import("@sinclair/typebox").TString;
    label: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>;
export declare const ChatEventSchema: import("@sinclair/typebox").TObject<{
    runId: import("@sinclair/typebox").TString;
    sessionKey: import("@sinclair/typebox").TString;
    seq: import("@sinclair/typebox").TInteger;
    state: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"delta">, import("@sinclair/typebox").TLiteral<"final">, import("@sinclair/typebox").TLiteral<"aborted">, import("@sinclair/typebox").TLiteral<"error">]>;
    message: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
    errorMessage: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    usage: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
    stopReason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>;
