/** Proposal — a proposed system change */ export type Proposal = { id: string; type: "capability_add" | "capability_remove" | "policy_change" | "schema_change"; description: string; payload: Record; status: "pending" | "approved" | "rejected" | "applied"; proposedBy: string; proposedAt: number; approvedBy?: string; approvedAt?: number; appliedAt?: number; }; /** Governance engine — manages proposals and change control */ export declare class GovernanceEngine { private proposals; private approvedActors; private applied; /** Submit a proposal */ submit(proposal: Omit): Proposal; /** Approve a proposal */ approve(proposalId: string, approver: string): Proposal; /** Reject a proposal */ reject(proposalId: string): Proposal; /** Mark a proposal as applied */ markApplied(proposalId: string): Proposal; /** Get a proposal */ get(proposalId: string): Proposal | undefined; /** List all proposals */ list(): Proposal[]; /** List pending proposals */ listPending(): Proposal[]; /** Add an approved actor */ addApprover(actor: string): void; /** Remove an approved actor */ removeApprover(actor: string): void; /** Check if any changes have been applied */ hasChanges(): boolean; /** Get governance statistics */ getStats(): { total: number; pending: number; approved: number; rejected: number; applied: number; }; }