export declare const HARNERY_INBOX_RECORD_SCHEMA: "harnery.inbox-record/v1"; export declare const HARNERY_INBOX_STATUS_SCHEMA: "harnery.inbox-status/v1"; export interface HarneryInboxLimits { max_message_body_bytes: number; max_pending_count: number; max_pending_bytes: number; max_history_bytes: number; max_history_records: number; warning_pressure_ratio: number; max_surface_count: number; max_surface_bytes: number; max_surface_tokens: number; surfaced_grace_ms: number; terminal_grace_ms: number; } export interface HarneryInboxMessageRecordV1 { schema: typeof HARNERY_INBOX_RECORD_SCHEMA; kind: "message"; message_id: string; sender_instance_id: string; sender_display_name: string; recipient_instance_id: string; recipient_display_name: string; created_at: string; body: string; body_bytes: number; } export interface HarneryInboxSurfacedRecordV1 { schema: typeof HARNERY_INBOX_RECORD_SCHEMA; kind: "surfaced"; message_id: string; surfaced_at: string; } export type HarneryInboxRecordV1 = HarneryInboxMessageRecordV1 | HarneryInboxSurfacedRecordV1; export interface HarneryInboxStatusV1 { schema: typeof HARNERY_INBOX_STATUS_SCHEMA; recipient_instance_id: string; pending_count: number; pending_bytes: number; total_history_bytes: number; oldest_pending_at?: string; pressure: "normal" | "warning" | "exhausted"; last_surface_at?: string; last_compaction_at?: string; } export type HarneryInboxCapacityReason = "message_body_limit" | "pending_count_limit" | "pending_bytes_limit" | "history_bytes_limit"; export declare class HarneryInboxCapacityError extends Error { readonly reason_code: HarneryInboxCapacityReason; readonly current: number; readonly limit: number; constructor(reason_code: HarneryInboxCapacityReason, current: number, limit: number); } export interface HarneryInboxSurfaceBudget { max_count: number; max_bytes: number; max_tokens: number; } export interface HarneryInboxSurfaceResult { emitted: readonly HarneryInboxMessageRecordV1[]; remaining_pending_count: number; remaining_pending_bytes: number; repeated_after_crash_possible: true; } //# sourceMappingURL=contract.d.ts.map