import { z } from 'zod/v4';
export declare const FileChangeSchema: z.ZodObject<{
    type: z.ZodEnum<{
        file: "file";
        patch: "patch";
    }>;
    path: z.ZodString;
    content: z.ZodString;
}, z.core.$strip>;
export type FileChange = z.infer<typeof FileChangeSchema>;
export declare const CHANGES: z.ZodArray<z.ZodObject<{
    type: z.ZodEnum<{
        file: "file";
        patch: "patch";
    }>;
    path: z.ZodString;
    content: z.ZodString;
}, z.core.$strip>>;
export type FileChanges = z.infer<typeof CHANGES>;
export declare const CLIENT_ACTION_SCHEMA: z.ZodDiscriminatedUnion<[z.ZodObject<{
    type: z.ZodLiteral<"prompt">;
    promptId: z.ZodString;
    prompt: z.ZodUnion<[z.ZodString, z.ZodUndefined]>;
    promptParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    fingerprintId: z.ZodString;
    authToken: z.ZodOptional<z.ZodString>;
    costMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
        ask: "ask";
        lite: "lite";
        max: "max";
        experimental: "experimental";
        normal: "normal";
    }>>>;
    sessionState: z.ZodObject<{
        fileContext: z.ZodObject<{
            projectRoot: z.ZodString;
            cwd: z.ZodString;
            fileTree: z.ZodArray<z.ZodCustom<import("./util/file").FileTreeNode, import("./util/file").FileTreeNode>>;
            fileTokenScores: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodNumber>>;
            tokenCallers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
            knowledgeFiles: z.ZodRecord<z.ZodString, z.ZodString>;
            userKnowledgeFiles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
            agentTemplates: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
            customToolDefinitions: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
                inputJsonSchema: z.ZodAny;
                endsAgentStep: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                description: z.ZodOptional<z.ZodString>;
                exampleInputs: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>>>;
            }, z.core.$strip>>>;
            codebuffConfig: z.ZodOptional<z.ZodObject<{
                description: z.ZodOptional<z.ZodAny>;
                startupProcesses: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    command: z.ZodString;
                    cwd: z.ZodOptional<z.ZodString>;
                    enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                    stdoutFile: z.ZodOptional<z.ZodString>;
                    stderrFile: z.ZodOptional<z.ZodString>;
                }, z.core.$strip>>>;
                fileChangeHooks: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    command: z.ZodString;
                    cwd: z.ZodOptional<z.ZodString>;
                    filePattern: z.ZodOptional<z.ZodString>;
                    enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                }, z.core.$strip>>>;
                maxAgentSteps: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
                baseAgent: z.ZodOptional<z.ZodString>;
                spawnableAgents: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>>;
            gitChanges: z.ZodObject<{
                status: z.ZodString;
                diff: z.ZodString;
                diffCached: z.ZodString;
                lastCommitMessages: z.ZodString;
            }, z.core.$strip>;
            changesSinceLastChat: z.ZodRecord<z.ZodString, z.ZodString>;
            shellConfigFiles: z.ZodRecord<z.ZodString, z.ZodString>;
            systemInfo: z.ZodObject<{
                platform: z.ZodString;
                shell: z.ZodString;
                nodeVersion: z.ZodString;
                arch: z.ZodString;
                homedir: z.ZodString;
                cpus: z.ZodNumber;
            }, z.core.$strip>;
        }, z.core.$strip>;
        mainAgentState: z.ZodType<{
            agentId: string;
            agentType: import("./types/session-state").AgentTemplateType | null;
            agentContext: Record<string, import("./types/session-state").Subgoal>;
            subagents: import("./types/session-state").AgentState[];
            messageHistory: import("./types/messages/codebuff-message").Message[];
            stepsRemaining: number;
            creditsUsed: number;
            output?: Record<string, any>;
            parentId?: string;
        }, unknown, z.core.$ZodTypeInternals<{
            agentId: string;
            agentType: import("./types/session-state").AgentTemplateType | null;
            agentContext: Record<string, import("./types/session-state").Subgoal>;
            subagents: import("./types/session-state").AgentState[];
            messageHistory: import("./types/messages/codebuff-message").Message[];
            stepsRemaining: number;
            creditsUsed: number;
            output?: Record<string, any>;
            parentId?: string;
        }, unknown>>;
    }, z.core.$strip>;
    toolResults: z.ZodArray<z.ZodObject<{
        type: z.ZodLiteral<"tool-result">;
        toolCallId: z.ZodString;
        toolName: z.ZodString;
        output: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
            type: z.ZodLiteral<"json">;
            value: z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>;
        }, z.core.$strip>, z.ZodObject<{
            type: z.ZodLiteral<"media">;
            data: z.ZodString;
            mediaType: z.ZodString;
        }, z.core.$strip>]>>;
        providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>>>>;
    }, z.core.$strip>>;
    model: z.ZodOptional<z.ZodString>;
    repoUrl: z.ZodOptional<z.ZodString>;
    agentId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"read-files-response">;
    files: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
    requestId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"init">;
    fingerprintId: z.ZodString;
    authToken: z.ZodOptional<z.ZodString>;
    fileContext: z.ZodObject<{
        projectRoot: z.ZodString;
        cwd: z.ZodString;
        fileTree: z.ZodArray<z.ZodCustom<import("./util/file").FileTreeNode, import("./util/file").FileTreeNode>>;
        fileTokenScores: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodNumber>>;
        tokenCallers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
        knowledgeFiles: z.ZodRecord<z.ZodString, z.ZodString>;
        userKnowledgeFiles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
        agentTemplates: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
        customToolDefinitions: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
            inputJsonSchema: z.ZodAny;
            endsAgentStep: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            description: z.ZodOptional<z.ZodString>;
            exampleInputs: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>>>;
        }, z.core.$strip>>>;
        codebuffConfig: z.ZodOptional<z.ZodObject<{
            description: z.ZodOptional<z.ZodAny>;
            startupProcesses: z.ZodOptional<z.ZodArray<z.ZodObject<{
                name: z.ZodString;
                command: z.ZodString;
                cwd: z.ZodOptional<z.ZodString>;
                enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                stdoutFile: z.ZodOptional<z.ZodString>;
                stderrFile: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            fileChangeHooks: z.ZodOptional<z.ZodArray<z.ZodObject<{
                name: z.ZodString;
                command: z.ZodString;
                cwd: z.ZodOptional<z.ZodString>;
                filePattern: z.ZodOptional<z.ZodString>;
                enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            }, z.core.$strip>>>;
            maxAgentSteps: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
            baseAgent: z.ZodOptional<z.ZodString>;
            spawnableAgents: z.ZodOptional<z.ZodArray<z.ZodString>>;
        }, z.core.$strip>>;
        gitChanges: z.ZodObject<{
            status: z.ZodString;
            diff: z.ZodString;
            diffCached: z.ZodString;
            lastCommitMessages: z.ZodString;
        }, z.core.$strip>;
        changesSinceLastChat: z.ZodRecord<z.ZodString, z.ZodString>;
        shellConfigFiles: z.ZodRecord<z.ZodString, z.ZodString>;
        systemInfo: z.ZodObject<{
            platform: z.ZodString;
            shell: z.ZodString;
            nodeVersion: z.ZodString;
            arch: z.ZodString;
            homedir: z.ZodString;
            cpus: z.ZodNumber;
        }, z.core.$strip>;
    }, z.core.$strip>;
    repoUrl: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"tool-call-response">;
    requestId: z.ZodString;
    output: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
        type: z.ZodLiteral<"json">;
        value: z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"media">;
        data: z.ZodString;
        mediaType: z.ZodString;
    }, z.core.$strip>]>>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"cancel-user-input">;
    authToken: z.ZodString;
    promptId: z.ZodString;
}, z.core.$strip>]>;
type ClientActionAny = z.infer<typeof CLIENT_ACTION_SCHEMA>;
export type ClientAction<T extends ClientActionAny['type'] = ClientActionAny['type']> = Extract<ClientActionAny, {
    type: T;
}>;
export declare const UsageReponseSchema: z.ZodObject<{
    type: z.ZodLiteral<"usage-response">;
    usage: z.ZodNumber;
    remainingBalance: z.ZodNumber;
    balanceBreakdown: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
        free: "free";
        referral: "referral";
        purchase: "purchase";
        admin: "admin";
        organization: "organization";
    }>, z.ZodNumber>>;
    next_quota_reset: z.ZodNullable<z.ZodCoercedDate<unknown>>;
    autoTopupAdded: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type UsageResponse = z.infer<typeof UsageReponseSchema>;
export declare const InitResponseSchema: z.ZodObject<{
    type: z.ZodLiteral<"init-response">;
    message: z.ZodOptional<z.ZodString>;
    agentNames: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    usage: z.ZodNumber;
    remainingBalance: z.ZodNumber;
    balanceBreakdown: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
        free: "free";
        referral: "referral";
        purchase: "purchase";
        admin: "admin";
        organization: "organization";
    }>, z.ZodNumber>>;
    next_quota_reset: z.ZodNullable<z.ZodCoercedDate<unknown>>;
    autoTopupAdded: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type InitResponse = z.infer<typeof InitResponseSchema>;
export declare const MessageCostResponseSchema: z.ZodObject<{
    type: z.ZodLiteral<"message-cost-response">;
    promptId: z.ZodString;
    credits: z.ZodNumber;
    agentId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type MessageCostResponse = z.infer<typeof MessageCostResponseSchema>;
export declare const PromptResponseSchema: z.ZodObject<{
    type: z.ZodLiteral<"prompt-response">;
    promptId: z.ZodString;
    sessionState: z.ZodObject<{
        fileContext: z.ZodObject<{
            projectRoot: z.ZodString;
            cwd: z.ZodString;
            fileTree: z.ZodArray<z.ZodCustom<import("./util/file").FileTreeNode, import("./util/file").FileTreeNode>>;
            fileTokenScores: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodNumber>>;
            tokenCallers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
            knowledgeFiles: z.ZodRecord<z.ZodString, z.ZodString>;
            userKnowledgeFiles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
            agentTemplates: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
            customToolDefinitions: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
                inputJsonSchema: z.ZodAny;
                endsAgentStep: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                description: z.ZodOptional<z.ZodString>;
                exampleInputs: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>>>;
            }, z.core.$strip>>>;
            codebuffConfig: z.ZodOptional<z.ZodObject<{
                description: z.ZodOptional<z.ZodAny>;
                startupProcesses: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    command: z.ZodString;
                    cwd: z.ZodOptional<z.ZodString>;
                    enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                    stdoutFile: z.ZodOptional<z.ZodString>;
                    stderrFile: z.ZodOptional<z.ZodString>;
                }, z.core.$strip>>>;
                fileChangeHooks: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    command: z.ZodString;
                    cwd: z.ZodOptional<z.ZodString>;
                    filePattern: z.ZodOptional<z.ZodString>;
                    enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                }, z.core.$strip>>>;
                maxAgentSteps: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
                baseAgent: z.ZodOptional<z.ZodString>;
                spawnableAgents: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>>;
            gitChanges: z.ZodObject<{
                status: z.ZodString;
                diff: z.ZodString;
                diffCached: z.ZodString;
                lastCommitMessages: z.ZodString;
            }, z.core.$strip>;
            changesSinceLastChat: z.ZodRecord<z.ZodString, z.ZodString>;
            shellConfigFiles: z.ZodRecord<z.ZodString, z.ZodString>;
            systemInfo: z.ZodObject<{
                platform: z.ZodString;
                shell: z.ZodString;
                nodeVersion: z.ZodString;
                arch: z.ZodString;
                homedir: z.ZodString;
                cpus: z.ZodNumber;
            }, z.core.$strip>;
        }, z.core.$strip>;
        mainAgentState: z.ZodType<{
            agentId: string;
            agentType: import("./types/session-state").AgentTemplateType | null;
            agentContext: Record<string, import("./types/session-state").Subgoal>;
            subagents: import("./types/session-state").AgentState[];
            messageHistory: import("./types/messages/codebuff-message").Message[];
            stepsRemaining: number;
            creditsUsed: number;
            output?: Record<string, any>;
            parentId?: string;
        }, unknown, z.core.$ZodTypeInternals<{
            agentId: string;
            agentType: import("./types/session-state").AgentTemplateType | null;
            agentContext: Record<string, import("./types/session-state").Subgoal>;
            subagents: import("./types/session-state").AgentState[];
            messageHistory: import("./types/messages/codebuff-message").Message[];
            stepsRemaining: number;
            creditsUsed: number;
            output?: Record<string, any>;
            parentId?: string;
        }, unknown>>;
    }, z.core.$strip>;
    toolCalls: z.ZodOptional<z.ZodArray<z.ZodObject<{
        toolName: z.ZodString;
        toolCallId: z.ZodString;
        input: z.ZodRecord<z.ZodString, z.ZodAny>;
    }, z.core.$strip>>>;
    toolResults: z.ZodOptional<z.ZodArray<z.ZodObject<{
        type: z.ZodLiteral<"tool-result">;
        toolCallId: z.ZodString;
        toolName: z.ZodString;
        output: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
            type: z.ZodLiteral<"json">;
            value: z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>;
        }, z.core.$strip>, z.ZodObject<{
            type: z.ZodLiteral<"media">;
            data: z.ZodString;
            mediaType: z.ZodString;
        }, z.core.$strip>]>>;
        providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>>>>;
    }, z.core.$strip>>>;
    output: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
        type: z.ZodLiteral<"structuredOutput">;
        value: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodNull]>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"lastMessage">;
        value: z.ZodAny;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"allMessages">;
        value: z.ZodArray<z.ZodAny>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"error">;
        message: z.ZodString;
    }, z.core.$strip>]>>;
}, z.core.$strip>;
export type PromptResponse = z.infer<typeof PromptResponseSchema>;
export declare const SERVER_ACTION_SCHEMA: z.ZodDiscriminatedUnion<[z.ZodObject<{
    type: z.ZodLiteral<"response-chunk">;
    userInputId: z.ZodString;
    chunk: z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
        type: z.ZodLiteral<"error">;
        message: z.ZodString;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"download">;
        version: z.ZodString;
        status: z.ZodEnum<{
            complete: "complete";
            failed: "failed";
        }>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"finish">;
        agentId: z.ZodOptional<z.ZodString>;
        totalCost: z.ZodNumber;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"text">;
        text: z.ZodString;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"tool_call">;
        toolCallId: z.ZodString;
        toolName: z.ZodString;
        input: z.ZodRecord<z.ZodString, z.ZodAny>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"tool_result">;
        toolCallId: z.ZodString;
        output: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
            type: z.ZodLiteral<"json">;
            value: z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>;
        }, z.core.$strip>, z.ZodObject<{
            type: z.ZodLiteral<"media">;
            data: z.ZodString;
            mediaType: z.ZodString;
        }, z.core.$strip>]>>;
    }, z.core.$strip>]>]>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"subagent-response-chunk">;
    userInputId: z.ZodString;
    agentId: z.ZodString;
    agentType: z.ZodString;
    chunk: z.ZodString;
    prompt: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"prompt-response">;
    promptId: z.ZodString;
    sessionState: z.ZodObject<{
        fileContext: z.ZodObject<{
            projectRoot: z.ZodString;
            cwd: z.ZodString;
            fileTree: z.ZodArray<z.ZodCustom<import("./util/file").FileTreeNode, import("./util/file").FileTreeNode>>;
            fileTokenScores: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodNumber>>;
            tokenCallers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
            knowledgeFiles: z.ZodRecord<z.ZodString, z.ZodString>;
            userKnowledgeFiles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
            agentTemplates: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
            customToolDefinitions: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
                inputJsonSchema: z.ZodAny;
                endsAgentStep: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                description: z.ZodOptional<z.ZodString>;
                exampleInputs: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>>>;
            }, z.core.$strip>>>;
            codebuffConfig: z.ZodOptional<z.ZodObject<{
                description: z.ZodOptional<z.ZodAny>;
                startupProcesses: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    command: z.ZodString;
                    cwd: z.ZodOptional<z.ZodString>;
                    enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                    stdoutFile: z.ZodOptional<z.ZodString>;
                    stderrFile: z.ZodOptional<z.ZodString>;
                }, z.core.$strip>>>;
                fileChangeHooks: z.ZodOptional<z.ZodArray<z.ZodObject<{
                    name: z.ZodString;
                    command: z.ZodString;
                    cwd: z.ZodOptional<z.ZodString>;
                    filePattern: z.ZodOptional<z.ZodString>;
                    enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
                }, z.core.$strip>>>;
                maxAgentSteps: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
                baseAgent: z.ZodOptional<z.ZodString>;
                spawnableAgents: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>>;
            gitChanges: z.ZodObject<{
                status: z.ZodString;
                diff: z.ZodString;
                diffCached: z.ZodString;
                lastCommitMessages: z.ZodString;
            }, z.core.$strip>;
            changesSinceLastChat: z.ZodRecord<z.ZodString, z.ZodString>;
            shellConfigFiles: z.ZodRecord<z.ZodString, z.ZodString>;
            systemInfo: z.ZodObject<{
                platform: z.ZodString;
                shell: z.ZodString;
                nodeVersion: z.ZodString;
                arch: z.ZodString;
                homedir: z.ZodString;
                cpus: z.ZodNumber;
            }, z.core.$strip>;
        }, z.core.$strip>;
        mainAgentState: z.ZodType<{
            agentId: string;
            agentType: import("./types/session-state").AgentTemplateType | null;
            agentContext: Record<string, import("./types/session-state").Subgoal>;
            subagents: import("./types/session-state").AgentState[];
            messageHistory: import("./types/messages/codebuff-message").Message[];
            stepsRemaining: number;
            creditsUsed: number;
            output?: Record<string, any>;
            parentId?: string;
        }, unknown, z.core.$ZodTypeInternals<{
            agentId: string;
            agentType: import("./types/session-state").AgentTemplateType | null;
            agentContext: Record<string, import("./types/session-state").Subgoal>;
            subagents: import("./types/session-state").AgentState[];
            messageHistory: import("./types/messages/codebuff-message").Message[];
            stepsRemaining: number;
            creditsUsed: number;
            output?: Record<string, any>;
            parentId?: string;
        }, unknown>>;
    }, z.core.$strip>;
    toolCalls: z.ZodOptional<z.ZodArray<z.ZodObject<{
        toolName: z.ZodString;
        toolCallId: z.ZodString;
        input: z.ZodRecord<z.ZodString, z.ZodAny>;
    }, z.core.$strip>>>;
    toolResults: z.ZodOptional<z.ZodArray<z.ZodObject<{
        type: z.ZodLiteral<"tool-result">;
        toolCallId: z.ZodString;
        toolName: z.ZodString;
        output: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
            type: z.ZodLiteral<"json">;
            value: z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>;
        }, z.core.$strip>, z.ZodObject<{
            type: z.ZodLiteral<"media">;
            data: z.ZodString;
            mediaType: z.ZodString;
        }, z.core.$strip>]>>;
        providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodType<import("./types/json").JSONValue, unknown, z.core.$ZodTypeInternals<import("./types/json").JSONValue, unknown>>>>>;
    }, z.core.$strip>>>;
    output: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
        type: z.ZodLiteral<"structuredOutput">;
        value: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodNull]>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"lastMessage">;
        value: z.ZodAny;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"allMessages">;
        value: z.ZodArray<z.ZodAny>;
    }, z.core.$strip>, z.ZodObject<{
        type: z.ZodLiteral<"error">;
        message: z.ZodString;
    }, z.core.$strip>]>>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"read-files">;
    filePaths: z.ZodArray<z.ZodString>;
    requestId: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"tool-call-request">;
    userInputId: z.ZodString;
    requestId: z.ZodString;
    toolName: z.ZodString;
    input: z.ZodRecord<z.ZodString, z.ZodAny>;
    timeout: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"init-response">;
    message: z.ZodOptional<z.ZodString>;
    agentNames: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    usage: z.ZodNumber;
    remainingBalance: z.ZodNumber;
    balanceBreakdown: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
        free: "free";
        referral: "referral";
        purchase: "purchase";
        admin: "admin";
        organization: "organization";
    }>, z.ZodNumber>>;
    next_quota_reset: z.ZodNullable<z.ZodCoercedDate<unknown>>;
    autoTopupAdded: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"usage-response">;
    usage: z.ZodNumber;
    remainingBalance: z.ZodNumber;
    balanceBreakdown: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
        free: "free";
        referral: "referral";
        purchase: "purchase";
        admin: "admin";
        organization: "organization";
    }>, z.ZodNumber>>;
    next_quota_reset: z.ZodNullable<z.ZodCoercedDate<unknown>>;
    autoTopupAdded: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"message-cost-response">;
    promptId: z.ZodString;
    credits: z.ZodNumber;
    agentId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"action-error">;
    message: z.ZodString;
    error: z.ZodOptional<z.ZodString>;
    remainingBalance: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"prompt-error">;
    userInputId: z.ZodString;
    message: z.ZodString;
    error: z.ZodOptional<z.ZodString>;
    remainingBalance: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>, z.ZodObject<{
    type: z.ZodLiteral<"request-reconnect">;
}, z.core.$strip>]>;
type ServerActionAny = z.infer<typeof SERVER_ACTION_SCHEMA>;
export type ServerAction<T extends ServerActionAny['type'] = ServerActionAny['type']> = Extract<ServerActionAny, {
    type: T;
}>;
export {};
//# sourceMappingURL=actions.d.ts.map