import type { InternalizationChannel } from '../internalization/peer-runner-contracts.js'; import type { ApprovalDecisionResult, ApprovalEditInput, ApprovalEnqueueInput, ApprovalFilter, ApprovalListFilter, ApprovalQueueStore, ApprovalRecord, ApprovalStats } from './activation-types.js'; /** * PRI-811 Phase B: no longer consulted by ActivationDispatcher — every * rollout recommendation now enqueues for Owner approval. Kept as a pure * policy helper (exported API; retirement is a separate follow-up decision). */ export declare function decideAutoPromotion(channel: InternalizationChannel, confidence: number | undefined): boolean; export declare class ApprovalQueue { private readonly store; constructor(store: ApprovalQueueStore); enqueue(input: ApprovalEnqueueInput, now: string): Promise; getById(approvalId: string): Promise; listPending(filter?: ApprovalFilter): Promise; approve(approvalId: string, decidedBy: string, note?: string): Promise; reject(approvalId: string, decidedBy: string, reason: string): Promise; listAll(filter?: ApprovalListFilter): Promise; countByStatus(): Promise; resetToPending(approvalId: string): Promise<{ ok: true; } | { ok: false; error: 'not_found' | 'not_approved'; }>; /** * Story A (PRI-408): Edit a pending approval's artifact to a new version. * The caller must create the new artifact and perform schema validation + * sandbox replay BEFORE calling this method. */ edit(input: ApprovalEditInput): Promise; } //# sourceMappingURL=approval-queue.d.ts.map