@aztec/stdlib 0.0.0-test.0
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 +3623 -0
- package/dest/avm/avm.d.ts.map +1 -0
- package/dest/avm/avm.js +249 -0
- package/dest/avm/avm_accumulated_data.d.ts +157 -0
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -0
- package/dest/avm/avm_accumulated_data.js +81 -0
- package/dest/avm/avm_circuit_public_inputs.d.ts +1065 -0
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -0
- package/dest/avm/avm_circuit_public_inputs.js +121 -0
- package/dest/avm/avm_proving_request.d.ts +2580 -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/message_pack.d.ts +4 -0
- package/dest/avm/message_pack.d.ts.map +1 -0
- package/dest/avm/message_pack.js +47 -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 +245 -0
- package/dest/block/l2_block_source.d.ts.map +1 -0
- package/dest/block/l2_block_source.js +21 -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/database-version/index.d.ts +2 -0
- package/dest/database-version/index.d.ts.map +1 -0
- package/dest/database-version/index.js +1 -0
- package/dest/database-version/version_manager.d.ts +99 -0
- package/dest/database-version/version_manager.d.ts.map +1 -0
- package/dest/database-version/version_manager.js +188 -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 +75 -0
- package/dest/hash/hash.d.ts.map +1 -0
- package/dest/hash/hash.js +124 -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 +51 -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 +2956 -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 +162 -0
- package/dest/kernel/private_call_data.d.ts.map +1 -0
- package/dest/kernel/private_call_data.js +162 -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 +115 -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 +186 -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 +125 -0
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -0
- package/dest/kernel/private_to_avm_accumulated_data.js +118 -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 +99 -0
- package/dest/kernel/public_call_request.d.ts.map +1 -0
- package/dest/kernel/public_call_request.js +132 -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 +44 -0
- package/dest/logs/contract_class_log.d.ts.map +1 -0
- package/dest/logs/contract_class_log.js +125 -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 +33 -0
- package/dest/logs/private_log.d.ts.map +1 -0
- package/dest/logs/private_log.js +56 -0
- package/dest/logs/public_log.d.ts +31 -0
- package/dest/logs/public_log.d.ts.map +1 -0
- package/dest/logs/public_log.js +77 -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 +121 -0
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -0
- package/dest/messaging/l2_to_l1_message.js +129 -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 +82 -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 +915 -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 +74 -0
- package/dest/tx/processed_tx.d.ts.map +1 -0
- package/dest/tx/processed_tx.js +66 -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 +120 -0
- package/dest/tx/tree_snapshots.d.ts.map +1 -0
- package/dest/tx/tree_snapshots.js +72 -0
- package/dest/tx/tx.d.ts +174 -0
- package/dest/tx/tx.d.ts.map +1 -0
- package/dest/tx/tx.js +246 -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 +441 -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 +143 -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 +312 -0
- package/src/avm/avm_accumulated_data.ts +159 -0
- package/src/avm/avm_circuit_public_inputs.ts +240 -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/message_pack.ts +48 -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 +160 -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/database-version/README.md +63 -0
- package/src/database-version/index.ts +1 -0
- package/src/database-version/version_manager.ts +207 -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 +133 -0
- package/src/hash/index.ts +2 -0
- package/src/hash/map_slot.ts +18 -0
- package/src/interfaces/archiver.ts +83 -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 +201 -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 +317 -0
- package/src/kernel/private_log_data.ts +107 -0
- package/src/kernel/private_to_avm_accumulated_data.ts +177 -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 +173 -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 +131 -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 +69 -0
- package/src/logs/public_log.ts +95 -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 +150 -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 +92 -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 +1564 -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 +181 -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 +111 -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 +553 -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,160 @@
|
|
|
1
|
+
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
|
+
|
|
3
|
+
import type { EventEmitter } from 'events';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
|
|
6
|
+
import type { L1RollupConstants } from '../epoch-helpers/index.js';
|
|
7
|
+
import type { BlockHeader } from '../tx/block_header.js';
|
|
8
|
+
import type { TxEffect } from '../tx/tx_effect.js';
|
|
9
|
+
import type { TxHash } from '../tx/tx_hash.js';
|
|
10
|
+
import type { TxReceipt } from '../tx/tx_receipt.js';
|
|
11
|
+
import type { InBlock } from './in_block.js';
|
|
12
|
+
import type { L2Block } from './l2_block.js';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Interface of classes allowing for the retrieval of L2 blocks.
|
|
16
|
+
*/
|
|
17
|
+
export interface L2BlockSource {
|
|
18
|
+
/**
|
|
19
|
+
* Method to fetch the rollup contract address at the base-layer.
|
|
20
|
+
* @returns The rollup address.
|
|
21
|
+
*/
|
|
22
|
+
getRollupAddress(): Promise<EthAddress>;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Method to fetch the registry contract address at the base-layer.
|
|
26
|
+
* @returns The registry address.
|
|
27
|
+
*/
|
|
28
|
+
getRegistryAddress(): Promise<EthAddress>;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Gets the number of the latest L2 block processed by the block source implementation.
|
|
32
|
+
* @returns The number of the latest L2 block processed by the block source implementation.
|
|
33
|
+
*/
|
|
34
|
+
getBlockNumber(): Promise<number>;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Gets the number of the latest L2 block proven seen by the block source implementation.
|
|
38
|
+
* @returns The number of the latest L2 block proven seen by the block source implementation.
|
|
39
|
+
*/
|
|
40
|
+
getProvenBlockNumber(): Promise<number>;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Gets an l2 block. If a negative number is passed, the block returned is the most recent.
|
|
44
|
+
* @param number - The block number to return (inclusive).
|
|
45
|
+
* @returns The requested L2 block.
|
|
46
|
+
*/
|
|
47
|
+
getBlock(number: number): Promise<L2Block | undefined>;
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Gets an l2 block header.
|
|
51
|
+
* @param number - The block number to return or 'latest' for the most recent one.
|
|
52
|
+
* @returns The requested L2 block header.
|
|
53
|
+
*/
|
|
54
|
+
getBlockHeader(number: number | 'latest'): Promise<BlockHeader | undefined>;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Gets up to `limit` amount of L2 blocks starting from `from`.
|
|
58
|
+
* @param from - Number of the first block to return (inclusive).
|
|
59
|
+
* @param limit - The maximum number of blocks to return.
|
|
60
|
+
* @param proven - If true, only return blocks that have been proven.
|
|
61
|
+
* @returns The requested L2 blocks.
|
|
62
|
+
*/
|
|
63
|
+
getBlocks(from: number, limit: number, proven?: boolean): Promise<L2Block[]>;
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Gets a tx effect.
|
|
67
|
+
* @param txHash - The hash of a transaction which resulted in the returned tx effect.
|
|
68
|
+
* @returns The requested tx effect.
|
|
69
|
+
*/
|
|
70
|
+
getTxEffect(txHash: TxHash): Promise<InBlock<TxEffect> | undefined>;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Gets a receipt of a settled tx.
|
|
74
|
+
* @param txHash - The hash of a tx we try to get the receipt for.
|
|
75
|
+
* @returns The requested tx receipt (or undefined if not found).
|
|
76
|
+
*/
|
|
77
|
+
getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Returns the current L2 slot number based on the current L1 timestamp.
|
|
81
|
+
*/
|
|
82
|
+
getL2SlotNumber(): Promise<bigint>;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Returns the current L2 epoch number based on the current L1 timestamp.
|
|
86
|
+
*/
|
|
87
|
+
getL2EpochNumber(): Promise<bigint>;
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Returns all blocks for a given epoch.
|
|
91
|
+
* @dev Use this method only with recent epochs, since it walks the block list backwards.
|
|
92
|
+
* @param epochNumber - The epoch number to return blocks for.
|
|
93
|
+
*/
|
|
94
|
+
getBlocksForEpoch(epochNumber: bigint): Promise<L2Block[]>;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Returns whether the given epoch is completed on L1, based on the current L1 and L2 block numbers.
|
|
98
|
+
* @param epochNumber - The epoch number to check.
|
|
99
|
+
*/
|
|
100
|
+
isEpochComplete(epochNumber: bigint): Promise<boolean>;
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Returns the tips of the L2 chain.
|
|
104
|
+
*/
|
|
105
|
+
getL2Tips(): Promise<L2Tips>;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Returns the rollup constants for the current chain.
|
|
109
|
+
*/
|
|
110
|
+
getL1Constants(): Promise<L1RollupConstants>;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* L2BlockSource that emits events upon pending / proven chain changes.
|
|
115
|
+
* see L2BlockSourceEvents for the events emitted.
|
|
116
|
+
*/
|
|
117
|
+
export interface L2BlockSourceEventEmitter extends L2BlockSource, EventEmitter {}
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Identifier for L2 block tags.
|
|
121
|
+
* - latest: Latest block pushed to L1.
|
|
122
|
+
* - proven: Proven block on L1.
|
|
123
|
+
* - finalized: Proven block on a finalized L1 block (not implemented, set to proven for now).
|
|
124
|
+
*/
|
|
125
|
+
export type L2BlockTag = 'latest' | 'proven' | 'finalized';
|
|
126
|
+
|
|
127
|
+
/** Tips of the L2 chain. */
|
|
128
|
+
export type L2Tips = Record<L2BlockTag, L2BlockId>;
|
|
129
|
+
|
|
130
|
+
/** Identifies a block by number and hash. */
|
|
131
|
+
export type L2BlockId = z.infer<typeof L2BlockIdSchema>;
|
|
132
|
+
|
|
133
|
+
// TODO(palla/schemas): This package should know what is the block hash of the genesis block 0.
|
|
134
|
+
const L2BlockIdSchema = z.union([
|
|
135
|
+
z.object({
|
|
136
|
+
number: z.literal(0),
|
|
137
|
+
hash: z.undefined(),
|
|
138
|
+
}),
|
|
139
|
+
z.object({
|
|
140
|
+
number: z.number(),
|
|
141
|
+
hash: z.string(),
|
|
142
|
+
}),
|
|
143
|
+
]);
|
|
144
|
+
|
|
145
|
+
export const L2TipsSchema = z.object({
|
|
146
|
+
latest: L2BlockIdSchema,
|
|
147
|
+
proven: L2BlockIdSchema,
|
|
148
|
+
finalized: L2BlockIdSchema,
|
|
149
|
+
}) satisfies z.ZodType<L2Tips>;
|
|
150
|
+
|
|
151
|
+
export enum L2BlockSourceEvents {
|
|
152
|
+
L2PruneDetected = 'l2PruneDetected',
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export type L2BlockSourceEvent = {
|
|
156
|
+
type: 'l2PruneDetected';
|
|
157
|
+
blockNumber: bigint;
|
|
158
|
+
slotNumber: bigint;
|
|
159
|
+
epochNumber: bigint;
|
|
160
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
|
|
3
|
+
import type { InBlock } from './in_block.js';
|
|
4
|
+
|
|
5
|
+
export interface NullifierWithBlockSource {
|
|
6
|
+
findNullifiersIndexesWithBlock(blockNumber: number, nullifiers: Fr[]): Promise<(InBlock<bigint> | undefined)[]>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { l1ContractAddressesMapping } from '@aztec/ethereum/l1-contract-addresses';
|
|
2
|
+
import { type ConfigMappingsType, numberConfigHelper } from '@aztec/foundation/config';
|
|
3
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
4
|
+
|
|
5
|
+
export { type AllowedElement, type SequencerConfig, SequencerConfigSchema } from '../interfaces/configs.js';
|
|
6
|
+
|
|
7
|
+
export const emptyChainConfig: ChainConfig = {
|
|
8
|
+
l1ChainId: 0,
|
|
9
|
+
l1Contracts: { rollupAddress: EthAddress.ZERO },
|
|
10
|
+
version: 0,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const chainConfigMappings: ConfigMappingsType<ChainConfig> = {
|
|
14
|
+
l1ChainId: {
|
|
15
|
+
env: 'L1_CHAIN_ID',
|
|
16
|
+
parseEnv: (val: string) => +val,
|
|
17
|
+
defaultValue: 31337,
|
|
18
|
+
description: 'The chain ID of the ethereum host.',
|
|
19
|
+
},
|
|
20
|
+
version: {
|
|
21
|
+
env: 'VERSION',
|
|
22
|
+
description: 'The version of the rollup.',
|
|
23
|
+
...numberConfigHelper(1),
|
|
24
|
+
},
|
|
25
|
+
l1Contracts: {
|
|
26
|
+
description: 'The deployed L1 contract addresses',
|
|
27
|
+
nested: l1ContractAddressesMapping,
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/** Chain configuration. */
|
|
32
|
+
export type ChainConfig = {
|
|
33
|
+
/** The chain id of the ethereum host. */
|
|
34
|
+
l1ChainId: number;
|
|
35
|
+
/** The version of the rollup. */
|
|
36
|
+
version: number;
|
|
37
|
+
/** The address to the L1 contracts. */
|
|
38
|
+
l1Contracts: {
|
|
39
|
+
/** The address to rollup */
|
|
40
|
+
rollupAddress: EthAddress;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './config.js';
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { sha256 } from '@aztec/foundation/crypto';
|
|
2
|
+
import { Fr, reduceFn } from '@aztec/foundation/fields';
|
|
3
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
4
|
+
import { numToUInt8 } from '@aztec/foundation/serialize';
|
|
5
|
+
import { MerkleTree, MerkleTreeCalculator } from '@aztec/foundation/trees';
|
|
6
|
+
|
|
7
|
+
import { type ContractArtifact, type FunctionArtifact, FunctionSelector, FunctionType } from '../abi/index.js';
|
|
8
|
+
|
|
9
|
+
const VERSION = 1;
|
|
10
|
+
|
|
11
|
+
// TODO(miranda): Artifact and artifact metadata hashes are currently the only SHAs not truncated by a byte.
|
|
12
|
+
// They are never recalculated in the circuit or L1 contract, but they are input to circuits, so perhaps modding here is preferable?
|
|
13
|
+
// TODO(@spalladino) Reducing sha256 to a field may have security implications. Validate this with crypto team.
|
|
14
|
+
const sha256Fr = reduceFn(sha256, Fr);
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Returns the artifact hash of a given compiled contract artifact.
|
|
18
|
+
*
|
|
19
|
+
* ```
|
|
20
|
+
* private_functions_artifact_leaves = artifact.private_functions.map fn =>
|
|
21
|
+
* sha256(fn.selector, fn.metadata_hash, sha256(fn.bytecode))
|
|
22
|
+
* private_functions_artifact_tree_root = merkleize(private_functions_artifact_leaves)
|
|
23
|
+
*
|
|
24
|
+
* unconstrained_functions_artifact_leaves = artifact.unconstrained_functions.map fn =>
|
|
25
|
+
* sha256(fn.selector, fn.metadata_hash, sha256(fn.bytecode))
|
|
26
|
+
* unconstrained_functions_artifact_tree_root = merkleize(unconstrained_functions_artifact_leaves)
|
|
27
|
+
*
|
|
28
|
+
* version = 1
|
|
29
|
+
* artifact_hash = sha256(
|
|
30
|
+
* version,
|
|
31
|
+
* private_functions_artifact_tree_root,
|
|
32
|
+
* unconstrained_functions_artifact_tree_root,
|
|
33
|
+
* artifact_metadata,
|
|
34
|
+
* )
|
|
35
|
+
* ```
|
|
36
|
+
* @param artifact - Artifact to calculate the hash for.
|
|
37
|
+
*/
|
|
38
|
+
export async function computeArtifactHash(
|
|
39
|
+
artifact: ContractArtifact | { privateFunctionRoot: Fr; unconstrainedFunctionRoot: Fr; metadataHash: Fr },
|
|
40
|
+
): Promise<Fr> {
|
|
41
|
+
if ('privateFunctionRoot' in artifact && 'unconstrainedFunctionRoot' in artifact && 'metadataHash' in artifact) {
|
|
42
|
+
const { privateFunctionRoot, unconstrainedFunctionRoot, metadataHash } = artifact;
|
|
43
|
+
const preimage = [privateFunctionRoot, unconstrainedFunctionRoot, metadataHash].map(x => x.toBuffer());
|
|
44
|
+
return sha256Fr(Buffer.concat([numToUInt8(VERSION), ...preimage]));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
const preimage = await computeArtifactHashPreimage(artifact);
|
|
48
|
+
const artifactHash = computeArtifactHash(preimage);
|
|
49
|
+
getLogger().trace('Computed artifact hash', { artifactHash, ...preimage });
|
|
50
|
+
return artifactHash;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export async function computeArtifactHashPreimage(artifact: ContractArtifact) {
|
|
54
|
+
const privateFunctionRoot = await computeArtifactFunctionTreeRoot(artifact, FunctionType.PRIVATE);
|
|
55
|
+
const unconstrainedFunctionRoot = await computeArtifactFunctionTreeRoot(artifact, FunctionType.UNCONSTRAINED);
|
|
56
|
+
const metadataHash = computeArtifactMetadataHash(artifact);
|
|
57
|
+
return { privateFunctionRoot, unconstrainedFunctionRoot, metadataHash };
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export function computeArtifactMetadataHash(artifact: ContractArtifact) {
|
|
61
|
+
return sha256Fr(Buffer.from(JSON.stringify({ name: artifact.name, outputs: artifact.outputs }), 'utf-8'));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export async function computeArtifactFunctionTreeRoot(artifact: ContractArtifact, fnType: FunctionType) {
|
|
65
|
+
const tree = await computeArtifactFunctionTree(artifact, fnType);
|
|
66
|
+
return tree?.root ? Fr.fromBuffer(tree.root) : Fr.ZERO;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export async function computeArtifactFunctionTree(
|
|
70
|
+
artifact: ContractArtifact,
|
|
71
|
+
fnType: FunctionType,
|
|
72
|
+
): Promise<MerkleTree | undefined> {
|
|
73
|
+
const leaves = await computeFunctionLeaves(artifact, fnType);
|
|
74
|
+
// TODO(@spalladino) Consider implementing a null-object for empty trees
|
|
75
|
+
if (leaves.length === 0) {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
const height = Math.ceil(Math.log2(leaves.length));
|
|
79
|
+
const calculator = await MerkleTreeCalculator.create(height, Buffer.alloc(32), getArtifactMerkleTreeHasher());
|
|
80
|
+
return calculator.computeTree(leaves.map(x => x.toBuffer()));
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
async function computeFunctionLeaves(artifact: ContractArtifact, fnType: FunctionType) {
|
|
84
|
+
const selectors = await Promise.all(
|
|
85
|
+
artifact.functions
|
|
86
|
+
.filter(f => f.functionType === fnType)
|
|
87
|
+
.map(async f => ({ ...f, selector: await FunctionSelector.fromNameAndParameters(f.name, f.parameters) })),
|
|
88
|
+
);
|
|
89
|
+
selectors.sort((a, b) => a.selector.value - b.selector.value);
|
|
90
|
+
return await Promise.all(selectors.map(computeFunctionArtifactHash));
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export async function computeFunctionArtifactHash(
|
|
94
|
+
fn:
|
|
95
|
+
| FunctionArtifact
|
|
96
|
+
| (Pick<FunctionArtifact, 'bytecode'> & { functionMetadataHash: Fr; selector: FunctionSelector }),
|
|
97
|
+
) {
|
|
98
|
+
const selector = 'selector' in fn ? fn.selector : await FunctionSelector.fromNameAndParameters(fn);
|
|
99
|
+
|
|
100
|
+
const bytecodeHash = sha256Fr(fn.bytecode).toBuffer();
|
|
101
|
+
const metadataHash = 'functionMetadataHash' in fn ? fn.functionMetadataHash : computeFunctionMetadataHash(fn);
|
|
102
|
+
return sha256Fr(Buffer.concat([numToUInt8(VERSION), selector.toBuffer(), metadataHash.toBuffer(), bytecodeHash]));
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export function computeFunctionMetadataHash(fn: FunctionArtifact) {
|
|
106
|
+
return sha256Fr(Buffer.from(JSON.stringify(fn.returnTypes), 'utf8'));
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
function getLogger() {
|
|
110
|
+
return createLogger('circuits:artifact_hash');
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export function getArtifactMerkleTreeHasher() {
|
|
114
|
+
return (l: Buffer, r: Buffer) => Promise.resolve(sha256Fr(Buffer.concat([l, r])).toBuffer());
|
|
115
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
import { hexSchemaFor } from '@aztec/foundation/schemas';
|
|
3
|
+
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
|
+
import { bufferToHex } from '@aztec/foundation/string';
|
|
5
|
+
|
|
6
|
+
import { AztecAddress } from '../aztec-address/index.js';
|
|
7
|
+
import { computeAddress, computePreaddress, deriveKeys } from '../keys/index.js';
|
|
8
|
+
import { PublicKeys } from '../keys/public_keys.js';
|
|
9
|
+
import { computePartialAddress } from './contract_address.js';
|
|
10
|
+
import type { PartialAddress } from './partial_address.js';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* A complete address is a combination of an Aztec address, a public key and a partial address.
|
|
14
|
+
*
|
|
15
|
+
* @remarks We have introduced this type because it is common that these 3 values are used together. They are commonly
|
|
16
|
+
* used together because it is the information needed to send user a note.
|
|
17
|
+
* @remarks See the link below for details about how address is computed:
|
|
18
|
+
* https://github.com/AztecProtocol/aztec-packages/blob/master/docs/docs/concepts/foundation/accounts/keys.md#addresses-partial-addresses-and-public-keys
|
|
19
|
+
*/
|
|
20
|
+
export class CompleteAddress {
|
|
21
|
+
private constructor(
|
|
22
|
+
/** Contract address (typically of an account contract) */
|
|
23
|
+
public address: AztecAddress,
|
|
24
|
+
/** User public keys */
|
|
25
|
+
public publicKeys: PublicKeys,
|
|
26
|
+
/** Partial key corresponding to the public key to the address. */
|
|
27
|
+
public partialAddress: PartialAddress,
|
|
28
|
+
) {}
|
|
29
|
+
|
|
30
|
+
static async create(
|
|
31
|
+
address: AztecAddress,
|
|
32
|
+
publicKeys: PublicKeys,
|
|
33
|
+
partialAddress: PartialAddress,
|
|
34
|
+
): Promise<CompleteAddress> {
|
|
35
|
+
const completeAddress = new CompleteAddress(address, publicKeys, partialAddress);
|
|
36
|
+
await completeAddress.validate();
|
|
37
|
+
return completeAddress;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/** Size in bytes of an instance */
|
|
41
|
+
static readonly SIZE_IN_BYTES = 32 * 10;
|
|
42
|
+
|
|
43
|
+
static get schema() {
|
|
44
|
+
return hexSchemaFor(CompleteAddress);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
toJSON() {
|
|
48
|
+
return this.toString();
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
static async random(): Promise<CompleteAddress> {
|
|
52
|
+
return await this.fromSecretKeyAndPartialAddress(Fr.random(), Fr.random());
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
static async fromSecretKeyAndPartialAddress(secretKey: Fr, partialAddress: Fr): Promise<CompleteAddress> {
|
|
56
|
+
const { publicKeys } = await deriveKeys(secretKey);
|
|
57
|
+
const address = await computeAddress(publicKeys, partialAddress);
|
|
58
|
+
|
|
59
|
+
return new CompleteAddress(address, publicKeys, partialAddress);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
async getPreaddress() {
|
|
63
|
+
return computePreaddress(await this.publicKeys.hash(), this.partialAddress);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
static async fromSecretKeyAndInstance(
|
|
67
|
+
secretKey: Fr,
|
|
68
|
+
instance: Parameters<typeof computePartialAddress>[0],
|
|
69
|
+
): Promise<CompleteAddress> {
|
|
70
|
+
const partialAddress = await computePartialAddress(instance);
|
|
71
|
+
return CompleteAddress.fromSecretKeyAndPartialAddress(secretKey, partialAddress);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/** Throws if the address is not correctly derived from the public key and partial address.*/
|
|
75
|
+
public async validate() {
|
|
76
|
+
const expectedAddress = await computeAddress(this.publicKeys, this.partialAddress);
|
|
77
|
+
|
|
78
|
+
if (!expectedAddress.equals(this.address)) {
|
|
79
|
+
throw new Error(
|
|
80
|
+
`Address cannot be derived from public keys and partial address (received ${this.address.toString()}, derived ${expectedAddress.toString()})`,
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Gets a readable string representation of the complete address.
|
|
87
|
+
* @returns A readable string representation of the complete address.
|
|
88
|
+
*/
|
|
89
|
+
public toReadableString(): string {
|
|
90
|
+
return `Address: ${this.address.toString()}\nMaster Nullifier Public Key: ${this.publicKeys.masterNullifierPublicKey.toString()}\nMaster Incoming Viewing Public Key: ${this.publicKeys.masterIncomingViewingPublicKey.toString()}\nMaster Outgoing Viewing Public Key: ${this.publicKeys.masterOutgoingViewingPublicKey.toString()}\nMaster Tagging Public Key: ${this.publicKeys.masterTaggingPublicKey.toString()}\nPartial Address: ${this.partialAddress.toString()}\n`;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Determines if this CompleteAddress instance is equal to the given CompleteAddress instance.
|
|
95
|
+
* Equality is based on the content of their respective buffers.
|
|
96
|
+
*
|
|
97
|
+
* @param other - The CompleteAddress instance to compare against.
|
|
98
|
+
* @returns True if the buffers of both instances are equal, false otherwise.
|
|
99
|
+
*/
|
|
100
|
+
equals(other: CompleteAddress): boolean {
|
|
101
|
+
return (
|
|
102
|
+
this.address.equals(other.address) &&
|
|
103
|
+
this.publicKeys.equals(other.publicKeys) &&
|
|
104
|
+
this.partialAddress.equals(other.partialAddress)
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Converts the CompleteAddress instance into a Buffer.
|
|
110
|
+
* This method should be used when encoding the address for storage, transmission or serialization purposes.
|
|
111
|
+
*
|
|
112
|
+
* @returns A Buffer representation of the CompleteAddress instance.
|
|
113
|
+
*/
|
|
114
|
+
toBuffer(): Buffer {
|
|
115
|
+
return serializeToBuffer([this.address, this.publicKeys, this.partialAddress]);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Creates an CompleteAddress instance from a given buffer or BufferReader.
|
|
120
|
+
* If the input is a Buffer, it wraps it in a BufferReader before processing.
|
|
121
|
+
* Throws an error if the input length is not equal to the expected size.
|
|
122
|
+
*
|
|
123
|
+
* @param buffer - The input buffer or BufferReader containing the address data.
|
|
124
|
+
* @returns - A new CompleteAddress instance with the extracted address data.
|
|
125
|
+
*/
|
|
126
|
+
static fromBuffer(buffer: Buffer | BufferReader): Promise<CompleteAddress> {
|
|
127
|
+
const reader = BufferReader.asReader(buffer);
|
|
128
|
+
const address = reader.readObject(AztecAddress);
|
|
129
|
+
const publicKeys = reader.readObject(PublicKeys);
|
|
130
|
+
const partialAddress = reader.readObject(Fr);
|
|
131
|
+
return CompleteAddress.create(address, publicKeys, partialAddress);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Create a CompleteAddress instance from a hex-encoded string.
|
|
136
|
+
* The input 'address' should be prefixed with '0x' or not, and have exactly 128 hex characters representing the x and y coordinates.
|
|
137
|
+
* Throws an error if the input length is invalid or coordinate values are out of range.
|
|
138
|
+
*
|
|
139
|
+
* @param address - The hex-encoded string representing the complete address.
|
|
140
|
+
* @returns A Point instance.
|
|
141
|
+
*/
|
|
142
|
+
static fromString(address: string): Promise<CompleteAddress> {
|
|
143
|
+
return CompleteAddress.fromBuffer(Buffer.from(address.replace(/^0x/i, ''), 'hex'));
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Convert the CompleteAddress to a hexadecimal string representation, with a "0x" prefix.
|
|
148
|
+
* The resulting string will have a length of 66 characters (including the prefix).
|
|
149
|
+
*
|
|
150
|
+
* @returns A hexadecimal string representation of the CompleteAddress.
|
|
151
|
+
*/
|
|
152
|
+
toString(): string {
|
|
153
|
+
return bufferToHex(this.toBuffer());
|
|
154
|
+
}
|
|
155
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { GeneratorIndex } from '@aztec/constants';
|
|
2
|
+
import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto';
|
|
3
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
+
|
|
5
|
+
import { type FunctionAbi, FunctionSelector, encodeArguments } from '../abi/index.js';
|
|
6
|
+
import type { AztecAddress } from '../aztec-address/index.js';
|
|
7
|
+
import { computeVarArgsHash } from '../hash/hash.js';
|
|
8
|
+
import { computeAddress } from '../keys/index.js';
|
|
9
|
+
import type { ContractInstance } from './interfaces/contract_instance.js';
|
|
10
|
+
|
|
11
|
+
// TODO(@spalladino): Review all generator indices in this file
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Returns the deployment address for a given contract instance as defined on the [Protocol Specs](../../../../docs/docs/protocol-specs/addresses-and-keys/specification.md).
|
|
15
|
+
* ```
|
|
16
|
+
* salted_initialization_hash = pedersen([salt, initialization_hash, deployer], GENERATOR__SALTED_INITIALIZATION_HASH)
|
|
17
|
+
* partial_address = pedersen([contract_class_id, salted_initialization_hash], GENERATOR__CONTRACT_PARTIAL_ADDRESS_V1)
|
|
18
|
+
* address = ((poseidon2Hash([public_keys_hash, partial_address, GENERATOR__CONTRACT_ADDRESS_V1]) * G) + ivpk_m).x <- the x-coordinate of the address point
|
|
19
|
+
* ```
|
|
20
|
+
* @param instance - A contract instance for which to calculate the deployment address.
|
|
21
|
+
*/
|
|
22
|
+
export async function computeContractAddressFromInstance(
|
|
23
|
+
instance:
|
|
24
|
+
| ContractInstance
|
|
25
|
+
| ({ originalContractClassId: Fr; saltedInitializationHash: Fr } & Pick<ContractInstance, 'publicKeys'>),
|
|
26
|
+
): Promise<AztecAddress> {
|
|
27
|
+
const partialAddress = await computePartialAddress(instance);
|
|
28
|
+
return computeAddress(instance.publicKeys, partialAddress);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Computes the partial address defined as the hash of the contract class id and salted initialization hash.
|
|
33
|
+
* @param instance - Contract instance for which to calculate the partial address.
|
|
34
|
+
*/
|
|
35
|
+
export async function computePartialAddress(
|
|
36
|
+
instance:
|
|
37
|
+
| Pick<ContractInstance, 'originalContractClassId' | 'initializationHash' | 'salt' | 'deployer'>
|
|
38
|
+
| { originalContractClassId: Fr; saltedInitializationHash: Fr },
|
|
39
|
+
): Promise<Fr> {
|
|
40
|
+
const saltedInitializationHash =
|
|
41
|
+
'saltedInitializationHash' in instance
|
|
42
|
+
? instance.saltedInitializationHash
|
|
43
|
+
: await computeSaltedInitializationHash(instance);
|
|
44
|
+
|
|
45
|
+
return poseidon2HashWithSeparator(
|
|
46
|
+
[instance.originalContractClassId, saltedInitializationHash],
|
|
47
|
+
GeneratorIndex.PARTIAL_ADDRESS,
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Computes the salted initialization hash for an address, defined as the hash of the salt and initialization hash.
|
|
53
|
+
* @param instance - Contract instance for which to compute the salted initialization hash.
|
|
54
|
+
*/
|
|
55
|
+
export function computeSaltedInitializationHash(
|
|
56
|
+
instance: Pick<ContractInstance, 'initializationHash' | 'salt' | 'deployer'>,
|
|
57
|
+
): Promise<Fr> {
|
|
58
|
+
return poseidon2HashWithSeparator(
|
|
59
|
+
[instance.salt, instance.initializationHash, instance.deployer],
|
|
60
|
+
GeneratorIndex.PARTIAL_ADDRESS,
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Computes the initialization hash for an instance given its constructor function and arguments.
|
|
66
|
+
* @param initFn - Constructor function or empty if no initialization is expected.
|
|
67
|
+
* @param args - Unencoded arguments, will be encoded as fields according to the constructor function abi.
|
|
68
|
+
* @returns The hash, or zero if no initialization function is provided.
|
|
69
|
+
*/
|
|
70
|
+
export async function computeInitializationHash(initFn: FunctionAbi | undefined, args: any[]): Promise<Fr> {
|
|
71
|
+
if (!initFn) {
|
|
72
|
+
return Fr.ZERO;
|
|
73
|
+
}
|
|
74
|
+
const selector = await FunctionSelector.fromNameAndParameters(initFn.name, initFn.parameters);
|
|
75
|
+
const flatArgs = encodeArguments(initFn, args);
|
|
76
|
+
return computeInitializationHashFromEncodedArgs(selector, flatArgs);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Computes the initialization hash for an instance given its constructor function selector and encoded arguments.
|
|
81
|
+
* @param initFn - Constructor function selector.
|
|
82
|
+
* @param args - Encoded arguments.
|
|
83
|
+
* @returns The hash.
|
|
84
|
+
*/
|
|
85
|
+
export async function computeInitializationHashFromEncodedArgs(
|
|
86
|
+
initFn: FunctionSelector,
|
|
87
|
+
encodedArgs: Fr[],
|
|
88
|
+
): Promise<Fr> {
|
|
89
|
+
const argsHash = await computeVarArgsHash(encodedArgs);
|
|
90
|
+
return poseidon2HashWithSeparator([initFn, argsHash], GeneratorIndex.CONSTRUCTOR);
|
|
91
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { PUBLIC_DISPATCH_SELECTOR } from '@aztec/constants';
|
|
2
|
+
import { vkAsFieldsMegaHonk } from '@aztec/foundation/crypto';
|
|
3
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
+
|
|
5
|
+
import { type ContractArtifact, type FunctionArtifact, FunctionSelector, FunctionType } from '../abi/index.js';
|
|
6
|
+
import { hashVK } from '../hash/hash.js';
|
|
7
|
+
import { computeArtifactHash } from './artifact_hash.js';
|
|
8
|
+
import { type ContractClassIdPreimage, computeContractClassIdWithPreimage } from './contract_class_id.js';
|
|
9
|
+
import type { ContractClass, ContractClassWithId, PublicFunction } from './interfaces/index.js';
|
|
10
|
+
|
|
11
|
+
/** Contract artifact including its artifact hash */
|
|
12
|
+
type ContractArtifactWithHash = ContractArtifact & { artifactHash: Fr };
|
|
13
|
+
|
|
14
|
+
const cmpFunctionArtifacts = <T extends { selector: FunctionSelector }>(a: T, b: T) =>
|
|
15
|
+
a.selector.toField().cmp(b.selector.toField());
|
|
16
|
+
|
|
17
|
+
/** Creates a ContractClass from a contract compilation artifact. */
|
|
18
|
+
export async function getContractClassFromArtifact(
|
|
19
|
+
artifact: ContractArtifact | ContractArtifactWithHash,
|
|
20
|
+
): Promise<ContractClassWithId & ContractClassIdPreimage> {
|
|
21
|
+
const artifactHash = 'artifactHash' in artifact ? artifact.artifactHash : await computeArtifactHash(artifact);
|
|
22
|
+
const publicFunctions = artifact.functions.filter(f => f.functionType === FunctionType.PUBLIC);
|
|
23
|
+
const artifactPublicFunctions: ContractClass['publicFunctions'] = await Promise.all(
|
|
24
|
+
publicFunctions.map(async f => ({
|
|
25
|
+
selector: await FunctionSelector.fromNameAndParameters(f.name, f.parameters),
|
|
26
|
+
bytecode: f.bytecode,
|
|
27
|
+
})),
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
artifactPublicFunctions.sort(cmpFunctionArtifacts);
|
|
31
|
+
|
|
32
|
+
let packedBytecode = Buffer.alloc(0);
|
|
33
|
+
let dispatchFunction: PublicFunction | undefined = undefined;
|
|
34
|
+
if (artifactPublicFunctions.length > 0) {
|
|
35
|
+
dispatchFunction = artifactPublicFunctions.find(f =>
|
|
36
|
+
f.selector.equals(FunctionSelector.fromField(new Fr(PUBLIC_DISPATCH_SELECTOR))),
|
|
37
|
+
);
|
|
38
|
+
if (!dispatchFunction) {
|
|
39
|
+
throw new Error(
|
|
40
|
+
`A contract with public functions should define a public_dispatch(Field) function as its public entrypoint. Contract: ${artifact.name}`,
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
packedBytecode = dispatchFunction.bytecode;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const privateFunctions = artifact.functions.filter(f => f.functionType === FunctionType.PRIVATE);
|
|
47
|
+
const privateArtifactFunctions: ContractClass['privateFunctions'] = await Promise.all(
|
|
48
|
+
privateFunctions.map(getContractClassPrivateFunctionFromArtifact),
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
privateArtifactFunctions.sort(cmpFunctionArtifacts);
|
|
52
|
+
|
|
53
|
+
const contractClass: ContractClass = {
|
|
54
|
+
version: 1,
|
|
55
|
+
artifactHash,
|
|
56
|
+
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/8985): Remove public functions.
|
|
57
|
+
publicFunctions: dispatchFunction ? [dispatchFunction] : [],
|
|
58
|
+
packedBytecode,
|
|
59
|
+
privateFunctions: privateArtifactFunctions,
|
|
60
|
+
};
|
|
61
|
+
return { ...contractClass, ...(await computeContractClassIdWithPreimage(contractClass)) };
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export async function getContractClassPrivateFunctionFromArtifact(
|
|
65
|
+
f: FunctionArtifact,
|
|
66
|
+
): Promise<ContractClass['privateFunctions'][number]> {
|
|
67
|
+
return {
|
|
68
|
+
selector: await FunctionSelector.fromNameAndParameters(f.name, f.parameters),
|
|
69
|
+
vkHash: await computeVerificationKeyHash(f),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* For a given private function, computes the hash of its vk.
|
|
75
|
+
*/
|
|
76
|
+
export async function computeVerificationKeyHash(f: FunctionArtifact) {
|
|
77
|
+
if (!f.verificationKey) {
|
|
78
|
+
throw new Error(`Private function ${f.name} must have a verification key`);
|
|
79
|
+
}
|
|
80
|
+
return hashVK(await vkAsFieldsMegaHonk(Buffer.from(f.verificationKey, 'base64')));
|
|
81
|
+
}
|