@aztec/stdlib 0.77.0-testnet-ignition.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -0
- package/dest/abi/abi.d.ts +853 -0
- package/dest/abi/abi.d.ts.map +1 -0
- package/dest/abi/abi.js +279 -0
- package/dest/abi/buffer.d.ts +18 -0
- package/dest/abi/buffer.d.ts.map +1 -0
- package/dest/abi/buffer.js +34 -0
- package/dest/abi/contract_artifact.d.ts +23 -0
- package/dest/abi/contract_artifact.d.ts.map +1 -0
- package/dest/abi/contract_artifact.js +233 -0
- package/dest/abi/decoder.d.ts +58 -0
- package/dest/abi/decoder.d.ts.map +1 -0
- package/dest/abi/decoder.js +170 -0
- package/dest/abi/encoder.d.ts +16 -0
- package/dest/abi/encoder.d.ts.map +1 -0
- package/dest/abi/encoder.js +164 -0
- package/dest/abi/event_selector.d.ts +52 -0
- package/dest/abi/event_selector.d.ts.map +1 -0
- package/dest/abi/event_selector.js +68 -0
- package/dest/abi/function_call.d.ts +53 -0
- package/dest/abi/function_call.d.ts.map +1 -0
- package/dest/abi/function_call.js +49 -0
- package/dest/abi/function_selector.d.ts +65 -0
- package/dest/abi/function_selector.d.ts.map +1 -0
- package/dest/abi/function_selector.js +85 -0
- package/dest/abi/index.d.ts +11 -0
- package/dest/abi/index.d.ts.map +1 -0
- package/dest/abi/index.js +10 -0
- package/dest/abi/mocked_keys.d.ts +2 -0
- package/dest/abi/mocked_keys.d.ts.map +1 -0
- package/dest/abi/mocked_keys.js +1 -0
- package/dest/abi/note_selector.d.ts +42 -0
- package/dest/abi/note_selector.d.ts.map +1 -0
- package/dest/abi/note_selector.js +56 -0
- package/dest/abi/selector.d.ts +42 -0
- package/dest/abi/selector.d.ts.map +1 -0
- package/dest/abi/selector.js +50 -0
- package/dest/abi/utils.d.ts +39 -0
- package/dest/abi/utils.d.ts.map +1 -0
- package/dest/abi/utils.js +55 -0
- package/dest/auth_witness/auth_witness.d.ts +26 -0
- package/dest/auth_witness/auth_witness.d.ts.map +1 -0
- package/dest/auth_witness/auth_witness.js +41 -0
- package/dest/auth_witness/index.d.ts +2 -0
- package/dest/auth_witness/index.d.ts.map +1 -0
- package/dest/auth_witness/index.js +1 -0
- package/dest/avm/avm.d.ts +478 -0
- package/dest/avm/avm.d.ts.map +1 -0
- package/dest/avm/avm.js +794 -0
- package/dest/avm/avm_accumulated_data.d.ts +63 -0
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -0
- package/dest/avm/avm_accumulated_data.js +70 -0
- package/dest/avm/avm_circuit_public_inputs.d.ts +42 -0
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -0
- package/dest/avm/avm_circuit_public_inputs.js +92 -0
- package/dest/avm/avm_proving_request.d.ts +15 -0
- package/dest/avm/avm_proving_request.d.ts.map +1 -0
- package/dest/avm/avm_proving_request.js +7 -0
- package/dest/avm/contract_storage_read.d.ts +60 -0
- package/dest/avm/contract_storage_read.d.ts.map +1 -0
- package/dest/avm/contract_storage_read.js +65 -0
- package/dest/avm/contract_storage_update_request.d.ts +67 -0
- package/dest/avm/contract_storage_update_request.d.ts.map +1 -0
- package/dest/avm/contract_storage_update_request.js +80 -0
- package/dest/avm/index.d.ts +13 -0
- package/dest/avm/index.d.ts.map +1 -0
- package/dest/avm/index.js +12 -0
- package/dest/avm/public_call_stack_item_compressed.d.ts +45 -0
- package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -0
- package/dest/avm/public_call_stack_item_compressed.js +70 -0
- package/dest/avm/public_data_hint.d.ts +18 -0
- package/dest/avm/public_data_hint.d.ts.map +1 -0
- package/dest/avm/public_data_hint.js +27 -0
- package/dest/avm/public_data_read.d.ts +41 -0
- package/dest/avm/public_data_read.d.ts.map +1 -0
- package/dest/avm/public_data_read.js +40 -0
- package/dest/avm/public_data_update_request.d.ts +65 -0
- package/dest/avm/public_data_update_request.d.ts.map +1 -0
- package/dest/avm/public_data_update_request.js +65 -0
- package/dest/avm/public_data_write.d.ts +54 -0
- package/dest/avm/public_data_write.d.ts.map +1 -0
- package/dest/avm/public_data_write.js +64 -0
- package/dest/avm/public_inner_call_request.d.ts +53 -0
- package/dest/avm/public_inner_call_request.d.ts.map +1 -0
- package/dest/avm/public_inner_call_request.js +72 -0
- package/dest/avm/revert_code.d.ts +49 -0
- package/dest/avm/revert_code.d.ts.map +1 -0
- package/dest/avm/revert_code.js +105 -0
- package/dest/aztec-address/index.d.ts +58 -0
- package/dest/aztec-address/index.d.ts.map +1 -0
- package/dest/aztec-address/index.js +108 -0
- package/dest/block/block_hash.d.ts +15 -0
- package/dest/block/block_hash.d.ts.map +1 -0
- package/dest/block/block_hash.js +20 -0
- package/dest/block/body.d.ts +35 -0
- package/dest/block/body.d.ts.map +1 -0
- package/dest/block/body.js +75 -0
- package/dest/block/in_block.d.ts +31 -0
- package/dest/block/in_block.d.ts.map +1 -0
- package/dest/block/in_block.js +24 -0
- package/dest/block/index.d.ts +9 -0
- package/dest/block/index.d.ts.map +1 -0
- package/dest/block/index.js +8 -0
- package/dest/block/l2_block.d.ts +134 -0
- package/dest/block/l2_block.d.ts.map +1 -0
- package/dest/block/l2_block.js +139 -0
- package/dest/block/l2_block_code_to_purge.d.ts +24 -0
- package/dest/block/l2_block_code_to_purge.d.ts.map +1 -0
- package/dest/block/l2_block_code_to_purge.js +51 -0
- package/dest/block/l2_block_downloader/index.d.ts +3 -0
- package/dest/block/l2_block_downloader/index.d.ts.map +1 -0
- package/dest/block/l2_block_downloader/index.js +2 -0
- package/dest/block/l2_block_downloader/l2_block_downloader.d.ts +58 -0
- package/dest/block/l2_block_downloader/l2_block_downloader.d.ts.map +1 -0
- package/dest/block/l2_block_downloader/l2_block_downloader.js +124 -0
- package/dest/block/l2_block_downloader/l2_block_stream.d.ts +57 -0
- package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +1 -0
- package/dest/block/l2_block_downloader/l2_block_stream.js +137 -0
- package/dest/block/l2_block_number.d.ts +5 -0
- package/dest/block/l2_block_number.d.ts.map +1 -0
- package/dest/block/l2_block_number.js +6 -0
- package/dest/block/l2_block_source.d.ts +233 -0
- package/dest/block/l2_block_source.d.ts.map +1 -0
- package/dest/block/l2_block_source.js +17 -0
- package/dest/block/nullifier_with_block_source.d.ts +6 -0
- package/dest/block/nullifier_with_block_source.d.ts.map +1 -0
- package/dest/block/nullifier_with_block_source.js +1 -0
- package/dest/config/config.d.ts +18 -0
- package/dest/config/config.d.ts.map +1 -0
- package/dest/config/config.js +28 -0
- package/dest/config/index.d.ts +2 -0
- package/dest/config/index.d.ts.map +1 -0
- package/dest/config/index.js +1 -0
- package/dest/contract/artifact_hash.d.ts +47 -0
- package/dest/contract/artifact_hash.d.ts.map +1 -0
- package/dest/contract/artifact_hash.js +114 -0
- package/dest/contract/complete_address.d.ts +82 -0
- package/dest/contract/complete_address.d.ts.map +1 -0
- package/dest/contract/complete_address.js +117 -0
- package/dest/contract/contract_address.d.ts +45 -0
- package/dest/contract/contract_address.d.ts.map +1 -0
- package/dest/contract/contract_address.js +64 -0
- package/dest/contract/contract_class.d.ts +17 -0
- package/dest/contract/contract_class.d.ts.map +1 -0
- package/dest/contract/contract_class.js +57 -0
- package/dest/contract/contract_class_id.d.ts +32 -0
- package/dest/contract/contract_class_id.d.ts.map +1 -0
- package/dest/contract/contract_class_id.js +54 -0
- package/dest/contract/contract_function_dao.d.ts +13 -0
- package/dest/contract/contract_function_dao.d.ts.map +1 -0
- package/dest/contract/contract_function_dao.js +5 -0
- package/dest/contract/contract_instance.d.ts +40 -0
- package/dest/contract/contract_instance.d.ts.map +1 -0
- package/dest/contract/contract_instance.js +109 -0
- package/dest/contract/contract_instance_update.d.ts +17 -0
- package/dest/contract/contract_instance_update.d.ts.map +1 -0
- package/dest/contract/contract_instance_update.js +38 -0
- package/dest/contract/deployment_info.d.ts +24 -0
- package/dest/contract/deployment_info.d.ts.map +1 -0
- package/dest/contract/deployment_info.js +3 -0
- package/dest/contract/index.d.ts +15 -0
- package/dest/contract/index.d.ts.map +1 -0
- package/dest/contract/index.js +14 -0
- package/dest/contract/interfaces/contract_class.d.ts +524 -0
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -0
- package/dest/contract/interfaces/contract_class.js +53 -0
- package/dest/contract/interfaces/contract_data_source.d.ts +44 -0
- package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -0
- package/dest/contract/interfaces/contract_data_source.js +1 -0
- package/dest/contract/interfaces/contract_instance.d.ts +138 -0
- package/dest/contract/interfaces/contract_instance.d.ts.map +1 -0
- package/dest/contract/interfaces/contract_instance.js +16 -0
- package/dest/contract/interfaces/contract_instance_update.d.ts +51 -0
- package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -0
- package/dest/contract/interfaces/contract_instance_update.js +10 -0
- package/dest/contract/interfaces/index.d.ts +7 -0
- package/dest/contract/interfaces/index.d.ts.map +1 -0
- package/dest/contract/interfaces/index.js +6 -0
- package/dest/contract/interfaces/node-info.d.ts +20 -0
- package/dest/contract/interfaces/node-info.d.ts.map +1 -0
- package/dest/contract/interfaces/node-info.js +14 -0
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts +26 -0
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -0
- package/dest/contract/interfaces/protocol_contract_addresses.js +14 -0
- package/dest/contract/partial_address.d.ts +7 -0
- package/dest/contract/partial_address.d.ts.map +1 -0
- package/dest/contract/partial_address.js +4 -0
- package/dest/contract/private_function.d.ts +12 -0
- package/dest/contract/private_function.d.ts.map +1 -0
- package/dest/contract/private_function.js +39 -0
- package/dest/contract/private_function_membership_proof.d.ts +32 -0
- package/dest/contract/private_function_membership_proof.d.ts.map +1 -0
- package/dest/contract/private_function_membership_proof.js +124 -0
- package/dest/contract/unconstrained_function_membership_proof.d.ts +27 -0
- package/dest/contract/unconstrained_function_membership_proof.d.ts.map +1 -0
- package/dest/contract/unconstrained_function_membership_proof.js +87 -0
- package/dest/epoch-helpers/index.d.ts +42 -0
- package/dest/epoch-helpers/index.d.ts.map +1 -0
- package/dest/epoch-helpers/index.js +43 -0
- package/dest/errors/index.d.ts +3 -0
- package/dest/errors/index.d.ts.map +1 -0
- package/dest/errors/index.js +2 -0
- package/dest/errors/proving_error.d.ts +15 -0
- package/dest/errors/proving_error.d.ts.map +1 -0
- package/dest/errors/proving_error.js +16 -0
- package/dest/errors/simulation_error.d.ts +111 -0
- package/dest/errors/simulation_error.d.ts.map +1 -0
- package/dest/errors/simulation_error.js +162 -0
- package/dest/event/event.d.ts +24 -0
- package/dest/event/event.d.ts.map +1 -0
- package/dest/event/event.js +13 -0
- package/dest/event/event_metadata.d.ts +38 -0
- package/dest/event/event_metadata.d.ts.map +1 -0
- package/dest/event/event_metadata.js +45 -0
- package/dest/event/index.d.ts +4 -0
- package/dest/event/index.d.ts.map +1 -0
- package/dest/event/index.js +3 -0
- package/dest/event/l1_event_payload.d.ts +52 -0
- package/dest/event/l1_event_payload.d.ts.map +1 -0
- package/dest/event/l1_event_payload.js +64 -0
- package/dest/fees/index.d.ts +2 -0
- package/dest/fees/index.d.ts.map +1 -0
- package/dest/fees/index.js +1 -0
- package/dest/fees/transaction_fee.d.ts +6 -0
- package/dest/fees/transaction_fee.d.ts.map +1 -0
- package/dest/fees/transaction_fee.js +8 -0
- package/dest/gas/gas.d.ts +50 -0
- package/dest/gas/gas.d.ts.map +1 -0
- package/dest/gas/gas.js +76 -0
- package/dest/gas/gas_fees.d.ts +46 -0
- package/dest/gas/gas_fees.d.ts.map +1 -0
- package/dest/gas/gas_fees.js +77 -0
- package/dest/gas/gas_settings.d.ts +136 -0
- package/dest/gas/gas_settings.d.ts.map +1 -0
- package/dest/gas/gas_settings.js +89 -0
- package/dest/gas/gas_used.d.ts +20 -0
- package/dest/gas/gas_used.d.ts.map +1 -0
- package/dest/gas/gas_used.js +1 -0
- package/dest/gas/index.d.ts +5 -0
- package/dest/gas/index.d.ts.map +1 -0
- package/dest/gas/index.js +4 -0
- package/dest/hash/hash.d.ts +77 -0
- package/dest/hash/hash.d.ts.map +1 -0
- package/dest/hash/hash.js +135 -0
- package/dest/hash/index.d.ts +3 -0
- package/dest/hash/index.d.ts.map +1 -0
- package/dest/hash/index.js +2 -0
- package/dest/hash/map_slot.d.ts +12 -0
- package/dest/hash/map_slot.d.ts.map +1 -0
- package/dest/hash/map_slot.js +12 -0
- package/dest/interfaces/archiver.d.ts +9 -0
- package/dest/interfaces/archiver.d.ts.map +1 -0
- package/dest/interfaces/archiver.js +52 -0
- package/dest/interfaces/aztec-node.d.ts +348 -0
- package/dest/interfaces/aztec-node.d.ts.map +1 -0
- package/dest/interfaces/aztec-node.js +93 -0
- package/dest/interfaces/block-builder.d.ts +26 -0
- package/dest/interfaces/block-builder.d.ts.map +1 -0
- package/dest/interfaces/block-builder.js +1 -0
- package/dest/interfaces/client.d.ts +5 -0
- package/dest/interfaces/client.d.ts.map +1 -0
- package/dest/interfaces/client.js +4 -0
- package/dest/interfaces/configs.d.ts +152 -0
- package/dest/interfaces/configs.d.ts.map +1 -0
- package/dest/interfaces/configs.js +34 -0
- package/dest/interfaces/epoch-prover.d.ts +38 -0
- package/dest/interfaces/epoch-prover.d.ts.map +1 -0
- package/dest/interfaces/epoch-prover.js +1 -0
- package/dest/interfaces/get_logs_response.d.ts +73 -0
- package/dest/interfaces/get_logs_response.d.ts.map +1 -0
- package/dest/interfaces/get_logs_response.js +11 -0
- package/dest/interfaces/l2_logs_source.d.ts +42 -0
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -0
- package/dest/interfaces/l2_logs_source.js +3 -0
- package/dest/interfaces/merkle_tree_operations.d.ts +226 -0
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -0
- package/dest/interfaces/merkle_tree_operations.js +13 -0
- package/dest/interfaces/p2p-bootstrap.d.ts +14 -0
- package/dest/interfaces/p2p-bootstrap.d.ts.map +1 -0
- package/dest/interfaces/p2p-bootstrap.js +5 -0
- package/dest/interfaces/p2p.d.ts +49 -0
- package/dest/interfaces/p2p.d.ts.map +1 -0
- package/dest/interfaces/p2p.js +30 -0
- package/dest/interfaces/private_kernel_prover.d.ts +81 -0
- package/dest/interfaces/private_kernel_prover.d.ts.map +1 -0
- package/dest/interfaces/private_kernel_prover.js +4 -0
- package/dest/interfaces/processed-tx-handler.d.ts +10 -0
- package/dest/interfaces/processed-tx-handler.d.ts.map +1 -0
- package/dest/interfaces/processed-tx-handler.js +1 -0
- package/dest/interfaces/prover-agent.d.ts +11 -0
- package/dest/interfaces/prover-agent.d.ts.map +1 -0
- package/dest/interfaces/prover-agent.js +9 -0
- package/dest/interfaces/prover-broker.d.ts +68 -0
- package/dest/interfaces/prover-broker.d.ts.map +1 -0
- package/dest/interfaces/prover-broker.js +1 -0
- package/dest/interfaces/prover-client.d.ts +76 -0
- package/dest/interfaces/prover-client.d.ts.map +1 -0
- package/dest/interfaces/prover-client.js +70 -0
- package/dest/interfaces/prover-coordination.d.ts +20 -0
- package/dest/interfaces/prover-coordination.d.ts.map +1 -0
- package/dest/interfaces/prover-coordination.js +7 -0
- package/dest/interfaces/prover-node.d.ts +19 -0
- package/dest/interfaces/prover-node.d.ts.map +1 -0
- package/dest/interfaces/prover-node.js +27 -0
- package/dest/interfaces/proving-job-source.d.ts +29 -0
- package/dest/interfaces/proving-job-source.d.ts.map +1 -0
- package/dest/interfaces/proving-job-source.js +8 -0
- package/dest/interfaces/proving-job.d.ts +391 -0
- package/dest/interfaces/proving-job.d.ts.map +1 -0
- package/dest/interfaces/proving-job.js +259 -0
- package/dest/interfaces/pxe.d.ts +347 -0
- package/dest/interfaces/pxe.d.ts.map +1 -0
- package/dest/interfaces/pxe.js +104 -0
- package/dest/interfaces/server.d.ts +20 -0
- package/dest/interfaces/server.d.ts.map +1 -0
- package/dest/interfaces/server.js +19 -0
- package/dest/interfaces/server_circuit_prover.d.ts +86 -0
- package/dest/interfaces/server_circuit_prover.d.ts.map +1 -0
- package/dest/interfaces/server_circuit_prover.js +3 -0
- package/dest/interfaces/service.d.ts +15 -0
- package/dest/interfaces/service.d.ts.map +1 -0
- package/dest/interfaces/service.js +7 -0
- package/dest/interfaces/world_state.d.ts +85 -0
- package/dest/interfaces/world_state.d.ts.map +1 -0
- package/dest/interfaces/world_state.js +17 -0
- package/dest/kernel/combined_constant_data.d.ts +73 -0
- package/dest/kernel/combined_constant_data.d.ts.map +1 -0
- package/dest/kernel/combined_constant_data.js +73 -0
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +15 -0
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -0
- package/dest/kernel/hints/build_note_hash_read_request_hints.js +66 -0
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +24 -0
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -0
- package/dest/kernel/hints/build_nullifier_read_request_hints.js +67 -0
- package/dest/kernel/hints/build_transient_data_hints.d.ts +10 -0
- package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -0
- package/dest/kernel/hints/build_transient_data_hints.js +51 -0
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +3 -0
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -0
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +104 -0
- package/dest/kernel/hints/index.d.ts +17 -0
- package/dest/kernel/hints/index.d.ts.map +1 -0
- package/dest/kernel/hints/index.js +16 -0
- package/dest/kernel/hints/key_validation_hint.d.ts +19 -0
- package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -0
- package/dest/kernel/hints/key_validation_hint.js +20 -0
- package/dest/kernel/hints/key_validation_request.d.ts +25 -0
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -0
- package/dest/kernel/hints/key_validation_request.js +50 -0
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts +32 -0
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -0
- package/dest/kernel/hints/key_validation_request_and_generator.js +44 -0
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts +24 -0
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -0
- package/dest/kernel/hints/note_hash_read_request_hints.js +43 -0
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts +21 -0
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -0
- package/dest/kernel/hints/nullifier_read_request_hints.js +43 -0
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts +61 -0
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -0
- package/dest/kernel/hints/private_kernel_reset_hints.js +48 -0
- package/dest/kernel/hints/read_request.d.ts +90 -0
- package/dest/kernel/hints/read_request.d.ts.map +1 -0
- package/dest/kernel/hints/read_request.js +112 -0
- package/dest/kernel/hints/read_request_hints.d.ts +78 -0
- package/dest/kernel/hints/read_request_hints.d.ts.map +1 -0
- package/dest/kernel/hints/read_request_hints.js +114 -0
- package/dest/kernel/hints/rollup_validation_requests.d.ts +40 -0
- package/dest/kernel/hints/rollup_validation_requests.d.ts.map +1 -0
- package/dest/kernel/hints/rollup_validation_requests.js +57 -0
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +21 -0
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -0
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.js +41 -0
- package/dest/kernel/hints/scoped_value_cache.d.ts +14 -0
- package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -0
- package/dest/kernel/hints/scoped_value_cache.js +14 -0
- package/dest/kernel/hints/transient_data_index_hint.d.ts +20 -0
- package/dest/kernel/hints/transient_data_index_hint.d.ts.map +1 -0
- package/dest/kernel/hints/transient_data_index_hint.js +40 -0
- package/dest/kernel/hints/tree_leaf_read_request.d.ts +16 -0
- package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -0
- package/dest/kernel/hints/tree_leaf_read_request.js +33 -0
- package/dest/kernel/index.d.ts +31 -0
- package/dest/kernel/index.d.ts.map +1 -0
- package/dest/kernel/index.js +30 -0
- package/dest/kernel/log_hash.d.ts +38 -0
- package/dest/kernel/log_hash.d.ts.map +1 -0
- package/dest/kernel/log_hash.js +87 -0
- package/dest/kernel/note_hash.d.ts +34 -0
- package/dest/kernel/note_hash.d.ts.map +1 -0
- package/dest/kernel/note_hash.js +80 -0
- package/dest/kernel/nullifier.d.ts +36 -0
- package/dest/kernel/nullifier.d.ts.map +1 -0
- package/dest/kernel/nullifier.js +86 -0
- package/dest/kernel/private_accumulated_data.d.ts +92 -0
- package/dest/kernel/private_accumulated_data.d.ts.map +1 -0
- package/dest/kernel/private_accumulated_data.js +71 -0
- package/dest/kernel/private_call_data.d.ts +170 -0
- package/dest/kernel/private_call_data.d.ts.map +1 -0
- package/dest/kernel/private_call_data.js +167 -0
- package/dest/kernel/private_call_request.d.ts +57 -0
- package/dest/kernel/private_call_request.d.ts.map +1 -0
- package/dest/kernel/private_call_request.js +59 -0
- package/dest/kernel/private_circuit_public_inputs.d.ts +238 -0
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -0
- package/dest/kernel/private_circuit_public_inputs.js +191 -0
- package/dest/kernel/private_context_inputs.d.ts +14 -0
- package/dest/kernel/private_context_inputs.d.ts.map +1 -0
- package/dest/kernel/private_context_inputs.js +27 -0
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +90 -0
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_circuit_public_inputs.js +66 -0
- package/dest/kernel/private_kernel_data.d.ts +54 -0
- package/dest/kernel/private_kernel_data.d.ts.map +1 -0
- package/dest/kernel/private_kernel_data.js +43 -0
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +72 -0
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_init_circuit_private_inputs.js +48 -0
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +39 -0
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.js +31 -0
- package/dest/kernel/private_kernel_prover_profile_result.d.ts +25 -0
- package/dest/kernel/private_kernel_prover_profile_result.d.ts.map +1 -0
- package/dest/kernel/private_kernel_prover_profile_result.js +7 -0
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +35 -0
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.js +36 -0
- package/dest/kernel/private_kernel_reset_dimensions.d.ts +34 -0
- package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -0
- package/dest/kernel/private_kernel_reset_dimensions.js +56 -0
- package/dest/kernel/private_kernel_simulated_output.d.ts +28 -0
- package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -0
- package/dest/kernel/private_kernel_simulated_output.js +3 -0
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +31 -0
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +30 -0
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +114 -0
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +183 -0
- package/dest/kernel/private_log_data.d.ts +40 -0
- package/dest/kernel/private_log_data.d.ts.map +1 -0
- package/dest/kernel/private_log_data.js +99 -0
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +40 -0
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -0
- package/dest/kernel/private_to_avm_accumulated_data.js +102 -0
- package/dest/kernel/private_to_public_accumulated_data.d.ts +31 -0
- package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -0
- package/dest/kernel/private_to_public_accumulated_data.js +73 -0
- package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +34 -0
- package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -0
- package/dest/kernel/private_to_public_accumulated_data_builder.js +72 -0
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +30 -0
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -0
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +65 -0
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +82 -0
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -0
- package/dest/kernel/private_to_rollup_accumulated_data.js +99 -0
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +76 -0
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -0
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +85 -0
- package/dest/kernel/private_validation_requests.d.ts +82 -0
- package/dest/kernel/private_validation_requests.d.ts.map +1 -0
- package/dest/kernel/private_validation_requests.js +79 -0
- package/dest/kernel/public_call_request.d.ts +73 -0
- package/dest/kernel/public_call_request.d.ts.map +1 -0
- package/dest/kernel/public_call_request.js +119 -0
- package/dest/kernel/utils/index.d.ts +4 -0
- package/dest/kernel/utils/index.d.ts.map +1 -0
- package/dest/kernel/utils/index.js +3 -0
- package/dest/kernel/utils/interfaces.d.ts +7 -0
- package/dest/kernel/utils/interfaces.d.ts.map +1 -0
- package/dest/kernel/utils/interfaces.js +1 -0
- package/dest/kernel/utils/optional_number.d.ts +33 -0
- package/dest/kernel/utils/optional_number.d.ts.map +1 -0
- package/dest/kernel/utils/optional_number.js +42 -0
- package/dest/kernel/utils/order_and_comparison.d.ts +8 -0
- package/dest/kernel/utils/order_and_comparison.d.ts.map +1 -0
- package/dest/kernel/utils/order_and_comparison.js +52 -0
- package/dest/keys/derivation.d.ts +30 -0
- package/dest/keys/derivation.d.ts.map +1 -0
- package/dest/keys/derivation.js +127 -0
- package/dest/keys/index.d.ts +6 -0
- package/dest/keys/index.d.ts.map +1 -0
- package/dest/keys/index.js +5 -0
- package/dest/keys/key_types.d.ts +5 -0
- package/dest/keys/key_types.d.ts.map +1 -0
- package/dest/keys/key_types.js +6 -0
- package/dest/keys/public_key.d.ts +4 -0
- package/dest/keys/public_key.d.ts.map +1 -0
- package/dest/keys/public_key.js +1 -0
- package/dest/keys/public_keys.d.ts +116 -0
- package/dest/keys/public_keys.d.ts.map +1 -0
- package/dest/keys/public_keys.js +121 -0
- package/dest/keys/utils.d.ts +3 -0
- package/dest/keys/utils.d.ts.map +1 -0
- package/dest/keys/utils.js +6 -0
- package/dest/logs/contract_class_log.d.ts +40 -0
- package/dest/logs/contract_class_log.d.ts.map +1 -0
- package/dest/logs/contract_class_log.js +104 -0
- package/dest/logs/extended_contract_class_log.d.ts +53 -0
- package/dest/logs/extended_contract_class_log.d.ts.map +1 -0
- package/dest/logs/extended_contract_class_log.js +67 -0
- package/dest/logs/extended_public_log.d.ts +94 -0
- package/dest/logs/extended_public_log.d.ts.map +1 -0
- package/dest/logs/extended_public_log.js +73 -0
- package/dest/logs/index.d.ts +12 -0
- package/dest/logs/index.d.ts.map +1 -0
- package/dest/logs/index.js +11 -0
- package/dest/logs/indexed_tagging_secret.d.ts +28 -0
- package/dest/logs/indexed_tagging_secret.d.ts.map +1 -0
- package/dest/logs/indexed_tagging_secret.js +50 -0
- package/dest/logs/l1_payload/encrypted_log_payload.d.ts +50 -0
- package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +1 -0
- package/dest/logs/l1_payload/encrypted_log_payload.js +140 -0
- package/dest/logs/l1_payload/encryption_util.d.ts +24 -0
- package/dest/logs/l1_payload/encryption_util.d.ts.map +1 -0
- package/dest/logs/l1_payload/encryption_util.js +46 -0
- package/dest/logs/l1_payload/index.d.ts +3 -0
- package/dest/logs/l1_payload/index.d.ts.map +1 -0
- package/dest/logs/l1_payload/index.js +2 -0
- package/dest/logs/l1_payload/l1_note_payload.d.ts +82 -0
- package/dest/logs/l1_payload/l1_note_payload.d.ts.map +1 -0
- package/dest/logs/l1_payload/l1_note_payload.js +129 -0
- package/dest/logs/l1_payload/payload.d.ts +60 -0
- package/dest/logs/l1_payload/payload.d.ts.map +1 -0
- package/dest/logs/l1_payload/payload.js +61 -0
- package/dest/logs/l1_payload/shared_secret_derivation.d.ts +16 -0
- package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +1 -0
- package/dest/logs/l1_payload/shared_secret_derivation.js +23 -0
- package/dest/logs/log_filter.d.ts +22 -0
- package/dest/logs/log_filter.d.ts.map +1 -0
- package/dest/logs/log_filter.js +11 -0
- package/dest/logs/log_id.d.ts +72 -0
- package/dest/logs/log_id.d.ts.map +1 -0
- package/dest/logs/log_id.js +83 -0
- package/dest/logs/log_with_tx_data.d.ts +11 -0
- package/dest/logs/log_with_tx_data.d.ts.map +1 -0
- package/dest/logs/log_with_tx_data.js +36 -0
- package/dest/logs/private_log.d.ts +31 -0
- package/dest/logs/private_log.d.ts.map +1 -0
- package/dest/logs/private_log.js +47 -0
- package/dest/logs/public_log.d.ts +29 -0
- package/dest/logs/public_log.d.ts.map +1 -0
- package/dest/logs/public_log.js +67 -0
- package/dest/logs/tx_scoped_l2_log.d.ts +60 -0
- package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -0
- package/dest/logs/tx_scoped_l2_log.js +58 -0
- package/dest/messaging/inbox_leaf.d.ts +19 -0
- package/dest/messaging/inbox_leaf.d.ts.map +1 -0
- package/dest/messaging/inbox_leaf.js +27 -0
- package/dest/messaging/index.d.ts +7 -0
- package/dest/messaging/index.d.ts.map +1 -0
- package/dest/messaging/index.js +6 -0
- package/dest/messaging/l1_actor.d.ts +33 -0
- package/dest/messaging/l1_actor.d.ts.map +1 -0
- package/dest/messaging/l1_actor.js +39 -0
- package/dest/messaging/l1_to_l2_message.d.ts +50 -0
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -0
- package/dest/messaging/l1_to_l2_message.js +83 -0
- package/dest/messaging/l1_to_l2_message_source.d.ts +24 -0
- package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -0
- package/dest/messaging/l1_to_l2_message_source.js +3 -0
- package/dest/messaging/l2_actor.d.ts +33 -0
- package/dest/messaging/l2_actor.d.ts.map +1 -0
- package/dest/messaging/l2_actor.js +39 -0
- package/dest/messaging/l2_to_l1_message.d.ts +66 -0
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -0
- package/dest/messaging/l2_to_l1_message.js +114 -0
- package/dest/network/index.d.ts +32 -0
- package/dest/network/index.d.ts.map +1 -0
- package/dest/network/index.js +30 -0
- package/dest/noir/index.d.ts +128 -0
- package/dest/noir/index.d.ts.map +1 -0
- package/dest/noir/index.js +15 -0
- package/dest/note/comparator.d.ts +12 -0
- package/dest/note/comparator.d.ts.map +1 -0
- package/dest/note/comparator.js +11 -0
- package/dest/note/extended_note.d.ts +124 -0
- package/dest/note/extended_note.d.ts.map +1 -0
- package/dest/note/extended_note.js +115 -0
- package/dest/note/index.d.ts +6 -0
- package/dest/note/index.d.ts.map +1 -0
- package/dest/note/index.js +5 -0
- package/dest/note/note.d.ts +24 -0
- package/dest/note/note.d.ts.map +1 -0
- package/dest/note/note.js +13 -0
- package/dest/note/note_status.d.ts +8 -0
- package/dest/note/note_status.d.ts.map +1 -0
- package/dest/note/note_status.js +7 -0
- package/dest/note/notes_filter.d.ts +27 -0
- package/dest/note/notes_filter.d.ts.map +1 -0
- package/dest/note/notes_filter.js +13 -0
- package/dest/p2p/block_attestation.d.ts +49 -0
- package/dest/p2p/block_attestation.d.ts.map +1 -0
- package/dest/p2p/block_attestation.js +78 -0
- package/dest/p2p/block_proposal.d.ts +45 -0
- package/dest/p2p/block_proposal.d.ts.map +1 -0
- package/dest/p2p/block_proposal.js +70 -0
- package/dest/p2p/client_type.d.ts +5 -0
- package/dest/p2p/client_type.d.ts.map +1 -0
- package/dest/p2p/client_type.js +7 -0
- package/dest/p2p/consensus_payload.d.ts +51 -0
- package/dest/p2p/consensus_payload.d.ts.map +1 -0
- package/dest/p2p/consensus_payload.js +81 -0
- package/dest/p2p/gossipable.d.ts +32 -0
- package/dest/p2p/gossipable.d.ts.map +1 -0
- package/dest/p2p/gossipable.js +10 -0
- package/dest/p2p/index.d.ts +11 -0
- package/dest/p2p/index.d.ts.map +1 -0
- package/dest/p2p/index.js +10 -0
- package/dest/p2p/interface.d.ts +18 -0
- package/dest/p2p/interface.d.ts.map +1 -0
- package/dest/p2p/interface.js +19 -0
- package/dest/p2p/message_validator.d.ts +10 -0
- package/dest/p2p/message_validator.d.ts.map +1 -0
- package/dest/p2p/message_validator.js +5 -0
- package/dest/p2p/peer_error.d.ts +18 -0
- package/dest/p2p/peer_error.d.ts.map +1 -0
- package/dest/p2p/peer_error.js +15 -0
- package/dest/p2p/signature_utils.d.ts +23 -0
- package/dest/p2p/signature_utils.d.ts.map +1 -0
- package/dest/p2p/signature_utils.js +22 -0
- package/dest/p2p/topic_type.d.ts +28 -0
- package/dest/p2p/topic_type.d.ts.map +1 -0
- package/dest/p2p/topic_type.js +40 -0
- package/dest/parity/base_parity_inputs.d.ts +37 -0
- package/dest/parity/base_parity_inputs.d.ts.map +1 -0
- package/dest/parity/base_parity_inputs.js +45 -0
- package/dest/parity/index.d.ts +5 -0
- package/dest/parity/index.d.ts.map +1 -0
- package/dest/parity/index.js +4 -0
- package/dest/parity/parity_public_inputs.d.ts +58 -0
- package/dest/parity/parity_public_inputs.d.ts.map +1 -0
- package/dest/parity/parity_public_inputs.js +68 -0
- package/dest/parity/root_parity_input.d.ts +54 -0
- package/dest/parity/root_parity_input.d.ts.map +1 -0
- package/dest/parity/root_parity_input.js +50 -0
- package/dest/parity/root_parity_inputs.d.ts +39 -0
- package/dest/parity/root_parity_inputs.d.ts.map +1 -0
- package/dest/parity/root_parity_inputs.js +47 -0
- package/dest/proofs/client_ivc_proof.d.ts +21 -0
- package/dest/proofs/client_ivc_proof.d.ts.map +1 -0
- package/dest/proofs/client_ivc_proof.js +44 -0
- package/dest/proofs/index.d.ts +5 -0
- package/dest/proofs/index.d.ts.map +1 -0
- package/dest/proofs/index.js +4 -0
- package/dest/proofs/proof.d.ts +65 -0
- package/dest/proofs/proof.d.ts.map +1 -0
- package/dest/proofs/proof.js +91 -0
- package/dest/proofs/proving_request_type.d.ts +16 -0
- package/dest/proofs/proving_request_type.d.ts.map +1 -0
- package/dest/proofs/proving_request_type.js +15 -0
- package/dest/proofs/recursive_proof.d.ts +101 -0
- package/dest/proofs/recursive_proof.d.ts.map +1 -0
- package/dest/proofs/recursive_proof.js +93 -0
- package/dest/rollup/avm_proof_data.d.ts +17 -0
- package/dest/rollup/avm_proof_data.d.ts.map +1 -0
- package/dest/rollup/avm_proof_data.js +25 -0
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts +126 -0
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/base_or_merge_rollup_public_inputs.js +92 -0
- package/dest/rollup/base_rollup_hints.d.ts +138 -0
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -0
- package/dest/rollup/base_rollup_hints.js +132 -0
- package/dest/rollup/block_merge_rollup.d.ts +45 -0
- package/dest/rollup/block_merge_rollup.d.ts.map +1 -0
- package/dest/rollup/block_merge_rollup.js +50 -0
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +159 -0
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +1 -0
- package/dest/rollup/block_root_or_block_merge_public_inputs.js +136 -0
- package/dest/rollup/block_root_rollup.d.ts +262 -0
- package/dest/rollup/block_root_rollup.d.ts.map +1 -0
- package/dest/rollup/block_root_rollup.js +293 -0
- package/dest/rollup/constant_rollup_data.d.ts +47 -0
- package/dest/rollup/constant_rollup_data.d.ts.map +1 -0
- package/dest/rollup/constant_rollup_data.js +45 -0
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts +54 -0
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +1 -0
- package/dest/rollup/empty_block_root_rollup_inputs.js +68 -0
- package/dest/rollup/index.d.ts +19 -0
- package/dest/rollup/index.d.ts.map +1 -0
- package/dest/rollup/index.js +18 -0
- package/dest/rollup/merge_rollup.d.ts +45 -0
- package/dest/rollup/merge_rollup.d.ts.map +1 -0
- package/dest/rollup/merge_rollup.js +50 -0
- package/dest/rollup/previous_rollup_block_data.d.ts +58 -0
- package/dest/rollup/previous_rollup_block_data.d.ts.map +1 -0
- package/dest/rollup/previous_rollup_block_data.js +42 -0
- package/dest/rollup/previous_rollup_data.d.ts +58 -0
- package/dest/rollup/previous_rollup_data.d.ts.map +1 -0
- package/dest/rollup/previous_rollup_data.js +42 -0
- package/dest/rollup/private_base_rollup_inputs.d.ts +23 -0
- package/dest/rollup/private_base_rollup_inputs.d.ts.map +1 -0
- package/dest/rollup/private_base_rollup_inputs.js +44 -0
- package/dest/rollup/private_tube_data.d.ts +17 -0
- package/dest/rollup/private_tube_data.d.ts.map +1 -0
- package/dest/rollup/private_tube_data.js +25 -0
- package/dest/rollup/public_base_rollup_inputs.d.ts +25 -0
- package/dest/rollup/public_base_rollup_inputs.d.ts.map +1 -0
- package/dest/rollup/public_base_rollup_inputs.js +48 -0
- package/dest/rollup/public_tube_data.d.ts +17 -0
- package/dest/rollup/public_tube_data.d.ts.map +1 -0
- package/dest/rollup/public_tube_data.js +25 -0
- package/dest/rollup/root_rollup.d.ts +112 -0
- package/dest/rollup/root_rollup.d.ts.map +1 -0
- package/dest/rollup/root_rollup.js +158 -0
- package/dest/rollup/state_diff_hints.d.ts +105 -0
- package/dest/rollup/state_diff_hints.d.ts.map +1 -0
- package/dest/rollup/state_diff_hints.js +85 -0
- package/dest/rollup/tube_inputs.d.ts +40 -0
- package/dest/rollup/tube_inputs.d.ts.map +1 -0
- package/dest/rollup/tube_inputs.js +57 -0
- package/dest/schemas/index.d.ts +2 -0
- package/dest/schemas/index.d.ts.map +1 -0
- package/dest/schemas/index.js +1 -0
- package/dest/schemas/schemas.d.ts +63 -0
- package/dest/schemas/schemas.d.ts.map +1 -0
- package/dest/schemas/schemas.js +34 -0
- package/dest/shared_mutable/index.d.ts +5 -0
- package/dest/shared_mutable/index.d.ts.map +1 -0
- package/dest/shared_mutable/index.js +4 -0
- package/dest/shared_mutable/scheduled_delay_change.d.ts +10 -0
- package/dest/shared_mutable/scheduled_delay_change.d.ts.map +1 -0
- package/dest/shared_mutable/scheduled_delay_change.js +16 -0
- package/dest/shared_mutable/scheduled_value_change.d.ts +11 -0
- package/dest/shared_mutable/scheduled_value_change.d.ts.map +1 -0
- package/dest/shared_mutable/scheduled_value_change.js +27 -0
- package/dest/shared_mutable/shared_mutable_values.d.ts +22 -0
- package/dest/shared_mutable/shared_mutable_values.d.ts.map +1 -0
- package/dest/shared_mutable/shared_mutable_values.js +78 -0
- package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts +15 -0
- package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts.map +1 -0
- package/dest/shared_mutable/shared_mutable_values_with_hash.js +30 -0
- package/dest/stats/index.d.ts +2 -0
- package/dest/stats/index.d.ts.map +1 -0
- package/dest/stats/index.js +1 -0
- package/dest/stats/stats.d.ts +224 -0
- package/dest/stats/stats.d.ts.map +1 -0
- package/dest/stats/stats.js +1 -0
- package/dest/tests/factories.d.ts +396 -0
- package/dest/tests/factories.d.ts.map +1 -0
- package/dest/tests/factories.js +914 -0
- package/dest/tests/fixtures.d.ts +6 -0
- package/dest/tests/fixtures.d.ts.map +1 -0
- package/dest/tests/fixtures.js +25 -0
- package/dest/tests/index.d.ts +3 -0
- package/dest/tests/index.d.ts.map +1 -0
- package/dest/tests/index.js +2 -0
- package/dest/tests/jest.d.ts +13 -0
- package/dest/tests/jest.d.ts.map +1 -0
- package/dest/tests/jest.js +26 -0
- package/dest/tests/mocks.d.ts +43 -0
- package/dest/tests/mocks.d.ts.map +1 -0
- package/dest/tests/mocks.js +179 -0
- package/dest/trees/append_only_tree_snapshot.d.ts +70 -0
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -0
- package/dest/trees/append_only_tree_snapshot.js +75 -0
- package/dest/trees/index.d.ts +9 -0
- package/dest/trees/index.d.ts.map +1 -0
- package/dest/trees/index.js +8 -0
- package/dest/trees/merkle_tree_id.d.ts +23 -0
- package/dest/trees/merkle_tree_id.d.ts.map +1 -0
- package/dest/trees/merkle_tree_id.js +25 -0
- package/dest/trees/nullifier_leaf.d.ts +88 -0
- package/dest/trees/nullifier_leaf.d.ts.map +1 -0
- package/dest/trees/nullifier_leaf.js +103 -0
- package/dest/trees/nullifier_membership_witness.d.ts +112 -0
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -0
- package/dest/trees/nullifier_membership_witness.js +47 -0
- package/dest/trees/protocol_contract_leaf.d.ts +87 -0
- package/dest/trees/protocol_contract_leaf.d.ts.map +1 -0
- package/dest/trees/protocol_contract_leaf.js +103 -0
- package/dest/trees/public_data_leaf.d.ts +110 -0
- package/dest/trees/public_data_leaf.d.ts.map +1 -0
- package/dest/trees/public_data_leaf.js +130 -0
- package/dest/trees/public_data_witness.d.ts +142 -0
- package/dest/trees/public_data_witness.d.ts.map +1 -0
- package/dest/trees/public_data_witness.js +81 -0
- package/dest/tx/block_header.d.ts +90 -0
- package/dest/tx/block_header.d.ts.map +1 -0
- package/dest/tx/block_header.js +134 -0
- package/dest/tx/call_context.d.ts +94 -0
- package/dest/tx/call_context.d.ts.map +1 -0
- package/dest/tx/call_context.js +96 -0
- package/dest/tx/capsule.d.ts +30 -0
- package/dest/tx/capsule.d.ts.map +1 -0
- package/dest/tx/capsule.js +37 -0
- package/dest/tx/content_commitment.d.ts +105 -0
- package/dest/tx/content_commitment.d.ts.map +1 -0
- package/dest/tx/content_commitment.js +96 -0
- package/dest/tx/function_data.d.ts +69 -0
- package/dest/tx/function_data.d.ts.map +1 -0
- package/dest/tx/function_data.js +72 -0
- package/dest/tx/global_variable_builder.d.ts +21 -0
- package/dest/tx/global_variable_builder.d.ts.map +1 -0
- package/dest/tx/global_variable_builder.js +3 -0
- package/dest/tx/global_variables.d.ts +139 -0
- package/dest/tx/global_variables.d.ts.map +1 -0
- package/dest/tx/global_variables.js +131 -0
- package/dest/tx/hashed_values.d.ts +26 -0
- package/dest/tx/hashed_values.d.ts.map +1 -0
- package/dest/tx/hashed_values.js +42 -0
- package/dest/tx/index.d.ts +28 -0
- package/dest/tx/index.d.ts.map +1 -0
- package/dest/tx/index.js +27 -0
- package/dest/tx/max_block_number.d.ts +55 -0
- package/dest/tx/max_block_number.d.ts.map +1 -0
- package/dest/tx/max_block_number.js +65 -0
- package/dest/tx/partial_state_reference.d.ts +104 -0
- package/dest/tx/partial_state_reference.d.ts.map +1 -0
- package/dest/tx/partial_state_reference.js +60 -0
- package/dest/tx/private_execution_result.d.ts +182 -0
- package/dest/tx/private_execution_result.d.ts.map +1 -0
- package/dest/tx/private_execution_result.js +261 -0
- package/dest/tx/processed_tx.d.ts +70 -0
- package/dest/tx/processed_tx.d.ts.map +1 -0
- package/dest/tx/processed_tx.js +64 -0
- package/dest/tx/public_execution_request.d.ts +45 -0
- package/dest/tx/public_execution_request.d.ts.map +1 -0
- package/dest/tx/public_execution_request.js +72 -0
- package/dest/tx/public_simulation_output.d.ts +31 -0
- package/dest/tx/public_simulation_output.d.ts.map +1 -0
- package/dest/tx/public_simulation_output.js +68 -0
- package/dest/tx/simulated_tx.d.ts +72 -0
- package/dest/tx/simulated_tx.d.ts.map +1 -0
- package/dest/tx/simulated_tx.js +104 -0
- package/dest/tx/state_reference.d.ts +166 -0
- package/dest/tx/state_reference.d.ts.map +1 -0
- package/dest/tx/state_reference.js +74 -0
- package/dest/tx/tree_snapshots.d.ts +26 -0
- package/dest/tx/tree_snapshots.d.ts.map +1 -0
- package/dest/tx/tree_snapshots.js +63 -0
- package/dest/tx/tx.d.ts +174 -0
- package/dest/tx/tx.d.ts.map +1 -0
- package/dest/tx/tx.js +248 -0
- package/dest/tx/tx_constant_data.d.ts +61 -0
- package/dest/tx/tx_constant_data.d.ts.map +1 -0
- package/dest/tx/tx_constant_data.js +68 -0
- package/dest/tx/tx_context.d.ts +196 -0
- package/dest/tx/tx_context.d.ts.map +1 -0
- package/dest/tx/tx_context.js +80 -0
- package/dest/tx/tx_effect.d.ts +170 -0
- package/dest/tx/tx_effect.d.ts.map +1 -0
- package/dest/tx/tx_effect.js +425 -0
- package/dest/tx/tx_execution_request.d.ts +114 -0
- package/dest/tx/tx_execution_request.d.ts.map +1 -0
- package/dest/tx/tx_execution_request.js +127 -0
- package/dest/tx/tx_hash.d.ts +27 -0
- package/dest/tx/tx_hash.d.ts.map +1 -0
- package/dest/tx/tx_hash.js +51 -0
- package/dest/tx/tx_receipt.d.ts +83 -0
- package/dest/tx/tx_receipt.d.ts.map +1 -0
- package/dest/tx/tx_receipt.js +76 -0
- package/dest/tx/tx_request.d.ts +48 -0
- package/dest/tx/tx_request.d.ts.map +1 -0
- package/dest/tx/tx_request.js +66 -0
- package/dest/tx/validator/empty_validator.d.ts +5 -0
- package/dest/tx/validator/empty_validator.d.ts.map +1 -0
- package/dest/tx/validator/empty_validator.js +7 -0
- package/dest/tx/validator/tx_validator.d.ts +46 -0
- package/dest/tx/validator/tx_validator.d.ts.map +1 -0
- package/dest/tx/validator/tx_validator.js +18 -0
- package/dest/types/index.d.ts +2 -0
- package/dest/types/index.d.ts.map +1 -0
- package/dest/types/index.js +1 -0
- package/dest/types/shared.d.ts +41 -0
- package/dest/types/shared.d.ts.map +1 -0
- package/dest/types/shared.js +34 -0
- package/dest/versioning/index.d.ts +2 -0
- package/dest/versioning/index.d.ts.map +1 -0
- package/dest/versioning/index.js +1 -0
- package/dest/versioning/versioning.d.ts +32 -0
- package/dest/versioning/versioning.d.ts.map +1 -0
- package/dest/versioning/versioning.js +92 -0
- package/dest/vks/index.d.ts +3 -0
- package/dest/vks/index.d.ts.map +1 -0
- package/dest/vks/index.js +2 -0
- package/dest/vks/verification_key.d.ts +197 -0
- package/dest/vks/verification_key.d.ts.map +1 -0
- package/dest/vks/verification_key.js +241 -0
- package/dest/vks/vk_witness_data.d.ts +32 -0
- package/dest/vks/vk_witness_data.d.ts.map +1 -0
- package/dest/vks/vk_witness_data.js +33 -0
- package/package.json +142 -0
- package/src/abi/abi.ts +504 -0
- package/src/abi/buffer.ts +36 -0
- package/src/abi/contract_artifact.ts +294 -0
- package/src/abi/decoder.ts +187 -0
- package/src/abi/encoder.ts +161 -0
- package/src/abi/event_selector.ts +93 -0
- package/src/abi/function_call.ts +58 -0
- package/src/abi/function_selector.ts +123 -0
- package/src/abi/index.ts +10 -0
- package/src/abi/mocked_keys.ts +2 -0
- package/src/abi/note_selector.ts +78 -0
- package/src/abi/selector.ts +64 -0
- package/src/abi/utils.ts +78 -0
- package/src/auth_witness/auth_witness.ts +52 -0
- package/src/auth_witness/index.ts +1 -0
- package/src/avm/avm.ts +1010 -0
- package/src/avm/avm_accumulated_data.ts +133 -0
- package/src/avm/avm_circuit_public_inputs.ts +168 -0
- package/src/avm/avm_proving_request.ts +11 -0
- package/src/avm/contract_storage_read.ts +77 -0
- package/src/avm/contract_storage_update_request.ts +93 -0
- package/src/avm/index.ts +12 -0
- package/src/avm/public_call_stack_item_compressed.ts +113 -0
- package/src/avm/public_data_hint.ts +38 -0
- package/src/avm/public_data_read.ts +48 -0
- package/src/avm/public_data_update_request.ts +106 -0
- package/src/avm/public_data_write.ts +80 -0
- package/src/avm/public_inner_call_request.ts +85 -0
- package/src/avm/revert_code.ts +128 -0
- package/src/aztec-address/index.ts +145 -0
- package/src/block/block_hash.ts +30 -0
- package/src/block/body.ts +101 -0
- package/src/block/in_block.ts +36 -0
- package/src/block/index.ts +8 -0
- package/src/block/l2_block.ts +205 -0
- package/src/block/l2_block_code_to_purge.ts +103 -0
- package/src/block/l2_block_downloader/index.ts +2 -0
- package/src/block/l2_block_downloader/l2_block_downloader.ts +149 -0
- package/src/block/l2_block_downloader/l2_block_stream.ts +179 -0
- package/src/block/l2_block_number.ts +8 -0
- package/src/block/l2_block_source.ts +148 -0
- package/src/block/nullifier_with_block_source.ts +7 -0
- package/src/config/config.ts +42 -0
- package/src/config/index.ts +1 -0
- package/src/contract/artifact_hash.ts +115 -0
- package/src/contract/complete_address.ts +155 -0
- package/src/contract/contract_address.ts +91 -0
- package/src/contract/contract_class.ts +81 -0
- package/src/contract/contract_class_id.ts +70 -0
- package/src/contract/contract_function_dao.ts +13 -0
- package/src/contract/contract_instance.ts +151 -0
- package/src/contract/contract_instance_update.ts +47 -0
- package/src/contract/deployment_info.ts +25 -0
- package/src/contract/index.ts +14 -0
- package/src/contract/interfaces/contract_class.ts +167 -0
- package/src/contract/interfaces/contract_data_source.ts +52 -0
- package/src/contract/interfaces/contract_instance.ts +47 -0
- package/src/contract/interfaces/contract_instance_update.ts +30 -0
- package/src/contract/interfaces/index.ts +6 -0
- package/src/contract/interfaces/node-info.ts +33 -0
- package/src/contract/interfaces/protocol_contract_addresses.ts +25 -0
- package/src/contract/partial_address.ts +7 -0
- package/src/contract/private_function.ts +47 -0
- package/src/contract/private_function_membership_proof.ts +167 -0
- package/src/contract/unconstrained_function_membership_proof.ts +118 -0
- package/src/epoch-helpers/index.ts +69 -0
- package/src/errors/index.ts +2 -0
- package/src/errors/proving_error.ts +18 -0
- package/src/errors/simulation_error.ts +261 -0
- package/src/event/event.ts +16 -0
- package/src/event/event_metadata.ts +56 -0
- package/src/event/index.ts +3 -0
- package/src/event/l1_event_payload.ts +87 -0
- package/src/fees/index.ts +1 -0
- package/src/fees/transaction_fee.ts +21 -0
- package/src/gas/gas.ts +101 -0
- package/src/gas/gas_fees.ts +104 -0
- package/src/gas/gas_settings.ts +150 -0
- package/src/gas/gas_used.ts +23 -0
- package/src/gas/index.ts +4 -0
- package/src/hash/hash.ts +143 -0
- package/src/hash/index.ts +2 -0
- package/src/hash/map_slot.ts +18 -0
- package/src/interfaces/archiver.ts +84 -0
- package/src/interfaces/aztec-node.ts +614 -0
- package/src/interfaces/block-builder.ts +33 -0
- package/src/interfaces/client.ts +4 -0
- package/src/interfaces/configs.ts +73 -0
- package/src/interfaces/epoch-prover.ts +43 -0
- package/src/interfaces/get_logs_response.ts +31 -0
- package/src/interfaces/l2_logs_source.ts +47 -0
- package/src/interfaces/merkle_tree_operations.ts +293 -0
- package/src/interfaces/p2p-bootstrap.ts +21 -0
- package/src/interfaces/p2p.ts +67 -0
- package/src/interfaces/private_kernel_prover.ts +113 -0
- package/src/interfaces/processed-tx-handler.ts +10 -0
- package/src/interfaces/prover-agent.ts +20 -0
- package/src/interfaces/prover-broker.ts +90 -0
- package/src/interfaces/prover-client.ts +121 -0
- package/src/interfaces/prover-coordination.ts +27 -0
- package/src/interfaces/prover-node.ts +46 -0
- package/src/interfaces/proving-job-source.ts +40 -0
- package/src/interfaces/proving-job.ts +352 -0
- package/src/interfaces/pxe.ts +536 -0
- package/src/interfaces/server.ts +19 -0
- package/src/interfaces/server_circuit_prover.ts +167 -0
- package/src/interfaces/service.ts +25 -0
- package/src/interfaces/world_state.ts +84 -0
- package/src/kernel/combined_constant_data.ts +128 -0
- package/src/kernel/hints/build_note_hash_read_request_hints.ts +125 -0
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +153 -0
- package/src/kernel/hints/build_transient_data_hints.ts +81 -0
- package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +167 -0
- package/src/kernel/hints/index.ts +16 -0
- package/src/kernel/hints/key_validation_hint.ts +24 -0
- package/src/kernel/hints/key_validation_request.ts +63 -0
- package/src/kernel/hints/key_validation_request_and_generator.ts +52 -0
- package/src/kernel/hints/note_hash_read_request_hints.ts +94 -0
- package/src/kernel/hints/nullifier_read_request_hints.ts +93 -0
- package/src/kernel/hints/private_kernel_reset_hints.ts +129 -0
- package/src/kernel/hints/read_request.ts +130 -0
- package/src/kernel/hints/read_request_hints.ts +165 -0
- package/src/kernel/hints/rollup_validation_requests.ts +73 -0
- package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +54 -0
- package/src/kernel/hints/scoped_value_cache.ts +19 -0
- package/src/kernel/hints/transient_data_index_hint.ts +42 -0
- package/src/kernel/hints/tree_leaf_read_request.ts +32 -0
- package/src/kernel/index.ts +30 -0
- package/src/kernel/log_hash.ts +91 -0
- package/src/kernel/note_hash.ts +85 -0
- package/src/kernel/nullifier.ts +89 -0
- package/src/kernel/private_accumulated_data.ts +113 -0
- package/src/kernel/private_call_data.ts +207 -0
- package/src/kernel/private_call_request.ts +99 -0
- package/src/kernel/private_circuit_public_inputs.ts +322 -0
- package/src/kernel/private_context_inputs.ts +23 -0
- package/src/kernel/private_kernel_circuit_public_inputs.ts +102 -0
- package/src/kernel/private_kernel_data.ts +61 -0
- package/src/kernel/private_kernel_init_circuit_private_inputs.ts +68 -0
- package/src/kernel/private_kernel_inner_circuit_private_inputs.ts +41 -0
- package/src/kernel/private_kernel_prover_profile_result.ts +7 -0
- package/src/kernel/private_kernel_reset_circuit_private_inputs.ts +77 -0
- package/src/kernel/private_kernel_reset_dimensions.ts +81 -0
- package/src/kernel/private_kernel_simulated_output.ts +35 -0
- package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +41 -0
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +313 -0
- package/src/kernel/private_log_data.ts +107 -0
- package/src/kernel/private_to_avm_accumulated_data.ts +144 -0
- package/src/kernel/private_to_public_accumulated_data.ts +141 -0
- package/src/kernel/private_to_public_accumulated_data_builder.ts +102 -0
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +96 -0
- package/src/kernel/private_to_rollup_accumulated_data.ts +159 -0
- package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +112 -0
- package/src/kernel/private_validation_requests.ts +140 -0
- package/src/kernel/public_call_request.ts +157 -0
- package/src/kernel/utils/index.ts +3 -0
- package/src/kernel/utils/interfaces.ts +7 -0
- package/src/kernel/utils/optional_number.ts +50 -0
- package/src/kernel/utils/order_and_comparison.ts +71 -0
- package/src/keys/derivation.ts +141 -0
- package/src/keys/index.ts +5 -0
- package/src/keys/key_types.ts +5 -0
- package/src/keys/public_key.ts +4 -0
- package/src/keys/public_keys.ts +194 -0
- package/src/keys/utils.ts +9 -0
- package/src/logs/contract_class_log.ts +112 -0
- package/src/logs/extended_contract_class_log.ts +87 -0
- package/src/logs/extended_public_log.ts +94 -0
- package/src/logs/index.ts +11 -0
- package/src/logs/indexed_tagging_secret.ts +45 -0
- package/src/logs/l1_payload/encrypted_log_payload.ts +202 -0
- package/src/logs/l1_payload/encryption_util.ts +54 -0
- package/src/logs/l1_payload/index.ts +2 -0
- package/src/logs/l1_payload/l1_note_payload.ts +182 -0
- package/src/logs/l1_payload/payload.ts +73 -0
- package/src/logs/l1_payload/shared_secret_derivation.ts +35 -0
- package/src/logs/log_filter.ts +31 -0
- package/src/logs/log_id.ts +110 -0
- package/src/logs/log_with_tx_data.ts +36 -0
- package/src/logs/private_log.ts +58 -0
- package/src/logs/public_log.ts +83 -0
- package/src/logs/tx_scoped_l2_log.ts +83 -0
- package/src/messaging/inbox_leaf.ts +28 -0
- package/src/messaging/index.ts +6 -0
- package/src/messaging/l1_actor.ts +43 -0
- package/src/messaging/l1_to_l2_message.ts +97 -0
- package/src/messaging/l1_to_l2_message_source.ts +26 -0
- package/src/messaging/l2_actor.ts +44 -0
- package/src/messaging/l2_to_l1_message.ts +128 -0
- package/src/network/index.ts +32 -0
- package/src/noir/index.ts +154 -0
- package/src/note/comparator.ts +11 -0
- package/src/note/extended_note.ts +168 -0
- package/src/note/index.ts +5 -0
- package/src/note/note.ts +16 -0
- package/src/note/note_status.ts +8 -0
- package/src/note/notes_filter.ts +39 -0
- package/src/p2p/block_attestation.ts +107 -0
- package/src/p2p/block_proposal.ts +102 -0
- package/src/p2p/client_type.ts +6 -0
- package/src/p2p/consensus_payload.ts +91 -0
- package/src/p2p/gossipable.ts +33 -0
- package/src/p2p/index.ts +10 -0
- package/src/p2p/interface.ts +28 -0
- package/src/p2p/message_validator.ts +10 -0
- package/src/p2p/peer_error.ts +17 -0
- package/src/p2p/signature_utils.ts +36 -0
- package/src/p2p/topic_type.ts +45 -0
- package/src/parity/base_parity_inputs.ts +63 -0
- package/src/parity/index.ts +4 -0
- package/src/parity/parity_public_inputs.ts +82 -0
- package/src/parity/root_parity_input.ts +71 -0
- package/src/parity/root_parity_inputs.ts +66 -0
- package/src/proofs/client_ivc_proof.ts +61 -0
- package/src/proofs/index.ts +4 -0
- package/src/proofs/proof.ts +115 -0
- package/src/proofs/proving_request_type.ts +17 -0
- package/src/proofs/recursive_proof.ts +124 -0
- package/src/rollup/avm_proof_data.ts +35 -0
- package/src/rollup/base_or_merge_rollup_public_inputs.ts +146 -0
- package/src/rollup/base_rollup_hints.ts +182 -0
- package/src/rollup/block_merge_rollup.ts +65 -0
- package/src/rollup/block_root_or_block_merge_public_inputs.ts +175 -0
- package/src/rollup/block_root_rollup.ts +362 -0
- package/src/rollup/constant_rollup_data.ts +54 -0
- package/src/rollup/empty_block_root_rollup_inputs.ts +85 -0
- package/src/rollup/index.ts +18 -0
- package/src/rollup/merge_rollup.ts +62 -0
- package/src/rollup/previous_rollup_block_data.ts +54 -0
- package/src/rollup/previous_rollup_data.ts +54 -0
- package/src/rollup/private_base_rollup_inputs.ts +50 -0
- package/src/rollup/private_tube_data.ts +35 -0
- package/src/rollup/public_base_rollup_inputs.ts +59 -0
- package/src/rollup/public_tube_data.ts +35 -0
- package/src/rollup/root_rollup.ts +206 -0
- package/src/rollup/state_diff_hints.ts +126 -0
- package/src/rollup/tube_inputs.ts +70 -0
- package/src/schemas/index.ts +1 -0
- package/src/schemas/schemas.ts +83 -0
- package/src/shared_mutable/index.ts +4 -0
- package/src/shared_mutable/scheduled_delay_change.ts +13 -0
- package/src/shared_mutable/scheduled_value_change.ts +25 -0
- package/src/shared_mutable/shared_mutable_values.ts +92 -0
- package/src/shared_mutable/shared_mutable_values_with_hash.ts +38 -0
- package/src/stats/index.ts +1 -0
- package/src/stats/stats.ts +276 -0
- package/src/tests/factories.ts +1554 -0
- package/src/tests/fixtures.ts +31 -0
- package/src/tests/index.ts +2 -0
- package/src/tests/jest.ts +29 -0
- package/src/tests/mocks.ts +300 -0
- package/src/trees/append_only_tree_snapshot.ts +95 -0
- package/src/trees/index.ts +8 -0
- package/src/trees/merkle_tree_id.ts +42 -0
- package/src/trees/nullifier_leaf.ts +133 -0
- package/src/trees/nullifier_membership_witness.ts +59 -0
- package/src/trees/protocol_contract_leaf.ts +132 -0
- package/src/trees/public_data_leaf.ts +164 -0
- package/src/trees/public_data_witness.ts +103 -0
- package/src/tx/block_header.ts +197 -0
- package/src/tx/call_context.ts +138 -0
- package/src/tx/capsule.ts +46 -0
- package/src/tx/content_commitment.ts +133 -0
- package/src/tx/function_data.ts +102 -0
- package/src/tx/global_variable_builder.ts +28 -0
- package/src/tx/global_variables.ts +193 -0
- package/src/tx/hashed_values.ts +49 -0
- package/src/tx/index.ts +27 -0
- package/src/tx/max_block_number.ts +79 -0
- package/src/tx/partial_state_reference.ts +95 -0
- package/src/tx/private_execution_result.ts +315 -0
- package/src/tx/processed_tx.ts +175 -0
- package/src/tx/public_execution_request.ts +97 -0
- package/src/tx/public_simulation_output.ts +94 -0
- package/src/tx/simulated_tx.ts +179 -0
- package/src/tx/state_reference.ts +93 -0
- package/src/tx/tree_snapshots.ts +96 -0
- package/src/tx/tx.ts +364 -0
- package/src/tx/tx_constant_data.ts +93 -0
- package/src/tx/tx_context.ts +104 -0
- package/src/tx/tx_effect.ts +533 -0
- package/src/tx/tx_execution_request.ts +168 -0
- package/src/tx/tx_hash.ts +67 -0
- package/src/tx/tx_receipt.ts +121 -0
- package/src/tx/tx_request.ts +77 -0
- package/src/tx/validator/empty_validator.ts +7 -0
- package/src/tx/validator/tx_validator.ts +26 -0
- package/src/types/index.ts +1 -0
- package/src/types/shared.ts +45 -0
- package/src/versioning/index.ts +1 -0
- package/src/versioning/versioning.ts +153 -0
- package/src/vks/index.ts +2 -0
- package/src/vks/verification_key.ts +325 -0
- package/src/vks/vk_witness_data.ts +43 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
4
|
+
import type { Fr } from '@aztec/foundation/fields';
|
|
5
|
+
import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
|
|
6
|
+
import { inspect } from 'util';
|
|
7
|
+
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
8
|
+
/**
|
|
9
|
+
* Stores snapshots of all the trees but archive.
|
|
10
|
+
*/
|
|
11
|
+
export declare class TreeSnapshots {
|
|
12
|
+
readonly l1ToL2MessageTree: AppendOnlyTreeSnapshot;
|
|
13
|
+
readonly noteHashTree: AppendOnlyTreeSnapshot;
|
|
14
|
+
readonly nullifierTree: AppendOnlyTreeSnapshot;
|
|
15
|
+
readonly publicDataTree: AppendOnlyTreeSnapshot;
|
|
16
|
+
constructor(l1ToL2MessageTree: AppendOnlyTreeSnapshot, noteHashTree: AppendOnlyTreeSnapshot, nullifierTree: AppendOnlyTreeSnapshot, publicDataTree: AppendOnlyTreeSnapshot);
|
|
17
|
+
getSize(): number;
|
|
18
|
+
static fromBuffer(buffer: Buffer | BufferReader): TreeSnapshots;
|
|
19
|
+
toBuffer(): Buffer;
|
|
20
|
+
static fromFields(fields: Fr[] | FieldReader): TreeSnapshots;
|
|
21
|
+
toFields(): Fr[];
|
|
22
|
+
static empty(): TreeSnapshots;
|
|
23
|
+
isEmpty(): boolean;
|
|
24
|
+
[inspect.custom](): string;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=tree_snapshots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree_snapshots.d.ts","sourceRoot":"","sources":["../../src/tx/tree_snapshots.ts"],"names":[],"mappings":";;;AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E;;GAEG;AACH,qBAAa,aAAa;aAEN,iBAAiB,EAAE,sBAAsB;aACzC,YAAY,EAAE,sBAAsB;aACpC,aAAa,EAAE,sBAAsB;aACrC,cAAc,EAAE,sBAAsB;gBAHtC,iBAAiB,EAAE,sBAAsB,EACzC,YAAY,EAAE,sBAAsB,EACpC,aAAa,EAAE,sBAAsB,EACrC,cAAc,EAAE,sBAAsB;IAGxD,OAAO;IASP,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa;IAU/D,QAAQ;IAKR,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAW5C,QAAQ,IAAI,EAAE,EAAE;IAehB,MAAM,CAAC,KAAK,IAAI,aAAa;IAS7B,OAAO,IAAI,OAAO;IASlB,CAAC,OAAO,CAAC,MAAM,CAAC;CAQjB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { TREE_SNAPSHOTS_LENGTH } from '@aztec/constants';
|
|
2
|
+
import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
3
|
+
import { inspect } from 'util';
|
|
4
|
+
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
5
|
+
/**
|
|
6
|
+
* Stores snapshots of all the trees but archive.
|
|
7
|
+
*/ export class TreeSnapshots {
|
|
8
|
+
l1ToL2MessageTree;
|
|
9
|
+
noteHashTree;
|
|
10
|
+
nullifierTree;
|
|
11
|
+
publicDataTree;
|
|
12
|
+
constructor(l1ToL2MessageTree, noteHashTree, nullifierTree, publicDataTree){
|
|
13
|
+
this.l1ToL2MessageTree = l1ToL2MessageTree;
|
|
14
|
+
this.noteHashTree = noteHashTree;
|
|
15
|
+
this.nullifierTree = nullifierTree;
|
|
16
|
+
this.publicDataTree = publicDataTree;
|
|
17
|
+
}
|
|
18
|
+
getSize() {
|
|
19
|
+
return this.l1ToL2MessageTree.getSize() + this.noteHashTree.getSize() + this.nullifierTree.getSize() + this.publicDataTree.getSize();
|
|
20
|
+
}
|
|
21
|
+
static fromBuffer(buffer) {
|
|
22
|
+
const reader = BufferReader.asReader(buffer);
|
|
23
|
+
return new TreeSnapshots(reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot));
|
|
24
|
+
}
|
|
25
|
+
toBuffer() {
|
|
26
|
+
// Note: The order here must match the order in the HeaderLib solidity library.
|
|
27
|
+
return serializeToBuffer(this.l1ToL2MessageTree, this.noteHashTree, this.nullifierTree, this.publicDataTree);
|
|
28
|
+
}
|
|
29
|
+
static fromFields(fields) {
|
|
30
|
+
const reader = FieldReader.asReader(fields);
|
|
31
|
+
const l1ToL2MessageTree = AppendOnlyTreeSnapshot.fromFields(reader);
|
|
32
|
+
const noteHashTree = AppendOnlyTreeSnapshot.fromFields(reader);
|
|
33
|
+
const nullifierTree = AppendOnlyTreeSnapshot.fromFields(reader);
|
|
34
|
+
const publicDataTree = AppendOnlyTreeSnapshot.fromFields(reader);
|
|
35
|
+
return new TreeSnapshots(l1ToL2MessageTree, noteHashTree, nullifierTree, publicDataTree);
|
|
36
|
+
}
|
|
37
|
+
toFields() {
|
|
38
|
+
const fields = [
|
|
39
|
+
...this.l1ToL2MessageTree.toFields(),
|
|
40
|
+
...this.noteHashTree.toFields(),
|
|
41
|
+
...this.nullifierTree.toFields(),
|
|
42
|
+
...this.publicDataTree.toFields()
|
|
43
|
+
];
|
|
44
|
+
if (fields.length !== TREE_SNAPSHOTS_LENGTH) {
|
|
45
|
+
throw new Error(`Invalid number of fields for TreeSnapshots. Expected ${TREE_SNAPSHOTS_LENGTH}, got ${fields.length}`);
|
|
46
|
+
}
|
|
47
|
+
return fields;
|
|
48
|
+
}
|
|
49
|
+
static empty() {
|
|
50
|
+
return new TreeSnapshots(AppendOnlyTreeSnapshot.zero(), AppendOnlyTreeSnapshot.zero(), AppendOnlyTreeSnapshot.zero(), AppendOnlyTreeSnapshot.zero());
|
|
51
|
+
}
|
|
52
|
+
isEmpty() {
|
|
53
|
+
return this.l1ToL2MessageTree.isZero() && this.noteHashTree.isZero() && this.nullifierTree.isZero() && this.publicDataTree.isZero();
|
|
54
|
+
}
|
|
55
|
+
[inspect.custom]() {
|
|
56
|
+
return `TreeSnapshots {
|
|
57
|
+
l1ToL2MessageTree: ${inspect(this.l1ToL2MessageTree)},
|
|
58
|
+
noteHashTree: ${inspect(this.noteHashTree)},
|
|
59
|
+
nullifierTree: ${inspect(this.nullifierTree)},
|
|
60
|
+
publicDataTree: ${inspect(this.publicDataTree)},
|
|
61
|
+
}`;
|
|
62
|
+
}
|
|
63
|
+
}
|
package/dest/tx/tx.d.ts
ADDED
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
4
|
+
import type { ZodFor } from '@aztec/foundation/schemas';
|
|
5
|
+
import { BufferReader } from '@aztec/foundation/serialize';
|
|
6
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
7
|
+
import type { GasSettings } from '../gas/gas_settings.js';
|
|
8
|
+
import type { GetPublicLogsResponse } from '../interfaces/get_logs_response.js';
|
|
9
|
+
import type { L2LogsSource } from '../interfaces/l2_logs_source.js';
|
|
10
|
+
import type { ScopedLogHash } from '../kernel/log_hash.js';
|
|
11
|
+
import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
|
|
12
|
+
import { ContractClassLog } from '../logs/contract_class_log.js';
|
|
13
|
+
import { Gossipable } from '../p2p/gossipable.js';
|
|
14
|
+
import { ClientIvcProof } from '../proofs/client_ivc_proof.js';
|
|
15
|
+
import type { TxStats } from '../stats/stats.js';
|
|
16
|
+
import { PublicExecutionRequest } from './public_execution_request.js';
|
|
17
|
+
import { TxHash } from './tx_hash.js';
|
|
18
|
+
/**
|
|
19
|
+
* The interface of an L2 transaction.
|
|
20
|
+
*/
|
|
21
|
+
export declare class Tx extends Gossipable {
|
|
22
|
+
/**
|
|
23
|
+
* Output of the private kernel circuit for this tx.
|
|
24
|
+
*/
|
|
25
|
+
readonly data: PrivateKernelTailCircuitPublicInputs;
|
|
26
|
+
/**
|
|
27
|
+
* Proof from the private kernel circuit.
|
|
28
|
+
* TODO(#7368): This client IVC object currently contains various VKs that will eventually be more like static data.
|
|
29
|
+
*
|
|
30
|
+
*/
|
|
31
|
+
readonly clientIvcProof: ClientIvcProof;
|
|
32
|
+
/**
|
|
33
|
+
* Contract class logs generated by the tx.
|
|
34
|
+
*/
|
|
35
|
+
contractClassLogs: ContractClassLog[];
|
|
36
|
+
/**
|
|
37
|
+
* Enqueued public functions from the private circuit to be run by the sequencer.
|
|
38
|
+
*/
|
|
39
|
+
readonly enqueuedPublicFunctionCalls: PublicExecutionRequest[];
|
|
40
|
+
/**
|
|
41
|
+
* Public function call to be run by the sequencer as part of teardown.
|
|
42
|
+
*/
|
|
43
|
+
readonly publicTeardownFunctionCall: PublicExecutionRequest;
|
|
44
|
+
static p2pTopic: string;
|
|
45
|
+
private txHash;
|
|
46
|
+
constructor(
|
|
47
|
+
/**
|
|
48
|
+
* Output of the private kernel circuit for this tx.
|
|
49
|
+
*/
|
|
50
|
+
data: PrivateKernelTailCircuitPublicInputs,
|
|
51
|
+
/**
|
|
52
|
+
* Proof from the private kernel circuit.
|
|
53
|
+
* TODO(#7368): This client IVC object currently contains various VKs that will eventually be more like static data.
|
|
54
|
+
*
|
|
55
|
+
*/
|
|
56
|
+
clientIvcProof: ClientIvcProof,
|
|
57
|
+
/**
|
|
58
|
+
* Contract class logs generated by the tx.
|
|
59
|
+
*/
|
|
60
|
+
contractClassLogs: ContractClassLog[],
|
|
61
|
+
/**
|
|
62
|
+
* Enqueued public functions from the private circuit to be run by the sequencer.
|
|
63
|
+
*/
|
|
64
|
+
enqueuedPublicFunctionCalls: PublicExecutionRequest[],
|
|
65
|
+
/**
|
|
66
|
+
* Public function call to be run by the sequencer as part of teardown.
|
|
67
|
+
*/
|
|
68
|
+
publicTeardownFunctionCall: PublicExecutionRequest);
|
|
69
|
+
p2pMessageIdentifier(): Promise<Buffer32>;
|
|
70
|
+
hasPublicCalls(): boolean;
|
|
71
|
+
getNonRevertiblePublicExecutionRequests(): PublicExecutionRequest[];
|
|
72
|
+
getRevertiblePublicExecutionRequests(): PublicExecutionRequest[];
|
|
73
|
+
getPublicTeardownExecutionRequest(): PublicExecutionRequest | undefined;
|
|
74
|
+
getTotalPublicArgsCount(): number;
|
|
75
|
+
getGasSettings(): GasSettings;
|
|
76
|
+
/**
|
|
77
|
+
* Deserializes the Tx object from a Buffer.
|
|
78
|
+
* @param buffer - Buffer or BufferReader object to deserialize.
|
|
79
|
+
* @returns An instance of Tx.
|
|
80
|
+
*/
|
|
81
|
+
static fromBuffer(buffer: Buffer | BufferReader): Tx;
|
|
82
|
+
static newWithTxData(data: PrivateKernelTailCircuitPublicInputs, publicTeardownExecutionRequest?: PublicExecutionRequest): Tx;
|
|
83
|
+
/**
|
|
84
|
+
* Serializes the Tx object into a Buffer.
|
|
85
|
+
* @returns Buffer representation of the Tx object.
|
|
86
|
+
*/
|
|
87
|
+
toBuffer(): Buffer;
|
|
88
|
+
static get schema(): ZodFor<Tx>;
|
|
89
|
+
static from(fields: FieldsOf<Tx>): Tx;
|
|
90
|
+
/**
|
|
91
|
+
* Gets public logs emitted by this tx.
|
|
92
|
+
* @param logsSource - An instance of `L2LogsSource` which can be used to obtain the logs.
|
|
93
|
+
* @returns The requested logs.
|
|
94
|
+
*/
|
|
95
|
+
getPublicLogs(logsSource: L2LogsSource): Promise<GetPublicLogsResponse>;
|
|
96
|
+
/**
|
|
97
|
+
* Gets either revertible or non revertible contract class logs emitted by this tx.
|
|
98
|
+
* @param revertible - true for revertible only logs, false for non reverible only logs.
|
|
99
|
+
* @returns The requested logs.
|
|
100
|
+
*/
|
|
101
|
+
getSplitContractClassLogs(revertible: boolean, silo?: boolean): Promise<ContractClassLog[]>;
|
|
102
|
+
/**
|
|
103
|
+
* Filters contract class logs emitted by this tx.
|
|
104
|
+
* @param logHashes - logs to keep represented by their hashes.
|
|
105
|
+
* @param silo - whether to silo the logs before returning them.
|
|
106
|
+
* @returns The requested logs.
|
|
107
|
+
*/
|
|
108
|
+
filterContractClassLogs(logHashes: ScopedLogHash[], silo?: boolean): Promise<ContractClassLog[]>;
|
|
109
|
+
/**
|
|
110
|
+
* Computes (if necessary) & return transaction hash.
|
|
111
|
+
* @returns The hash of the public inputs of the private kernel tail circuit.
|
|
112
|
+
*/
|
|
113
|
+
getTxHash(forceRecompute?: boolean): Promise<TxHash>;
|
|
114
|
+
/**
|
|
115
|
+
* Allows setting the hash of the Tx.
|
|
116
|
+
* Use this when you want to skip computing it from the original data.
|
|
117
|
+
* Don't set a Tx hash received from an untrusted source.
|
|
118
|
+
* @param hash - The hash to set.
|
|
119
|
+
*/
|
|
120
|
+
setTxHash(hash: TxHash): void;
|
|
121
|
+
/** Returns stats about this tx. */
|
|
122
|
+
getStats(): Promise<TxStats>;
|
|
123
|
+
getSize(): number;
|
|
124
|
+
/**
|
|
125
|
+
* Estimates the tx size based on its private effects. Note that the actual size of the tx
|
|
126
|
+
* after processing will probably be larger, as public execution would generate more data.
|
|
127
|
+
*/
|
|
128
|
+
getEstimatedPrivateTxEffectsSize(): number;
|
|
129
|
+
/**
|
|
130
|
+
* Convenience function to get a hash out of a tx or a tx-like.
|
|
131
|
+
* @param tx - Tx-like object.
|
|
132
|
+
* @returns - The hash.
|
|
133
|
+
*/
|
|
134
|
+
static getHash(tx: Tx | HasHash): Promise<TxHash>;
|
|
135
|
+
/**
|
|
136
|
+
* Convenience function to get array of hashes for an array of txs.
|
|
137
|
+
* @param txs - The txs to get the hashes from.
|
|
138
|
+
* @returns The corresponding array of hashes.
|
|
139
|
+
*/
|
|
140
|
+
static getHashes(txs: (Tx | HasHash)[]): Promise<TxHash[]>;
|
|
141
|
+
/**
|
|
142
|
+
* Clones a tx, making a deep copy of all fields.
|
|
143
|
+
* @param tx - The transaction to be cloned.
|
|
144
|
+
* @returns The cloned transaction.
|
|
145
|
+
*/
|
|
146
|
+
static clone(tx: Tx): Tx;
|
|
147
|
+
/**
|
|
148
|
+
* Creates a random tx.
|
|
149
|
+
* @param randomProof - Whether to create a random proof - this will be random bytes of the full size.
|
|
150
|
+
* @returns A random tx.
|
|
151
|
+
*/
|
|
152
|
+
static random(randomProof?: boolean): Promise<Tx>;
|
|
153
|
+
/**
|
|
154
|
+
* Filters out logs from functions that are not present in the provided kernel output.
|
|
155
|
+
*
|
|
156
|
+
* The purpose of this is to remove logs that got dropped due to a revert,
|
|
157
|
+
* in which case, we only have the kernel's hashes to go on, as opposed to
|
|
158
|
+
* this grouping by function maintained in this class.
|
|
159
|
+
*
|
|
160
|
+
* The logic therefore is to drop all FunctionLogs if any constituent hash
|
|
161
|
+
* does not appear in the provided hashes: it is impossible for part of a
|
|
162
|
+
* function to revert.
|
|
163
|
+
*
|
|
164
|
+
* @param logHashes the individual log hashes we want to keep
|
|
165
|
+
* @param out the output to put passing logs in, to keep this function abstract
|
|
166
|
+
*/
|
|
167
|
+
filterRevertedLogs(): Promise<void>;
|
|
168
|
+
}
|
|
169
|
+
/** Utility type for an entity that has a hash property for a txhash */
|
|
170
|
+
type HasHash = {
|
|
171
|
+
hash: TxHash;
|
|
172
|
+
};
|
|
173
|
+
export {};
|
|
174
|
+
//# sourceMappingURL=tx.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/tx/tx.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAyD,MAAM,6BAA6B,CAAC;AAClH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,oCAAoC,EAAE,MAAM,wDAAwD,CAAC;AAC9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;GAEG;AACH,qBAAa,EAAG,SAAQ,UAAU;IAM9B;;OAEG;aACa,IAAI,EAAE,oCAAoC;IAC1D;;;;OAIG;aACa,cAAc,EAAE,cAAc;IAC9C;;OAEG;IACI,iBAAiB,EAAE,gBAAgB,EAAE;IAC5C;;OAEG;aACa,2BAA2B,EAAE,sBAAsB,EAAE;IACrE;;OAEG;aACa,0BAA0B,EAAE,sBAAsB;IA1BpE,OAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,MAAM,CAAqB;;IAGjC;;OAEG;IACa,IAAI,EAAE,oCAAoC;IAC1D;;;;OAIG;IACa,cAAc,EAAE,cAAc;IAC9C;;OAEG;IACI,iBAAiB,EAAE,gBAAgB,EAAE;IAC5C;;OAEG;IACa,2BAA2B,EAAE,sBAAsB,EAAE;IACrE;;OAEG;IACa,0BAA0B,EAAE,sBAAsB;IAWrD,oBAAoB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIxD,cAAc;IAId,uCAAuC,IAAI,sBAAsB,EAAE;IAKnE,oCAAoC,IAAI,sBAAsB,EAAE;IAKhE,iCAAiC,IAAI,sBAAsB,GAAG,SAAS;IAIvE,uBAAuB,IAAI,MAAM;IAQjC,cAAc,IAAI,WAAW;IAI7B;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,EAAE;IAWpD,MAAM,CAAC,aAAa,CAClB,IAAI,EAAE,oCAAoC,EAC1C,8BAA8B,CAAC,EAAE,sBAAsB;IAWzD;;;OAGG;IACH,QAAQ;IAUR,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC,CAU9B;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;IAUhC;;;;OAIG;IACU,aAAa,CAAC,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIpF;;;;OAIG;IACG,yBAAyB,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,GAAE,OAAe,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAWxG;;;;;OAKG;IACG,uBAAuB,CAAC,SAAS,EAAE,aAAa,EAAE,EAAE,IAAI,GAAE,OAAe,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAY7G;;;OAGG;IACG,SAAS,CAAC,cAAc,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAUxD;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM;IAItB,mCAAmC;IAC7B,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAwBlC,OAAO;IAUP;;;OAGG;IACH,gCAAgC;IAShC;;;;OAIG;WACU,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD;;;;OAIG;WACU,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIhE;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE;IAsBxB;;;;OAIG;WACU,MAAM,CAAC,WAAW,UAAQ;IAUvC;;;;;;;;;;;;;OAaG;IACU,kBAAkB;CAGhC;AAED,uEAAuE;AACvE,KAAK,OAAO,GAAG;IAAqB,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
package/dest/tx/tx.js
ADDED
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
2
|
+
import { arraySerializedSizeOfNonEmpty } from '@aztec/foundation/collection';
|
|
3
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
+
import { BufferReader, serializeArrayOfBufferableToVector, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
import { siloContractClassLog } from '../hash/hash.js';
|
|
7
|
+
import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
|
|
8
|
+
import { ContractClassLog } from '../logs/contract_class_log.js';
|
|
9
|
+
import { PrivateLog } from '../logs/private_log.js';
|
|
10
|
+
import { Gossipable } from '../p2p/gossipable.js';
|
|
11
|
+
import { TopicType, createTopicString } from '../p2p/topic_type.js';
|
|
12
|
+
import { ClientIvcProof } from '../proofs/client_ivc_proof.js';
|
|
13
|
+
import { PublicExecutionRequest } from './public_execution_request.js';
|
|
14
|
+
import { TxHash } from './tx_hash.js';
|
|
15
|
+
/**
|
|
16
|
+
* The interface of an L2 transaction.
|
|
17
|
+
*/ export class Tx extends Gossipable {
|
|
18
|
+
data;
|
|
19
|
+
clientIvcProof;
|
|
20
|
+
contractClassLogs;
|
|
21
|
+
enqueuedPublicFunctionCalls;
|
|
22
|
+
publicTeardownFunctionCall;
|
|
23
|
+
static p2pTopic;
|
|
24
|
+
// For memoization
|
|
25
|
+
txHash;
|
|
26
|
+
constructor(/**
|
|
27
|
+
* Output of the private kernel circuit for this tx.
|
|
28
|
+
*/ data, /**
|
|
29
|
+
* Proof from the private kernel circuit.
|
|
30
|
+
* TODO(#7368): This client IVC object currently contains various VKs that will eventually be more like static data.
|
|
31
|
+
*
|
|
32
|
+
*/ clientIvcProof, /**
|
|
33
|
+
* Contract class logs generated by the tx.
|
|
34
|
+
*/ contractClassLogs, /**
|
|
35
|
+
* Enqueued public functions from the private circuit to be run by the sequencer.
|
|
36
|
+
*/ enqueuedPublicFunctionCalls, /**
|
|
37
|
+
* Public function call to be run by the sequencer as part of teardown.
|
|
38
|
+
*/ publicTeardownFunctionCall){
|
|
39
|
+
super(), this.data = data, this.clientIvcProof = clientIvcProof, this.contractClassLogs = contractClassLogs, this.enqueuedPublicFunctionCalls = enqueuedPublicFunctionCalls, this.publicTeardownFunctionCall = publicTeardownFunctionCall;
|
|
40
|
+
}
|
|
41
|
+
// Gossipable method
|
|
42
|
+
static{
|
|
43
|
+
this.p2pTopic = createTopicString(TopicType.tx);
|
|
44
|
+
}
|
|
45
|
+
// Gossipable method
|
|
46
|
+
async p2pMessageIdentifier() {
|
|
47
|
+
return new Buffer32((await this.getTxHash()).toBuffer());
|
|
48
|
+
}
|
|
49
|
+
hasPublicCalls() {
|
|
50
|
+
return this.data.numberOfPublicCallRequests() > 0;
|
|
51
|
+
}
|
|
52
|
+
getNonRevertiblePublicExecutionRequests() {
|
|
53
|
+
const numRevertible = this.data.numberOfRevertiblePublicCallRequests();
|
|
54
|
+
return this.enqueuedPublicFunctionCalls.slice(numRevertible);
|
|
55
|
+
}
|
|
56
|
+
getRevertiblePublicExecutionRequests() {
|
|
57
|
+
const numRevertible = this.data.numberOfRevertiblePublicCallRequests();
|
|
58
|
+
return this.enqueuedPublicFunctionCalls.slice(0, numRevertible);
|
|
59
|
+
}
|
|
60
|
+
getPublicTeardownExecutionRequest() {
|
|
61
|
+
return this.publicTeardownFunctionCall.isEmpty() ? undefined : this.publicTeardownFunctionCall;
|
|
62
|
+
}
|
|
63
|
+
getTotalPublicArgsCount() {
|
|
64
|
+
let count = this.enqueuedPublicFunctionCalls.reduce((acc, execRequest)=>acc + execRequest.args.length, 0);
|
|
65
|
+
if (!this.publicTeardownFunctionCall.isEmpty()) {
|
|
66
|
+
count += this.publicTeardownFunctionCall.args.length;
|
|
67
|
+
}
|
|
68
|
+
return count;
|
|
69
|
+
}
|
|
70
|
+
getGasSettings() {
|
|
71
|
+
return this.data.constants.txContext.gasSettings;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Deserializes the Tx object from a Buffer.
|
|
75
|
+
* @param buffer - Buffer or BufferReader object to deserialize.
|
|
76
|
+
* @returns An instance of Tx.
|
|
77
|
+
*/ static fromBuffer(buffer) {
|
|
78
|
+
const reader = BufferReader.asReader(buffer);
|
|
79
|
+
return new Tx(reader.readObject(PrivateKernelTailCircuitPublicInputs), reader.readObject(ClientIvcProof), reader.readVectorUint8Prefix(ContractClassLog), reader.readVectorUint8Prefix(PublicExecutionRequest), reader.readObject(PublicExecutionRequest));
|
|
80
|
+
}
|
|
81
|
+
static newWithTxData(data, publicTeardownExecutionRequest) {
|
|
82
|
+
return new Tx(data, ClientIvcProof.empty(), [], [], publicTeardownExecutionRequest ? publicTeardownExecutionRequest : PublicExecutionRequest.empty());
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Serializes the Tx object into a Buffer.
|
|
86
|
+
* @returns Buffer representation of the Tx object.
|
|
87
|
+
*/ toBuffer() {
|
|
88
|
+
return serializeToBuffer([
|
|
89
|
+
this.data,
|
|
90
|
+
this.clientIvcProof,
|
|
91
|
+
serializeArrayOfBufferableToVector(this.contractClassLogs, 1),
|
|
92
|
+
serializeArrayOfBufferableToVector(this.enqueuedPublicFunctionCalls, 1),
|
|
93
|
+
this.publicTeardownFunctionCall
|
|
94
|
+
]);
|
|
95
|
+
}
|
|
96
|
+
static get schema() {
|
|
97
|
+
return z.object({
|
|
98
|
+
data: PrivateKernelTailCircuitPublicInputs.schema,
|
|
99
|
+
clientIvcProof: ClientIvcProof.schema,
|
|
100
|
+
contractClassLogs: z.array(ContractClassLog.schema),
|
|
101
|
+
enqueuedPublicFunctionCalls: z.array(PublicExecutionRequest.schema),
|
|
102
|
+
publicTeardownFunctionCall: PublicExecutionRequest.schema
|
|
103
|
+
}).transform(Tx.from);
|
|
104
|
+
}
|
|
105
|
+
static from(fields) {
|
|
106
|
+
return new Tx(fields.data, fields.clientIvcProof, fields.contractClassLogs, fields.enqueuedPublicFunctionCalls, fields.publicTeardownFunctionCall);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Gets public logs emitted by this tx.
|
|
110
|
+
* @param logsSource - An instance of `L2LogsSource` which can be used to obtain the logs.
|
|
111
|
+
* @returns The requested logs.
|
|
112
|
+
*/ async getPublicLogs(logsSource) {
|
|
113
|
+
return logsSource.getPublicLogs({
|
|
114
|
+
txHash: await this.getTxHash()
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Gets either revertible or non revertible contract class logs emitted by this tx.
|
|
119
|
+
* @param revertible - true for revertible only logs, false for non reverible only logs.
|
|
120
|
+
* @returns The requested logs.
|
|
121
|
+
*/ async getSplitContractClassLogs(revertible, silo = false) {
|
|
122
|
+
// Should only be called on txs with public calls
|
|
123
|
+
if (!this.data.forPublic) {
|
|
124
|
+
return [];
|
|
125
|
+
}
|
|
126
|
+
const contractClassLogsHashes = revertible ? this.data.forPublic.revertibleAccumulatedData.contractClassLogsHashes.filter((h)=>!h.isEmpty()) : this.data.forPublic.nonRevertibleAccumulatedData.contractClassLogsHashes.filter((h)=>!h.isEmpty());
|
|
127
|
+
return await this.filterContractClassLogs(contractClassLogsHashes, silo);
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Filters contract class logs emitted by this tx.
|
|
131
|
+
* @param logHashes - logs to keep represented by their hashes.
|
|
132
|
+
* @param silo - whether to silo the logs before returning them.
|
|
133
|
+
* @returns The requested logs.
|
|
134
|
+
*/ async filterContractClassLogs(logHashes, silo = false) {
|
|
135
|
+
const contractClassLogs = [];
|
|
136
|
+
for (const log of this.contractClassLogs){
|
|
137
|
+
const hashedLog = await log.hash();
|
|
138
|
+
const logHash = logHashes.find((hash)=>hash.value.equals(hashedLog));
|
|
139
|
+
if (logHash) {
|
|
140
|
+
contractClassLogs.push(silo ? await siloContractClassLog(log, logHash.contractAddress) : log);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return contractClassLogs;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Computes (if necessary) & return transaction hash.
|
|
147
|
+
* @returns The hash of the public inputs of the private kernel tail circuit.
|
|
148
|
+
*/ async getTxHash(forceRecompute = false) {
|
|
149
|
+
if (!this.txHash || forceRecompute) {
|
|
150
|
+
const hash = this.data.forPublic ? await this.data.toPrivateToPublicKernelCircuitPublicInputs().hash() : await this.data.toPrivateToRollupKernelCircuitPublicInputs().hash();
|
|
151
|
+
this.txHash = new TxHash(hash);
|
|
152
|
+
}
|
|
153
|
+
return this.txHash;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Allows setting the hash of the Tx.
|
|
157
|
+
* Use this when you want to skip computing it from the original data.
|
|
158
|
+
* Don't set a Tx hash received from an untrusted source.
|
|
159
|
+
* @param hash - The hash to set.
|
|
160
|
+
*/ setTxHash(hash) {
|
|
161
|
+
this.txHash = hash;
|
|
162
|
+
}
|
|
163
|
+
/** Returns stats about this tx. */ async getStats() {
|
|
164
|
+
return {
|
|
165
|
+
txHash: (await this.getTxHash()).toString(),
|
|
166
|
+
noteHashCount: this.data.getNonEmptyNoteHashes().length,
|
|
167
|
+
nullifierCount: this.data.getNonEmptyNullifiers().length,
|
|
168
|
+
privateLogCount: this.data.getNonEmptyPrivateLogs().length,
|
|
169
|
+
classRegisteredCount: this.data.getNonEmptyContractClassLogsHashes().length,
|
|
170
|
+
contractClassLogSize: this.data.getNonEmptyContractClassLogsLength(),
|
|
171
|
+
proofSize: this.clientIvcProof.clientIvcProofBuffer.length,
|
|
172
|
+
size: this.toBuffer().length,
|
|
173
|
+
feePaymentMethod: // needsSetup? then we pay through a fee payment contract
|
|
174
|
+
this.data.forPublic?.needsSetup ? this.data.getNonRevertiblePublicCallRequests().at(-1).functionSelector.toField().toBigInt() === 0x43417bb1n ? 'fpc_public' : 'fpc_private' : 'fee_juice'
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
getSize() {
|
|
178
|
+
return this.data.getSize() + this.clientIvcProof.clientIvcProofBuffer.length + arraySerializedSizeOfNonEmpty(this.contractClassLogs) + arraySerializedSizeOfNonEmpty(this.enqueuedPublicFunctionCalls) + arraySerializedSizeOfNonEmpty([
|
|
179
|
+
this.publicTeardownFunctionCall
|
|
180
|
+
]);
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Estimates the tx size based on its private effects. Note that the actual size of the tx
|
|
184
|
+
* after processing will probably be larger, as public execution would generate more data.
|
|
185
|
+
*/ getEstimatedPrivateTxEffectsSize() {
|
|
186
|
+
return this.data.getNonEmptyNoteHashes().length * Fr.SIZE_IN_BYTES + this.data.getNonEmptyNullifiers().length * Fr.SIZE_IN_BYTES + this.data.getNonEmptyPrivateLogs().length * PrivateLog.SIZE_IN_BYTES + this.data.getNonEmptyContractClassLogsLength() * Fr.SIZE_IN_BYTES;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Convenience function to get a hash out of a tx or a tx-like.
|
|
190
|
+
* @param tx - Tx-like object.
|
|
191
|
+
* @returns - The hash.
|
|
192
|
+
*/ static async getHash(tx) {
|
|
193
|
+
return hasHash(tx) ? tx.hash : await tx.getTxHash();
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Convenience function to get array of hashes for an array of txs.
|
|
197
|
+
* @param txs - The txs to get the hashes from.
|
|
198
|
+
* @returns The corresponding array of hashes.
|
|
199
|
+
*/ static async getHashes(txs) {
|
|
200
|
+
return await Promise.all(txs.map(Tx.getHash));
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Clones a tx, making a deep copy of all fields.
|
|
204
|
+
* @param tx - The transaction to be cloned.
|
|
205
|
+
* @returns The cloned transaction.
|
|
206
|
+
*/ static clone(tx) {
|
|
207
|
+
const publicInputs = PrivateKernelTailCircuitPublicInputs.fromBuffer(tx.data.toBuffer());
|
|
208
|
+
const clientIvcProof = ClientIvcProof.fromBuffer(tx.clientIvcProof.toBuffer());
|
|
209
|
+
const contractClassLogs = tx.contractClassLogs.map((x)=>ContractClassLog.fromBuffer(x.toBuffer()));
|
|
210
|
+
const enqueuedPublicFunctionCalls = tx.enqueuedPublicFunctionCalls.map((x)=>PublicExecutionRequest.fromBuffer(x.toBuffer()));
|
|
211
|
+
const publicTeardownFunctionCall = PublicExecutionRequest.fromBuffer(tx.publicTeardownFunctionCall.toBuffer());
|
|
212
|
+
const clonedTx = new Tx(publicInputs, clientIvcProof, contractClassLogs, enqueuedPublicFunctionCalls, publicTeardownFunctionCall);
|
|
213
|
+
if (tx.txHash) {
|
|
214
|
+
clonedTx.setTxHash(TxHash.fromBuffer(tx.txHash.toBuffer()));
|
|
215
|
+
}
|
|
216
|
+
return clonedTx;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Creates a random tx.
|
|
220
|
+
* @param randomProof - Whether to create a random proof - this will be random bytes of the full size.
|
|
221
|
+
* @returns A random tx.
|
|
222
|
+
*/ static async random(randomProof = false) {
|
|
223
|
+
return new Tx(PrivateKernelTailCircuitPublicInputs.emptyWithNullifier(), randomProof ? ClientIvcProof.random() : ClientIvcProof.empty(), [
|
|
224
|
+
await ContractClassLog.random()
|
|
225
|
+
], [
|
|
226
|
+
await PublicExecutionRequest.random()
|
|
227
|
+
], await PublicExecutionRequest.random());
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Filters out logs from functions that are not present in the provided kernel output.
|
|
231
|
+
*
|
|
232
|
+
* The purpose of this is to remove logs that got dropped due to a revert,
|
|
233
|
+
* in which case, we only have the kernel's hashes to go on, as opposed to
|
|
234
|
+
* this grouping by function maintained in this class.
|
|
235
|
+
*
|
|
236
|
+
* The logic therefore is to drop all FunctionLogs if any constituent hash
|
|
237
|
+
* does not appear in the provided hashes: it is impossible for part of a
|
|
238
|
+
* function to revert.
|
|
239
|
+
*
|
|
240
|
+
* @param logHashes the individual log hashes we want to keep
|
|
241
|
+
* @param out the output to put passing logs in, to keep this function abstract
|
|
242
|
+
*/ async filterRevertedLogs() {
|
|
243
|
+
this.contractClassLogs = await this.getSplitContractClassLogs(false);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
function hasHash(tx) {
|
|
247
|
+
return tx.hash !== undefined;
|
|
248
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
+
import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
|
|
5
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
|
+
import { BlockHeader } from './block_header.js';
|
|
7
|
+
import { TxContext } from './tx_context.js';
|
|
8
|
+
/**
|
|
9
|
+
* Data that is constant/not modified by neither of the kernels.
|
|
10
|
+
*/
|
|
11
|
+
export declare class TxConstantData {
|
|
12
|
+
/** Header of a block whose state is used during execution (not the block the transaction is included in). */
|
|
13
|
+
historicalHeader: BlockHeader;
|
|
14
|
+
/**
|
|
15
|
+
* Context of the transaction.
|
|
16
|
+
*
|
|
17
|
+
* Note: `chainId` and `version` in txContext are not redundant to the values in
|
|
18
|
+
* self.historical_header.global_variables because they can be different in case of a protocol upgrade. In such
|
|
19
|
+
* a situation we could be using header from a block before the upgrade took place but be using the updated
|
|
20
|
+
* protocol to execute and prove the transaction.
|
|
21
|
+
*/
|
|
22
|
+
txContext: TxContext;
|
|
23
|
+
/**
|
|
24
|
+
* Root of the vk tree for the protocol circuits.
|
|
25
|
+
*/
|
|
26
|
+
vkTreeRoot: Fr;
|
|
27
|
+
/**
|
|
28
|
+
* Root of the tree for the protocol contracts.
|
|
29
|
+
*/
|
|
30
|
+
protocolContractTreeRoot: Fr;
|
|
31
|
+
constructor(
|
|
32
|
+
/** Header of a block whose state is used during execution (not the block the transaction is included in). */
|
|
33
|
+
historicalHeader: BlockHeader,
|
|
34
|
+
/**
|
|
35
|
+
* Context of the transaction.
|
|
36
|
+
*
|
|
37
|
+
* Note: `chainId` and `version` in txContext are not redundant to the values in
|
|
38
|
+
* self.historical_header.global_variables because they can be different in case of a protocol upgrade. In such
|
|
39
|
+
* a situation we could be using header from a block before the upgrade took place but be using the updated
|
|
40
|
+
* protocol to execute and prove the transaction.
|
|
41
|
+
*/
|
|
42
|
+
txContext: TxContext,
|
|
43
|
+
/**
|
|
44
|
+
* Root of the vk tree for the protocol circuits.
|
|
45
|
+
*/
|
|
46
|
+
vkTreeRoot: Fr,
|
|
47
|
+
/**
|
|
48
|
+
* Root of the tree for the protocol contracts.
|
|
49
|
+
*/
|
|
50
|
+
protocolContractTreeRoot: Fr);
|
|
51
|
+
static from(fields: FieldsOf<TxConstantData>): TxConstantData;
|
|
52
|
+
static getFields(fields: FieldsOf<TxConstantData>): readonly [BlockHeader, TxContext, Fr, Fr];
|
|
53
|
+
static fromFields(fields: Fr[] | FieldReader): TxConstantData;
|
|
54
|
+
toFields(): Fr[];
|
|
55
|
+
static fromBuffer(buffer: Buffer | BufferReader): TxConstantData;
|
|
56
|
+
toBuffer(): Buffer;
|
|
57
|
+
static empty(): TxConstantData;
|
|
58
|
+
getSize(): number;
|
|
59
|
+
clone(): TxConstantData;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=tx_constant_data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tx_constant_data.d.ts","sourceRoot":"","sources":["../../src/tx/tx_constant_data.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,cAAc;IAEvB,6GAA6G;IACtG,gBAAgB,EAAE,WAAW;IACpC;;;;;;;OAOG;IACI,SAAS,EAAE,SAAS;IAC3B;;OAEG;IACI,UAAU,EAAE,EAAE;IACrB;;OAEG;IACI,wBAAwB,EAAE,EAAE;;IAlBnC,6GAA6G;IACtG,gBAAgB,EAAE,WAAW;IACpC;;;;;;;OAOG;IACI,SAAS,EAAE,SAAS;IAC3B;;OAEG;IACI,UAAU,EAAE,EAAE;IACrB;;OAEG;IACI,wBAAwB,EAAE,EAAE;IAGrC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC;IAI5C,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC;IAIjD,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,cAAc;IAU7D,QAAQ,IAAI,EAAE,EAAE;IAUhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,cAAc;IAUhE,QAAQ;IAIR,MAAM,CAAC,KAAK;IAIZ,OAAO;IASP,KAAK,IAAI,cAAc;CAGxB"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { TX_CONSTANT_DATA_LENGTH } from '@aztec/constants';
|
|
2
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
3
|
+
import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
|
|
4
|
+
import { BlockHeader } from './block_header.js';
|
|
5
|
+
import { TxContext } from './tx_context.js';
|
|
6
|
+
/**
|
|
7
|
+
* Data that is constant/not modified by neither of the kernels.
|
|
8
|
+
*/ export class TxConstantData {
|
|
9
|
+
historicalHeader;
|
|
10
|
+
txContext;
|
|
11
|
+
vkTreeRoot;
|
|
12
|
+
protocolContractTreeRoot;
|
|
13
|
+
constructor(/** Header of a block whose state is used during execution (not the block the transaction is included in). */ historicalHeader, /**
|
|
14
|
+
* Context of the transaction.
|
|
15
|
+
*
|
|
16
|
+
* Note: `chainId` and `version` in txContext are not redundant to the values in
|
|
17
|
+
* self.historical_header.global_variables because they can be different in case of a protocol upgrade. In such
|
|
18
|
+
* a situation we could be using header from a block before the upgrade took place but be using the updated
|
|
19
|
+
* protocol to execute and prove the transaction.
|
|
20
|
+
*/ txContext, /**
|
|
21
|
+
* Root of the vk tree for the protocol circuits.
|
|
22
|
+
*/ vkTreeRoot, /**
|
|
23
|
+
* Root of the tree for the protocol contracts.
|
|
24
|
+
*/ protocolContractTreeRoot){
|
|
25
|
+
this.historicalHeader = historicalHeader;
|
|
26
|
+
this.txContext = txContext;
|
|
27
|
+
this.vkTreeRoot = vkTreeRoot;
|
|
28
|
+
this.protocolContractTreeRoot = protocolContractTreeRoot;
|
|
29
|
+
}
|
|
30
|
+
static from(fields) {
|
|
31
|
+
return new TxConstantData(...TxConstantData.getFields(fields));
|
|
32
|
+
}
|
|
33
|
+
static getFields(fields) {
|
|
34
|
+
return [
|
|
35
|
+
fields.historicalHeader,
|
|
36
|
+
fields.txContext,
|
|
37
|
+
fields.vkTreeRoot,
|
|
38
|
+
fields.protocolContractTreeRoot
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
static fromFields(fields) {
|
|
42
|
+
const reader = FieldReader.asReader(fields);
|
|
43
|
+
return new TxConstantData(reader.readObject(BlockHeader), reader.readObject(TxContext), reader.readField(), reader.readField());
|
|
44
|
+
}
|
|
45
|
+
toFields() {
|
|
46
|
+
const fields = serializeToFields(...TxConstantData.getFields(this));
|
|
47
|
+
if (fields.length !== TX_CONSTANT_DATA_LENGTH) {
|
|
48
|
+
throw new Error(`Invalid number of fields for TxConstantData. Expected ${TX_CONSTANT_DATA_LENGTH}, got ${fields.length}`);
|
|
49
|
+
}
|
|
50
|
+
return fields;
|
|
51
|
+
}
|
|
52
|
+
static fromBuffer(buffer) {
|
|
53
|
+
const reader = BufferReader.asReader(buffer);
|
|
54
|
+
return new TxConstantData(reader.readObject(BlockHeader), reader.readObject(TxContext), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
|
|
55
|
+
}
|
|
56
|
+
toBuffer() {
|
|
57
|
+
return serializeToBuffer(...TxConstantData.getFields(this));
|
|
58
|
+
}
|
|
59
|
+
static empty() {
|
|
60
|
+
return new TxConstantData(BlockHeader.empty(), TxContext.empty(), Fr.ZERO, Fr.ZERO);
|
|
61
|
+
}
|
|
62
|
+
getSize() {
|
|
63
|
+
return this.historicalHeader.getSize() + this.txContext.getSize() + this.vkTreeRoot.size + this.protocolContractTreeRoot.size;
|
|
64
|
+
}
|
|
65
|
+
clone() {
|
|
66
|
+
return TxConstantData.fromBuffer(this.toBuffer());
|
|
67
|
+
}
|
|
68
|
+
}
|