export interface BitstringStatusListCredential { '@context': string[]; type: string[]; id: string; issuer: string; validFrom: string; credentialSubject: { id: string; type: 'BitstringStatusList'; statusPurpose: 'revocation' | 'suspension'; encodedList: string; }; } export interface BitstringStatusListEntry { id: string; type: 'BitstringStatusListEntry'; statusPurpose: 'revocation' | 'suspension'; statusListIndex: string; statusListCredential: string; } export declare class BitstringStatusList { private bitstring; private purpose; private issuer; private id; constructor(size: number, issuer: string, id: string, purpose?: 'revocation' | 'suspension'); /** * Set a bit in the status list (mark as revoked/suspended) */ setBit(index: number): void; /** * Clear a bit in the status list (mark as not revoked/suspended) */ clearBit(index: number): void; /** * Check if a bit is set */ getBit(index: number): boolean; /** * Encode the bitstring as base64-encoded gzipped data */ encode(): string; /** * Decode a base64-encoded gzipped bitstring */ static decode(encoded: string): Uint8Array; /** * Create a Bitstring Status List Verifiable Credential */ toCredential(): BitstringStatusListCredential; /** * Load from a Bitstring Status List credential */ static fromCredential(credential: BitstringStatusListCredential): BitstringStatusList; /** * Get the next available index */ getNextAvailableIndex(): number; /** * Get statistics about the status list */ getStats(): { total: number; set: number; available: number; utilization: number; }; } export declare class BitstringStatusListManager { private basePath; private defaultSize; constructor(basePath: string); private getStatusListPath; /** * Initialize status lists directory */ init(): Promise; /** * Create a new status list */ createStatusList(issuer: string, purpose?: 'revocation' | 'suspension', size?: number): Promise; /** * Load a status list */ loadStatusList(issuer: string, purpose?: 'revocation' | 'suspension'): Promise; /** * Save a status list */ saveStatusList(issuer: string, statusList: BitstringStatusList): Promise; /** * Allocate a new status list entry */ allocateEntry(issuer: string, purpose?: 'revocation' | 'suspension'): Promise; /** * Set status (revoke/suspend) */ setStatus(issuer: string, index: number, purpose?: 'revocation' | 'suspension'): Promise; /** * Clear status (un-revoke/un-suspend) */ clearStatus(issuer: string, index: number, purpose?: 'revocation' | 'suspension'): Promise; /** * Check status */ checkStatus(issuer: string, index: number, purpose?: 'revocation' | 'suspension'): Promise; /** * Get status list statistics */ getStats(issuer: string, purpose?: 'revocation' | 'suspension'): Promise<{ total: number; set: number; available: number; utilization: number; }>; } //# sourceMappingURL=status-list.d.ts.map