import { AgentIdentityManager } from '../agent-identity'; import { DelegationChainValidator } from '../delegation-chain-validator'; import { CommunicationManager } from '../communication/communication-manager'; import { ActivityLogger } from '../activity/activity-logger'; export interface RevocationRequest { targetAgentDID: string; reason: string; revokedBy: string; timestamp: Date; cascading: boolean; serviceDID?: string; effectiveDate?: Date; } export interface RevocationResult { success: boolean; revokedAgents: string[]; failedRevocations: Array<{ agentDID: string; error: string; }>; notificationsSent: number; auditEntries: number; } export interface RevocationAuditEntry { id: string; targetAgentDID: string; revokedBy: string; reason: string; timestamp: Date; cascading: boolean; serviceDID?: string; effectiveDate: Date; childRevocations: string[]; notificationsSent: string[]; status: 'pending' | 'completed' | 'failed' | 'partial'; } export declare class CascadingRevocationManager { private agentManager; private chainValidator; private communicationManager; private activityLogger; private revocationAudit; private activeRevocations; constructor(agentManager: AgentIdentityManager, chainValidator: DelegationChainValidator, communicationManager: CommunicationManager, activityLogger: ActivityLogger); /** * Revokes an agent and optionally cascades to all sub-agents */ revokeAgent(request: RevocationRequest): Promise; /** * Performs revocation of a single agent */ private performSingleRevocation; /** * Finds all sub-agents of a given agent */ private findSubAgents; /** * Sends revocation notifications to relevant parties */ private sendRevocationNotifications; /** * Finds agents that should be notified about a revocation */ private findNotificationTargets; /** * Gets revocation audit trail for an agent */ getRevocationAudit(agentDID?: string): RevocationAuditEntry[]; /** * Checks if an agent has been revoked */ isAgentRevoked(agentDID: string, serviceDID?: string): boolean; /** * Gets revocation statistics */ getRevocationStats(): { totalRevocations: number; cascadingRevocations: number; serviceSpecificRevocations: number; averageChildRevocations: number; notificationsSent: number; }; /** * Purges old audit entries */ purgeOldAuditEntries(olderThan: Date): number; /** * Exports audit trail for compliance */ exportAuditTrail(format?: 'json' | 'csv'): string; private generateAuditId; } //# sourceMappingURL=cascading-revocation-manager.d.ts.map