import type { OutboxMessage } from './types.js'; import type { DurableStateAdapter } from '../durable/file-journal.js'; import type { DurableOutboxRecord } from '../durable/types.js'; export interface OutboxHandler { deliver(message: OutboxMessage): Promise; } export declare function deliverOutbox(messages: readonly OutboxMessage[], handler: OutboxHandler): Promise; export interface DurableOutboxHandler { /** Consumers must deduplicate by the stable messageId. */ deliver(message: DurableOutboxRecord): Promise; } export interface DurableOutboxDeliveryOptions { readonly ownerId: string; readonly occurredAt: string; readonly afterHandler?: (message: DurableOutboxRecord) => void; readonly leaseMs?: number; } export interface DurableOutboxDeliverySummary { readonly delivered: number; readonly failed: number; readonly skippedActive: number; readonly conflicts: number; } export declare function deliverDurableOutbox(adapter: DurableStateAdapter, handler: DurableOutboxHandler, options: DurableOutboxDeliveryOptions): Promise;