interface BLSNode { index?: number; nodeId: string; nodeName: string; apiEndpoint: string; status: "active" | "inactive"; publicKey?: string; lastSeen?: Date; } interface BLSSignatureData { nodeIds: string[]; signatures?: string[]; publicKeys?: string[]; signature: string; messagePoint: string; aaAddress: string; aaSignature: string; messagePointSignature: string; aggregatedSignature?: string; } interface BLSConfig { seedNodes: string[]; discoveryTimeout?: number; } /** * Data for cumulative Tier 2 signature (algId 0x04): P256 + BLS. */ interface CumulativeT2SignatureData { p256Signature: string; nodeIds: string[]; blsSignature: string; messagePoint: string; messagePointSignature: string; } /** * Data for cumulative Tier 3 signature (algId 0x05): P256 + BLS + Guardian. */ interface CumulativeT3SignatureData extends CumulativeT2SignatureData { guardianSignature: string; } export type { BLSConfig as B, CumulativeT2SignatureData as C, BLSNode as a, BLSSignatureData as b, CumulativeT3SignatureData as c };