import type { Usage } from "@earendil-works/pi-ai/compat"; import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; import { type FabricJevConfig } from "../jev/config.js"; import type { ResolvedFabricAction } from "./action-registry.js"; /** Jev path only: the typed probabilities that produced the decision. */ export interface FabricAutoApprovalVerdicts { safeToAutoApprove: number; touchesSecrets: number; destructive: number; targetsAgentArtifacts: number; } export interface FabricAutoApprovalDecision { decision: "allow" | "escalate"; reason: string; model: string; usage: Usage; /** Jev path only: per-question probabilities behind the decision. */ verdicts?: FabricAutoApprovalVerdicts; /** Jev path only: effective auto-approval threshold. */ threshold?: number; } export declare class FabricAutoApprovalClassifier { #private; readonly getJevConfig: () => FabricJevConfig; constructor(getJevConfig?: () => FabricJevConfig); classify(action: ResolvedFabricAction, args: Record, context: ExtensionContext, modelKey?: string): Promise; } //# sourceMappingURL=auto-approval-classifier.d.ts.map