import { Fr } from '@aztec/foundation/curves/bn254'; /** * Computes the out hash of a tx. It's the root of the unbalanced tree of all the L2-to-L1 messages emitted by the tx. * @param messages - The L2-to-L1 messages emitted by the tx. * @returns The out hash of the tx. */ export declare function computeTxOutHash(messages: Fr[]): Fr; /** * Computes the out hash of a block. It's the root of the wonky tree of all the tx out hashes. * @param messagesPerTx - The L2-to-L1 messages emitted by the txs in the block. This is an array of message arrays. * The array at index 0 contains the messages emitted by the first tx, the array at index 1 contains the messages * emitted by the second tx, and so on. * @returns The out hash of the block. */ export declare function computeBlockOutHash(messagesPerTx: Fr[][]): Fr; /** * Computes the out hash of a checkpoint. It's the root of the wonky tree of all the block out hashes. * @param messagesPerBlock - The L2-to-L1 messages emitted by the txs in the blocks in the checkpoint. This is an array * of arrays of messages. The array at index 0 contains the arrays of messages emitted by the first block, the array at * index 1 contains the arrays of messages emitted by the second block, and so on. * @returns The out hash of the checkpoint. */ export declare function computeCheckpointOutHash(messagesPerBlock: Fr[][][]): Fr; /** * Computes the accumulated (epoch) out hash of a checkpoint. It's the root of the balanced tree of all the out hashes * from the first checkpoint in an epoch to the current checkpoint. * It's this value that's set to the checkpoint header and validated on L1 instead of the checkpoint out hash. * @param checkpointOutHashes - The out hashes of all checkpoints in the epoch. * @returns The accumulated (epoch) out hash. */ export declare function accumulateCheckpointOutHashes(checkpointOutHashes: Fr[]): Fr; /** * Computes the epoch out hash. It's the root of the balanced tree of all the checkpoint out hashes. * It should match the **accumulated** out hash of the last checkpoint in the epoch. * This value will be inserted into the Outbox on L1. * @param messagesPerCheckpoint - The L2-to-L1 messages emitted by the txs in the blocks in the checkpoints in the epoch. * This is an array of arrays of arrays of messages. The array at index 0 contains the arrays of arrays of messages * emitted by the first checkpoint, the array at index 1 contains the arrays of arrays of messages emitted by the second * checkpoint, and so on. * @returns The epoch out hash. */ export declare function computeEpochOutHash(messagesPerCheckpoint: Fr[][][][]): Fr; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0X2hhc2guZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXNzYWdpbmcvb3V0X2hhc2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR3BEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FPbkQ7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsbUJBQW1CLENBQUMsYUFBYSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUk3RDtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQix3QkFBd0IsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUl2RTtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBUTNFO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsd0JBQWdCLG1CQUFtQixDQUFDLHFCQUFxQixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FJekUifQ==