export type GovernanceChangeType = 'strengthening' | 'neutral' | 'weakening' | 'mixed' | 'initial'; export interface GovernanceDiff { changeType: GovernanceChangeType; additions: string[]; modifications: string[]; removals: string[]; isWeakening: boolean; isStrengthening: boolean; } export interface GovernanceArtifact { artifactId: string; artifactType: 'floor' | 'policy' | 'config' | 'delegation-template' | 'custom'; version: string; previousVersion: string | null; previousArtifactId: string | null; contentHash: string; content: string; issuer: string; effectiveFrom: string; expiresAt: string | null; breaking: boolean; supersedes: string | null; rollbackAllowed: boolean; changeType: GovernanceChangeType; additions: string[]; modifications: string[]; removals: string[]; credentialLifecycle?: CredentialLifecyclePolicy; metadata: Record; createdAt: string; signature: string; } export interface GovernanceEnvelope { artifact: GovernanceArtifact; approvals: GovernanceApproval[]; } export interface GovernanceApproval { approver: string; approvedAt: string; artifactId: string; contentHash: string; signature: string; } export interface GovernanceVerification { valid: boolean; errors: string[]; contentIntegrity: boolean; signatureValid: boolean; chainValid: boolean; notExpired: boolean; approvalsValid: boolean; weakeningApproved: boolean; } export interface GovernanceLoadPolicy { requireSignature: boolean; requireApprovals: number; allowedIssuers: string[]; allowExpired: boolean; allowBreakingWithoutApproval: boolean; requireApprovalsForWeakening: number; requireApprovalsForRemoval: number; blockWeakeningWithoutApproval: boolean; } export declare const DEFAULT_LOAD_POLICY: GovernanceLoadPolicy; export interface CredentialLifecyclePolicy { /** Maximum session duration in seconds before re-authentication required */ maxSessionDurationSeconds: number; /** Optional URL for real-time revocation checks */ revocationEndpoint?: string; /** Credential time-to-live in seconds from issuance */ credentialTTLSeconds: number; /** How often (seconds) to poll revocation endpoint */ revocationCheckFrequencySeconds: number; } //# sourceMappingURL=governance.d.ts.map