import type { ActionPlan, AuthorityLevel } from "../../../domain/sentinel/action/action-plan.js"; import type { ApprovalEntry } from "../../../domain/sentinel/policy/approval.js"; import type { Profile } from "../../../domain/sentinel/policy/profile.js"; export interface PolicyDecision { readonly decision: "allow" | "block"; readonly reasons: readonly string[]; readonly grantedAuthority: AuthorityLevel | null; readonly approvalUsed: ApprovalEntry | null; } export interface PolicyGateInputs { readonly action: ActionPlan; readonly profile: Profile; readonly approvals: readonly ApprovalEntry[]; readonly deniedPaths: readonly string[]; readonly deniedCommands: readonly string[]; readonly panicStop: boolean; readonly executionEnabled: boolean; readonly now?: number; } export declare function decideAction(inputs: PolicyGateInputs): PolicyDecision; //# sourceMappingURL=gate.d.ts.map