import type { RuntimeBinding, SkillRiskClass } from './runtime-assets.js';
import type { ConnectorBinding } from './automation-runtime.js';
export type ShieldPolicyMode = 'balanced' | 'strict' | 'permissive';
export type ShieldSeverity = 'low' | 'medium' | 'high';
export type ShieldAction = 'allow' | 'warn' | 'quarantine' | 'block';
export type ShieldStage = 'apply' | 'promotion' | 'connector' | 'memory';
export interface ShieldFinding {
    id: string;
    severity: ShieldSeverity;
    message: string;
    evidence: string[];
}
export interface ShieldDecision {
    decisionId: string;
    policy: ShieldPolicyMode;
    stage: ShieldStage;
    target: string;
    action: ShieldAction;
    blocked: boolean;
    findings: ShieldFinding[];
    summary: string;
}
export interface ShieldInput {
    stage: ShieldStage;
    target: string;
    policy?: ShieldPolicyMode;
    text?: string | string[];
    domains?: string[];
    riskClass?: SkillRiskClass;
    verified?: boolean;
    bindings?: RuntimeBinding[];
    connectors?: ConnectorBinding[];
}
export declare const SECRET_PATTERNS: RegExp[];
export declare class SecurityShield {
    evaluate(input: ShieldInput): ShieldDecision;
}
export interface AuditSummary {
    totalDecisions: number;
    byAction: Record<ShieldAction, number>;
    bySeverity: Record<ShieldSeverity, number>;
    blocked: number;
    sealedMode: boolean;
    lastDecisionAt: number | null;
}
export declare class SecurityAuditLog {
    private readonly auditPath;
    private lastDecisionAt;
    private counts;
    constructor(stateDir?: string);
    private appendDecision;
    getSummary(): AuditSummary;
}
export declare function getSharedAuditLog(): SecurityAuditLog;
export declare const createSecurityShield: () => SecurityShield;
