/** * Threshold Session Model * * Tracks multi-party threshold reconstruction sessions */ /** * A collected share during threshold reconstruction * Different from ThresholdShare in VaultHeader which is the encrypted share data */ export interface CollectedShare { identifier: number; data: string; providedBy: string; providedAt: Date; } export interface ThresholdSession { id: string; vaultId: string; docId: string; threshold: number; shares: CollectedShare[]; status: 'pending' | 'complete' | 'expired' | 'failed'; reconstructedCek?: Uint8Array; initiatedBy: string; createdAt: Date; expiresAt?: Date; purpose?: string; } export type ThresholdSessionStatus = ThresholdSession['status']; /** * Check if session has met threshold */ export declare function hasMetThreshold(session: ThresholdSession): boolean; /** * Check if session is expired */ export declare function isSessionExpired(session: ThresholdSession): boolean;