import type { PromptAnalysis } from "./types.js"; export interface GateResult { allow: boolean; score: number; grade: PromptAnalysis["grade"]; analysis: PromptAnalysis; /** Human-readable reason when allow=false */ reason?: string; } export interface PromptGate { /** Check a prompt against the threshold. Returns allow=false if below minimum score. */ check(prompt: string): GateResult; /** Convenience: throws if prompt is blocked (useful in middleware). */ assert(prompt: string): void; } /** * Create a prompt quality gate for use in proxy middleware. * * @param minScore Minimum acceptable score (0-100). Default: 40. * @param warnOnly If true, allow=true but result.reason is still set (warn-only mode). Default: false. * * Usage in Maiife proxy (7th policy type: prompt_quality): * const gate = createPromptGate({ minScore: policy.minScore, warnOnly: policy.action === "warn" }); * const result = gate.check(request.prompt); * if (!result.allow) return policyDenyResponse(result.reason); */ export declare function createPromptGate(options?: { minScore?: number; warnOnly?: boolean; }): PromptGate; //# sourceMappingURL=gate.d.ts.map