import { RevocationService } from '../revocation/revocation-service'; import { KeyPair } from '../types/index'; import { IStorageProvider } from '../storage'; import { DelegationCredential } from './types'; export interface AgentRevocationRecord { agentDID: string; parentDID: string; serviceDID?: string; revokedAt: Date; reason?: string; } export declare class AgentRevocationService extends RevocationService { private delegationManager; private agentRevocations; constructor(keyPair: KeyPair, issuerDID: string, storageProvider?: IStorageProvider); /** * Revoke an agent's access entirely */ revokeAgent(agentDID: string, parentDID: string, reason?: string): Promise; /** * Revoke an agent's access to a specific service */ revokeAgentServiceAccess(agentDID: string, parentDID: string, serviceDID: string, reason?: string): Promise; /** * Check if an agent is revoked */ isAgentRevoked(agentDID: string, parentDID: string): Promise; /** * Check if an agent's service access is revoked */ isAgentServiceRevoked(agentDID: string, parentDID: string, serviceDID: string): Promise; /** * Get all revocation records for a parent */ getRevocationRecords(parentDID: string): AgentRevocationRecord[]; /** * Validate a delegation credential including revocation check */ validateDelegationCredential(credential: DelegationCredential): Promise<{ valid: boolean; reason?: string; }>; /** * Revoke all delegation credentials for an agent */ private revokeDelegationCredentialsForAgent; /** * Revoke delegation credentials for a specific service */ private revokeDelegationCredentialsForService; /** * Restore an agent's access */ restoreAgent(agentDID: string, parentDID: string): Promise; /** * Restore an agent's service access */ restoreAgentServiceAccess(agentDID: string, parentDID: string, serviceDID: string): Promise; /** * Get revocation statistics */ getRevocationStats(): { totalAgentsRevoked: number; totalServiceRevocations: number; revocationsByParent: Record; }; /** * Export revocation data for backup/migration */ exportRevocationData(): { agentRevocations: Array<{ parentDID: string; records: AgentRevocationRecord[]; }>; }; /** * Import revocation data from backup/migration */ importRevocationData(data: { agentRevocations: Array<{ parentDID: string; records: AgentRevocationRecord[]; }>; }): void; } //# sourceMappingURL=agent-revocation-service.d.ts.map