import type { FeedbackLabel, ProposedSideEffect } from './feedback-trajectory';
export interface ActionExecutionPolicy {
    allowedTypes?: string[];
    blockedTypes?: string[];
    alwaysRequireApprovalTypes?: string[];
    autoApproveTypes?: string[];
    requireApprovalForExternalSideEffects?: boolean;
    requireApprovalAboveCostUsd?: number;
    maxActionCostUsd?: number;
    remainingBudgetUsd?: number;
    expectedOutcomeRequired?: boolean;
    killCriteriaRequired?: boolean;
}
export interface ActionPolicyDecision {
    allowed: boolean;
    blocked: boolean;
    requiresApproval: boolean;
    reasons: string[];
    label?: FeedbackLabel;
}
export declare function evaluateActionPolicy(action: ProposedSideEffect, policy?: ActionExecutionPolicy, options?: {
    createdAt?: string;
}): ActionPolicyDecision;
//# sourceMappingURL=action-policy.d.ts.map