import { BigInteger } from 'big-integer'; import { RNG, CipherText } from './interface'; import { TimelockProof, Timelock } from './timelock-util'; export declare class ChestKey extends TimelockProof { } export declare function encrypt(key: Uint8Array, text: Uint8Array, rng?: RNG): CipherText; export declare function decrypt(key: Uint8Array, c: CipherText): Uint8Array | null; export declare class Chest { lockedValue: BigInteger; cipherText: CipherText; constructor({ lockedValue, cipherText }: { lockedValue: BigInteger; cipherText: CipherText; }); static newChestAndKey(payload: Uint8Array, time: number, mod?: BigInteger, rng?: RNG): { chest: Chest; key: ChestKey; }; static fromTimelock(payload: Uint8Array, time: number, timelock: Timelock, rng?: RNG): { chest: Chest; key: ChestKey; }; newKey(time: number, mod?: BigInteger): ChestKey; open(key: ChestKey, time: number): Uint8Array | null; encode(): Uint8Array; static fromArray(buf: Uint8Array): [Chest, number]; }