import type { SeedContextAttachment } from "../context-ledger/index.js";
export type SeedAgentMessageStatus = "created" | "queued" | "delivering" | "delivered" | "mailbox_only" | "acknowledged" | "acted_on" | "failed" | "expired";
export type SeedAgentMessageKind = "message" | "announcement" | "prompt" | "reply" | "handoff" | "blocker" | "review" | "meeting" | "result" | "broadcast";
export type SeedAgentMessagePriority = "low" | "normal" | "high" | "urgent";
export type SeedAgentMessageEnvelope = {
    version: 1;
    message_id: string;
    run_id: string;
    from: string;
    to: string;
    kind: SeedAgentMessageKind;
    priority: SeedAgentMessagePriority;
    summary: string;
    body_ref?: string;
    prompt_ref?: string;
    tool_manifest_ref?: string;
    context_refs: string[];
    context_attachments: SeedContextAttachment[];
    parent_message_id?: string;
    correlation_id: string;
    causation_id?: string;
    allowed_tools: string[];
    denied_tools: string[];
    allowed_skills: string[];
    denied_skills: string[];
    allowed_mcps: string[];
    denied_mcps: string[];
    target_session_id?: string;
    background_id?: string;
    status: SeedAgentMessageStatus;
    delivery_attempts: number;
    next_delivery_after?: string;
    created_at: string;
    updated_at: string;
    delivered_at?: string;
    acknowledged_at?: string;
    completed_at?: string;
    error?: string;
    metadata: Record<string, unknown>;
};
export type SeedAgentMessageDeliveryAttempt = {
    version: 1;
    run_id: string;
    message_id: string;
    attempt: number;
    status: SeedAgentMessageStatus;
    at: string;
    target_session_id?: string;
    error?: string;
    metadata: Record<string, unknown>;
};
export type SeedAgentMessageInput = {
    message_id?: string;
    from: string;
    to: string;
    kind?: SeedAgentMessageKind;
    priority?: SeedAgentMessagePriority;
    body: string;
    summary?: string;
    prompt_ref?: string;
    tool_manifest_ref?: string;
    context_refs?: string[];
    context_attachments?: SeedContextAttachment[];
    parent_message_id?: string;
    correlation_id?: string;
    causation_id?: string;
    allowed_tools?: string[];
    denied_tools?: string[];
    allowed_skills?: string[];
    denied_skills?: string[];
    allowed_mcps?: string[];
    denied_mcps?: string[];
    target_session_id?: string;
    background_id?: string;
    metadata?: Record<string, unknown>;
};
