/**
 * Admin API routes for the event DLQ (dead-letter queue).
 *
 * Exposes the orchestrator-side DLQ — events that exhausted their dispatch
 * retry budget — over Bearer-auth HTTP so operators can list, manually retry,
 * or discard rows from the kici-admin CLI / dashboard.
 *
 *   GET    /api/v1/admin/event-dlq        — list DLQ events (limit + cursor)
 *   GET    /api/v1/admin/event-dlq/count  — number of DLQ events (for badge)
 *   POST   /api/v1/admin/event-dlq/:id/retry  — clear DLQ flag, schedule for retry
 *   DELETE /api/v1/admin/event-dlq/:id    — permanently discard a DLQ event
 *
 * The retry path also issues `pg_notify('kici_event_channel', id)` so a
 * healthy node picks the event up immediately rather than waiting for the
 * leader-only retry scanner's next tick.
 *
 * Mutations write an access_log row (event_dlq.retry / event_dlq.discard).
 */
import { Hono } from 'hono';
import type { EventStore } from '../events/event-store.js';
import type { TokenManager } from '../secrets/token-manager.js';
import type { RbacEnforcer, Role } from '../secrets/rbac.js';
import type { AccessLogWriter } from '../audit/access-log.js';
export interface AdminEventDlqRoutesDeps {
    eventStore: EventStore;
    tokenManager: TokenManager;
    rbac: RbacEnforcer;
    /** Required so retry/discard mutations land in the access log. */
    accessLog?: AccessLogWriter;
}
type AdminEnv = {
    Variables: {
        role: Role;
        userId: string;
        routingKey: string | null;
    };
};
export declare function createAdminEventDlqRoutes(deps: AdminEventDlqRoutesDeps): Hono<AdminEnv>;
export {};
//# sourceMappingURL=admin-event-dlq.d.ts.map