/**
 * Delivery emitters — typed wrappers for DeliveryEvent domain.
 */
import type { RuntimeEventBus } from '../events/index.js';
import type { DeliveryKind } from '@pellux/goodvibes-sdk/platform/runtime/events/deliveries';
import type { RouteSurfaceKind } from '@pellux/goodvibes-sdk/platform/runtime/events/routes';
import type { EmitterContext } from './index.js';
export declare function emitDeliveryQueued(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    deliveryId: string;
    jobId: string;
    runId: string;
    surfaceKind: RouteSurfaceKind;
    targetId: string;
    deliveryKind: DeliveryKind;
}): void;
export declare function emitDeliveryStarted(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    deliveryId: string;
    jobId: string;
    runId: string;
    surfaceKind: RouteSurfaceKind;
    targetId: string;
    startedAt: number;
}): void;
export declare function emitDeliverySucceeded(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    deliveryId: string;
    jobId: string;
    runId: string;
    surfaceKind: RouteSurfaceKind;
    targetId: string;
    completedAt: number;
    durationMs: number;
    statusCode: number;
}): void;
export declare function emitDeliveryFailed(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    deliveryId: string;
    jobId: string;
    runId: string;
    surfaceKind: RouteSurfaceKind;
    targetId: string;
    failedAt: number;
    error: string;
    retryable: boolean;
}): void;
export declare function emitDeliveryDeadLettered(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    deliveryId: string;
    jobId: string;
    runId: string;
    surfaceKind: RouteSurfaceKind;
    targetId: string;
    reason: string;
    attempts: number;
}): void;
//# sourceMappingURL=deliveries.d.ts.map