import type { HarneryInboxLimits, HarneryInboxRecordV1 } from "./contract.js"; export declare const HARNERY_INBOX_COMPACTION_PLAN_SCHEMA: "harnery.inbox-compaction-plan/v1"; export type HarneryRecipientLifecycle = "active" | "resumable" | "terminal"; export interface HarneryInboxCompactionPlan { schema: typeof HARNERY_INBOX_COMPACTION_PLAN_SCHEMA; recipient_instance_id: string; action: "none" | "compact-surfaced" | "prune-terminal"; reason_code: "pending_protected" | "active_recipient" | "surfaced_grace" | "terminal_grace" | "eligible"; remove_record_count: number; retained_record_count: number; protected_pending_count: number; dry_run: true; } export declare function planInboxCompaction(input: { recipient_instance_id: string; records: readonly HarneryInboxRecordV1[]; lifecycle: HarneryRecipientLifecycle; terminal_at?: string; now: Date; limits: HarneryInboxLimits; }): HarneryInboxCompactionPlan; //# sourceMappingURL=lifecycle.d.ts.map