/**
 * Delivery domain state — outbound delivery attempts and their outcomes.
 */
import type { AutomationDeliveryAttempt } from '../../../automation/delivery.js';
export type DeliveryLifecycleState = 'pending' | 'sending' | 'sent' | 'failed' | 'dead_lettered';
export interface DeliveryDomainState {
    readonly revision: number;
    readonly lastUpdatedAt: number;
    readonly source: string;
    readonly deliveryAttempts: Map<string, AutomationDeliveryAttempt>;
    readonly attemptIds: string[];
    readonly pendingAttemptIds: string[];
    readonly failedAttemptIds: string[];
    readonly deadLetterIds: string[];
    readonly totalQueued: number;
    readonly totalStarted: number;
    readonly totalSucceeded: number;
    readonly totalFailed: number;
    readonly totalDeadLettered: number;
}
export declare function createInitialDeliveryState(): DeliveryDomainState;
//# sourceMappingURL=deliveries.d.ts.map