export type SeedAgentThreadStatus = "created" | "launching" | "active" | "idle" | "waiting_on_mailbox" | "blocked" | "completed" | "failed" | "cancelled";
export type SeedAgentThreadRole = "lead" | "member";
export type SeedAgentThreadHelperLimits = {
    max_depth: number;
    max_parallel_helpers: number;
};
export type SeedAgentThreadHelperCounts = {
    running: number;
    completed: number;
    failed: number;
};
export type SeedAgentThread = {
    version: 1;
    thread_id: string;
    run_id: string;
    agent_name: string;
    role: SeedAgentThreadRole;
    role_label?: string;
    capability_profile?: string;
    parent_thread_id?: string;
    opencode_session_id?: string;
    background_id?: string;
    agent_call_id?: string;
    prompt_ref?: string;
    tool_manifest_ref?: string;
    memory_ref?: string;
    status: SeedAgentThreadStatus;
    allowed_tools: string[];
    denied_tools: string[];
    allowed_skills: string[];
    denied_skills: string[];
    allowed_mcps: string[];
    denied_mcps: string[];
    helper_limits: SeedAgentThreadHelperLimits;
    helper_counts: SeedAgentThreadHelperCounts;
    read_paths: string[];
    write_paths: string[];
    created_at: string;
    updated_at: string;
    completed_at?: string;
};
export type SeedAgentThreadInput = Omit<SeedAgentThread, "version" | "run_id" | "created_at" | "updated_at"> & {
    version?: 1;
    run_id?: string;
    created_at?: string;
    updated_at?: string;
};
export type SeedAgentThreadPatch = Partial<Omit<SeedAgentThread, "version" | "run_id" | "thread_id" | "created_at">>;
export type SeedAgentToolManifest = {
    version: 1;
    run_id: string;
    thread_id: string;
    allowed_tools: string[];
    denied_tools: string[];
    native_tools?: string[];
    session_tools?: Record<string, boolean>;
    allowed_skills: string[];
    denied_skills: string[];
    allowed_mcps: string[];
    denied_mcps: string[];
    read_paths: string[];
    write_paths: string[];
    helper_limits: SeedAgentThreadHelperLimits;
    updated_at: string;
};
export type SeedHelperCallStatus = "queued" | "running" | "completed" | "failed" | "cancelled";
export type SeedHelperCall = {
    version: 1;
    helper_id: string;
    run_id: string;
    owner_thread_id: string;
    target_agent: string;
    prompt_ref: string;
    prompt_summary: string;
    child_session_id?: string;
    background_id?: string;
    agent_call_id?: string;
    status: SeedHelperCallStatus;
    allowed_tools: string[];
    denied_tools: string[];
    allowed_skills: string[];
    denied_skills: string[];
    created_at: string;
    updated_at: string;
    completed_at?: string;
    result_ref?: string;
    error?: string;
};
export type SeedHelperCallInput = Omit<SeedHelperCall, "version" | "run_id" | "helper_id" | "created_at" | "updated_at"> & {
    helper_id?: string;
    run_id?: string;
    created_at?: string;
    updated_at?: string;
};
export type SeedHelperCallPatch = Partial<Omit<SeedHelperCall, "version" | "run_id" | "helper_id" | "owner_thread_id" | "created_at">>;
