export interface SentinelEvent {
    type: 'shield.decision' | 'judge.verdict' | 'audit.log' | 'policy.violation' | 'kill';
    runId: string;
    timestamp: number;
    data: Record<string, unknown>;
}
export interface PolicyViolationEventData {
    policy: string;
    reason: string;
    threshold: number;
    actual: number;
    action: 'deny';
}
export type SentinelKillTrigger = 'policy' | 'manual' | 'operator';
export declare function publishSentinelEvent(event: SentinelEvent): Promise<void>;
export declare function buildPolicyViolationEvent(runId: string, violation: PolicyViolationEventData, timestamp?: number): SentinelEvent;
export declare function buildKillEvent(runId: string, reason: string, trigger: SentinelKillTrigger, timestamp?: number): SentinelEvent;
export declare function buildAuditLogEvent(runId: string, action: 'kill' | 'policy_violation', payload: Record<string, unknown>, timestamp?: number): SentinelEvent;
export declare function publishSentinelRunKill(runId: string, reason: string): Promise<void>;
export declare function publishSentinelPolicyViolation(runId: string, violation: PolicyViolationEventData): Promise<void>;
export declare function publishSentinelRunKillFireAndForget(runId: string, reason: string): void;
export declare function publishSentinelPolicyViolationFireAndForget(runId: string, violation: PolicyViolationEventData): void;
//# sourceMappingURL=redis-sentinel-publisher.d.ts.map