import type { ControlPlaneApprovalDecision, ControlPlanePendingApproval } from '../../../client-shared/api/types.js';
export type PendingApproval = NonNullable<ControlPlanePendingApproval>;
export type ApprovalChoice = 'approve' | 'trust_repo' | 'allow_project' | 'deny';
/**
 * Owns cli-v2 approval choices, labels, and terminal display formatting.
 */
export declare class PendingApprovalService {
    static resolveAvailableChoices(approval: PendingApproval): ApprovalChoice[];
    static resolveDecision(choice: ApprovalChoice, approval: PendingApproval): ControlPlaneApprovalDecision;
    static resolveInputDetail(input: unknown): {
        label: string;
        value: string;
    } | undefined;
    static formatPayload(input: unknown, maxChars?: number): string | undefined;
}
//# sourceMappingURL=pending-approval-service.d.ts.map