import { BlockSize } from './enumerations/blockSize'; import { Checksum } from './types'; export interface BlockInfo { id: string; checksum: Checksum; size: number; index: number; } export interface FileReceipt { id: string; fileName: string; originalSize: number; blockCount: number; blocks: BlockInfo[]; cblData: number[]; magnetUrl: string; type?: 'file' | 'message'; messageMetadata?: { senderId: string; recipients: string[]; timestamp: Date; content?: string; }; } export declare class BrightChain { private blockStore; private _supportedBlockSizes; /** * @deprecated Use `supportedBlockSizes` instead. * Returns the first supported block size for backward compatibility. */ get blockSize(): BlockSize; /** * The block sizes supported by this BrightChain instance. */ get supportedBlockSizes(): readonly BlockSize[]; /** * Create a BrightChain instance. * @param blockSizes - A single BlockSize or array of BlockSize values to support. * Defaults to [BlockSize.Small] for backward compatibility. */ constructor(blockSizes?: BlockSize | readonly BlockSize[]); storeFile(fileData: Uint8Array, fileName?: string): Promise; retrieveFile(receipt: FileReceipt): Promise; private createCBL; private createMagnetUrl; } //# sourceMappingURL=brightChain.d.ts.map