import { Fr } from '@aztec/foundation/curves/bn254'; import { BufferReader, FieldReader } from '@aztec/foundation/serialize'; import type { FieldsOf } from '@aztec/foundation/types'; import { BlockHeader } from './block_header.js'; import { ProtocolContracts } from './protocol_contracts.js'; import { TxContext } from './tx_context.js'; /** * Data that is constant/not modified by neither of the kernels. */ export declare class PrivateTxConstantData { /** Header of a block whose state is used during execution (not the block the transaction is included in). */ anchorBlockHeader: BlockHeader; /** * Context of the transaction. * * Note: `chainId` and `version` in txContext are not redundant to the values in * self.anchor_block_header.global_variables because they can be different in case of a protocol upgrade. In such * a situation we could be using header from a block before the upgrade took place but be using the updated * protocol to execute and prove the transaction. */ txContext: TxContext; /** * Root of the vk tree for the protocol circuits. */ vkTreeRoot: Fr; /** * List of protocol contracts. */ protocolContracts: ProtocolContracts; constructor( /** Header of a block whose state is used during execution (not the block the transaction is included in). */ anchorBlockHeader: BlockHeader, /** * Context of the transaction. * * Note: `chainId` and `version` in txContext are not redundant to the values in * self.anchor_block_header.global_variables because they can be different in case of a protocol upgrade. In such * a situation we could be using header from a block before the upgrade took place but be using the updated * protocol to execute and prove the transaction. */ txContext: TxContext, /** * Root of the vk tree for the protocol circuits. */ vkTreeRoot: Fr, /** * List of protocol contracts. */ protocolContracts: ProtocolContracts); static from(fields: FieldsOf): PrivateTxConstantData; static getFields(fields: FieldsOf): readonly [BlockHeader, TxContext, Fr, ProtocolContracts]; static fromFields(fields: Fr[] | FieldReader): PrivateTxConstantData; toFields(): Fr[]; static fromBuffer(buffer: Buffer | BufferReader): PrivateTxConstantData; toBuffer(): Buffer; static empty(): PrivateTxConstantData; getSize(): number; clone(): PrivateTxConstantData; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV90eF9jb25zdGFudF9kYXRhLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHJpdmF0ZV90eF9jb25zdGFudF9kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBd0MsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RyxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDOztHQUVHO0FBQ0gscUJBQWEscUJBQXFCO0lBRTlCLDZHQUE2RztJQUN0RyxpQkFBaUIsRUFBRSxXQUFXO0lBQ3JDOzs7Ozs7O09BT0c7SUFDSSxTQUFTLEVBQUUsU0FBUztJQUMzQjs7T0FFRztJQUNJLFVBQVUsRUFBRSxFQUFFO0lBQ3JCOztPQUVHO0lBQ0ksaUJBQWlCLEVBQUUsaUJBQWlCO0lBbkI3QztJQUNFLDZHQUE2RztJQUN0RyxpQkFBaUIsRUFBRSxXQUFXO0lBQ3JDOzs7Ozs7O09BT0c7SUFDSSxTQUFTLEVBQUUsU0FBUztJQUMzQjs7T0FFRztJQUNJLFVBQVUsRUFBRSxFQUFFO0lBQ3JCOztPQUVHO0lBQ0ksaUJBQWlCLEVBQUUsaUJBQWlCLEVBQ3pDO0lBRUosTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLHFCQUFxQixDQUFDLHlCQUVsRDtJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyw0REFFdkQ7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLEdBQUcscUJBQXFCLENBUW5FO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQVFmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxxQkFBcUIsQ0FRdEU7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLEtBQUssMEJBRVg7SUFFRCxPQUFPLFdBT047SUFFRCxLQUFLLElBQUkscUJBQXFCLENBRTdCO0NBQ0YifQ==