import type { OrgBus } from './bus.js'; import type { Decision } from './policy.js'; import { type FenceConfig } from './types.js'; export interface FenceInstance { detect(input: string): Promise<{ safe: boolean; threats: { type: string; confidence: number; }[]; overallRisk: number; }>; scanOutput(output: string, originalPrompt?: string): Promise<{ safe: boolean; leakageFound: boolean; }>; getContextState(): { escalationState: string; }; addAllowlistRule(rule: { id: string; pattern: RegExp | string; types: string[]; context?: string; reason?: string; source?: string; }): void; } export interface RoleFence { instance: FenceInstance; abortThreshold: number; scanMessages: boolean; } export declare function loadGlobalFenceConfig(root: string): FenceConfig | null; export declare function mergeFenceConfigs(...configs: (FenceConfig | undefined | null)[]): FenceConfig; export declare function createFenceForRole(config: FenceConfig): Promise; export declare function scanInput(fence: FenceInstance, input: string, abortThreshold: number): Promise; export declare function scanMessage(fence: FenceInstance, body: string, abortThreshold: number, bus: OrgBus, from: string): Promise; //# sourceMappingURL=fence.d.ts.map