import type { GovernanceArtifact, GovernanceApproval, GovernanceVerification, GovernanceEnvelope, GovernanceLoadPolicy, GovernanceChangeType, GovernanceDiff, CredentialLifecyclePolicy } from '../types/governance.js'; export { DEFAULT_LOAD_POLICY } from '../types/governance.js'; export declare function hashContent(content: string): string; export interface CreateArtifactOptions { artifactType: GovernanceArtifact['artifactType']; version: string; content: string; issuerPrivateKey: string; issuerPublicKey: string; effectiveFrom?: string; expiresAt?: string | null; breaking?: boolean; previousVersion?: string | null; previousArtifactId?: string | null; supersedes?: string | null; rollbackAllowed?: boolean; changeType?: GovernanceChangeType; additions?: string[]; modifications?: string[]; removals?: string[]; metadata?: Record; } export declare function createGovernanceArtifact(opts: CreateArtifactOptions): GovernanceArtifact; export declare function verifyGovernanceArtifact(artifact: GovernanceArtifact, previousArtifact?: GovernanceArtifact | null): GovernanceVerification; export declare function approveArtifact(artifact: GovernanceArtifact, approverPrivateKey: string, approverPublicKey: string): GovernanceApproval; export declare function verifyApproval(approval: GovernanceApproval, artifact: GovernanceArtifact): boolean; export declare function createGovernanceEnvelope(artifact: GovernanceArtifact, approvals?: GovernanceApproval[]): GovernanceEnvelope; export declare function loadGovernanceArtifact(envelope: GovernanceEnvelope, policy: GovernanceLoadPolicy, previousArtifact?: GovernanceArtifact | null): GovernanceVerification; /** * Compare two sets of items (e.g., principle IDs) and classify the change. * Items are compared by string identity. */ export declare function classifyGovernanceChange(previousItems: string[], currentItems: string[]): GovernanceDiff; export declare function upgradeGovernanceArtifact(previous: GovernanceArtifact, opts: Omit & { breaking?: boolean; changeType?: GovernanceChangeType; additions?: string[]; modifications?: string[]; removals?: string[]; }): GovernanceArtifact; export declare function validateCredentialLifecycle(policy: CredentialLifecyclePolicy, currentTime: { sessionStartedAt: string; credentialIssuedAt: string; now?: string; }): { valid: boolean; reason?: string; }; //# sourceMappingURL=governance.d.ts.map