/**
 * Iron Dome — Configuration types and defaults
 *
 * Defines the IronDomeConfig interface and pre-built profiles
 * for different security postures.
 */
export interface IronDomePiiRules {
    neverOutput: string[];
    aggregatesOnly: string[];
}
export interface IronDomeSubAgentRestrictions {
    blockedOperations: string[];
    sanitiseContext: boolean;
}
export type IronDomeProfile = 'school' | 'enterprise' | 'personal' | 'paranoid';
export interface IronDomeConfirmationProtocol {
    red: string[];
    amber: string[];
    green: string[];
}
/**
 * User overrides for the confirmation protocol.
 * Each field is optional — only specified tiers are overridden.
 * Actions listed here take precedence over the profile defaults.
 */
export interface ConfirmationOverrides {
    red?: string[];
    amber?: string[];
    green?: string[];
}
export interface IronDomeConfig {
    enabled: boolean;
    trustedChannels: string[];
    killPhrase: string;
    requireApproval: string[];
    autoApprove: string[];
    piiRules: IronDomePiiRules;
    subAgentRestrictions: IronDomeSubAgentRestrictions;
    confirmationProtocol: IronDomeConfirmationProtocol;
    confirmationOverrides?: ConfirmationOverrides;
    profile?: IronDomeProfile;
}
export declare const DEFAULT_IRON_DOME_CONFIG: IronDomeConfig;
export declare const IRON_DOME_PROFILES: Record<IronDomeProfile, Omit<IronDomeConfig, 'enabled'>>;
