import { ECIESService, PlatformID } from '@digitaldefiance/ecies-lib'; /** * Get browser-compatible runtime configuration with GuidV4Provider * This is the browser equivalent of getNodeRuntimeConfiguration() from node-ecies-lib */ export declare function getBrowserRuntimeConfiguration(): import("@digitaldefiance/ecies-lib").IConstants; /** * Create ECIESService with GuidV4Provider configuration for browser compatibility */ export declare function createECIESService(): ECIESService; /** * Calculate overhead for single recipient encryption using ecies-lib constants. * * Formula: idSize + ECIES.WITH_LENGTH.FIXED_OVERHEAD_SIZE * = idSize + 72 * * BrightChain uses WITH_LENGTH format for single-recipient encryption because: * 1. The data length field enables streaming decryption * 2. It's only 8 bytes more than BASIC * 3. Block sizes are known, making length verification valuable * * @param idSize - Size of recipient ID in bytes (default 16 for GUID) * @returns Total overhead in bytes * * @see Requirements 2.3 */ export declare function calculateSingleRecipientOverhead(idSize?: number): number; /** * Calculate overhead for multiple recipient encryption using ecies-lib constants. * * Formula: FIXED_OVERHEAD_SIZE + DATA_LENGTH_SIZE + RECIPIENT_COUNT_SIZE + (recipientCount * (idSize + ENCRYPTED_KEY_SIZE)) * = 64 + 8 + 2 + (recipientCount * (idSize + 60)) * = 74 + (recipientCount * (idSize + 60)) * * @param recipientCount - Number of recipients * @param includeMessageOverhead - Whether to include the fixed message overhead (default true) * @param idSize - Size of recipient ID in bytes (default ECIES.MULTIPLE.RECIPIENT_ID_SIZE = 12) * @returns Total overhead in bytes * * @see Requirements 6.1, 6.2, 6.3, 6.4 */ export declare function calculateECIESMultipleRecipientOverhead(recipientCount: number, includeMessageOverhead?: boolean, idSize?: number): number; /** * Backported from node-ecies-lib: Parse multi-encrypted header */ export declare function parseMultiEncryptedHeader(_data: Uint8Array): unknown; /** * Backported from node-ecies-lib: Build multi-recipient header */ export declare function buildECIESMultipleRecipientHeader(_data: unknown): Uint8Array; /** * Backported from node-ecies-lib: Decrypt multiple ECIE for recipient */ export declare function decryptMultipleECIEForRecipient(_encryptedData: unknown, _recipient: unknown): Uint8Array; //# sourceMappingURL=browserConfig.d.ts.map