@aztec/bb.js 3.0.0-nightly.20251015 → 3.0.0-nightly.20251022
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 +12 -78
- package/dest/browser/barretenberg/backend.d.ts +1 -1
- package/dest/browser/barretenberg/backend.d.ts.map +1 -1
- package/dest/browser/barretenberg/backend.js +21 -13
- package/dest/browser/barretenberg/index.d.ts +44 -43
- package/dest/browser/barretenberg/index.d.ts.map +1 -1
- package/dest/browser/barretenberg/index.js +130 -79
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +2 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +4 -4
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +18 -10
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +3 -0
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +51 -13
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
- package/dest/browser/bb_backends/browser/index.d.ts +11 -0
- package/dest/browser/bb_backends/browser/index.d.ts.map +1 -0
- package/dest/browser/bb_backends/browser/index.js +39 -0
- package/dest/browser/bb_backends/index.d.ts +45 -0
- package/dest/browser/bb_backends/index.d.ts.map +1 -0
- package/dest/browser/bb_backends/index.js +15 -0
- package/dest/browser/bb_backends/interface.d.ts +33 -0
- package/dest/browser/bb_backends/interface.d.ts.map +1 -0
- package/dest/browser/bb_backends/interface.js +2 -0
- package/dest/browser/bb_backends/sync_to_async_adapter.d.ts +15 -0
- package/dest/browser/bb_backends/sync_to_async_adapter.d.ts.map +1 -0
- package/dest/browser/bb_backends/sync_to_async_adapter.js +20 -0
- package/dest/browser/bb_backends/wasm.d.ts +56 -0
- package/dest/browser/bb_backends/wasm.d.ts.map +1 -0
- package/dest/browser/bb_backends/wasm.js +90 -0
- package/dest/browser/cbind/generate.js +2 -7
- package/dest/browser/cbind/generated/api_types.d.ts +1167 -0
- package/dest/browser/cbind/generated/api_types.d.ts.map +1 -1
- package/dest/browser/cbind/generated/api_types.js +1609 -47
- package/dest/browser/cbind/generated/async.d.ts +38 -4
- package/dest/browser/cbind/generated/async.d.ts.map +1 -1
- package/dest/browser/cbind/generated/async.js +327 -21
- package/dest/browser/cbind/generated/sync.d.ts +39 -5
- package/dest/browser/cbind/generated/sync.d.ts.map +1 -1
- package/dest/browser/cbind/generated/sync.js +294 -21
- package/dest/browser/cbind/schema_compiler.d.ts +2 -4
- package/dest/browser/cbind/schema_compiler.d.ts.map +1 -1
- package/dest/browser/cbind/schema_compiler.js +74 -178
- package/dest/browser/index.d.ts +2 -2
- package/dest/browser/index.d.ts.map +1 -1
- package/dest/browser/index.js +3 -3
- package/dest/browser/serialize/index.d.ts +0 -1
- package/dest/browser/serialize/index.d.ts.map +1 -1
- package/dest/browser/serialize/index.js +1 -2
- package/dest/browser/serialize/serialize.d.ts +0 -35
- package/dest/browser/serialize/serialize.d.ts.map +1 -1
- package/dest/browser/serialize/serialize.js +1 -68
- package/dest/browser/types/fields.d.ts.map +1 -1
- package/dest/browser/types/fields.js +3 -3
- package/dest/browser/types/index.d.ts +0 -3
- package/dest/browser/types/index.d.ts.map +1 -1
- package/dest/browser/types/index.js +1 -4
- package/dest/node/barretenberg/__snapshots__/pedersen.test.js.snap +2 -2
- package/dest/node/barretenberg/__snapshots__/poseidon.test.js.snap +3 -3
- package/dest/node/barretenberg/backend.d.ts +1 -1
- package/dest/node/barretenberg/backend.d.ts.map +1 -1
- package/dest/node/barretenberg/backend.js +21 -13
- package/dest/node/barretenberg/blake2s.test.js +21 -18
- package/dest/node/barretenberg/index.d.ts +44 -43
- package/dest/node/barretenberg/index.d.ts.map +1 -1
- package/dest/node/barretenberg/index.js +130 -79
- package/dest/node/barretenberg/pedersen.test.js +24 -17
- package/dest/node/barretenberg/poseidon.bench.test.d.ts +2 -0
- package/dest/node/barretenberg/poseidon.bench.test.d.ts.map +1 -0
- package/dest/node/barretenberg/poseidon.bench.test.js +216 -0
- package/dest/node/barretenberg/poseidon.test.js +15 -15
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +2 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +4 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +18 -10
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +3 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +51 -13
- package/dest/node/barretenberg_wasm/index.test.js +11 -10
- package/dest/node/bb_backends/browser/index.d.ts +11 -0
- package/dest/node/bb_backends/browser/index.d.ts.map +1 -0
- package/dest/node/bb_backends/browser/index.js +39 -0
- package/dest/node/bb_backends/index.d.ts +45 -0
- package/dest/node/bb_backends/index.d.ts.map +1 -0
- package/dest/node/bb_backends/index.js +15 -0
- package/dest/node/bb_backends/interface.d.ts +33 -0
- package/dest/node/bb_backends/interface.d.ts.map +1 -0
- package/dest/node/bb_backends/interface.js +2 -0
- package/dest/node/bb_backends/node/index.d.ts +11 -0
- package/dest/node/bb_backends/node/index.d.ts.map +1 -0
- package/dest/node/bb_backends/node/index.js +80 -0
- package/dest/node/bb_backends/node/native_pipe.d.ts +25 -0
- package/dest/node/bb_backends/node/native_pipe.d.ts.map +1 -0
- package/dest/node/bb_backends/node/native_pipe.js +113 -0
- package/dest/node/bb_backends/node/native_shm.d.ts +28 -0
- package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -0
- package/dest/node/bb_backends/node/native_shm.js +150 -0
- package/dest/node/bb_backends/node/native_socket.d.ts +34 -0
- package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -0
- package/dest/node/bb_backends/node/native_socket.js +269 -0
- package/dest/node/bb_backends/node/platform.d.ts +27 -0
- package/dest/node/bb_backends/node/platform.d.ts.map +1 -0
- package/dest/node/bb_backends/node/platform.js +124 -0
- package/dest/node/bb_backends/sync_to_async_adapter.d.ts +15 -0
- package/dest/node/bb_backends/sync_to_async_adapter.d.ts.map +1 -0
- package/dest/node/bb_backends/sync_to_async_adapter.js +20 -0
- package/dest/node/bb_backends/wasm.d.ts +56 -0
- package/dest/node/bb_backends/wasm.d.ts.map +1 -0
- package/dest/node/bb_backends/wasm.js +90 -0
- package/dest/node/cbind/generate.js +2 -7
- package/dest/node/cbind/generated/api_types.d.ts +1167 -0
- package/dest/node/cbind/generated/api_types.d.ts.map +1 -1
- package/dest/node/cbind/generated/api_types.js +1609 -47
- package/dest/node/cbind/generated/async.d.ts +38 -4
- package/dest/node/cbind/generated/async.d.ts.map +1 -1
- package/dest/node/cbind/generated/async.js +327 -21
- package/dest/node/cbind/generated/sync.d.ts +39 -5
- package/dest/node/cbind/generated/sync.d.ts.map +1 -1
- package/dest/node/cbind/generated/sync.js +294 -21
- package/dest/node/cbind/schema_compiler.d.ts +2 -4
- package/dest/node/cbind/schema_compiler.d.ts.map +1 -1
- package/dest/node/cbind/schema_compiler.js +74 -178
- package/dest/node/index.d.ts +2 -2
- package/dest/node/index.d.ts.map +1 -1
- package/dest/node/index.js +3 -3
- package/dest/node/serialize/index.d.ts +0 -1
- package/dest/node/serialize/index.d.ts.map +1 -1
- package/dest/node/serialize/index.js +1 -2
- package/dest/node/serialize/serialize.d.ts +0 -35
- package/dest/node/serialize/serialize.d.ts.map +1 -1
- package/dest/node/serialize/serialize.js +1 -68
- package/dest/node/types/fields.d.ts.map +1 -1
- package/dest/node/types/fields.js +3 -3
- package/dest/node/types/index.d.ts +0 -3
- package/dest/node/types/index.d.ts.map +1 -1
- package/dest/node/types/index.js +1 -4
- package/dest/node-cjs/barretenberg/backend.d.ts +1 -1
- package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/backend.js +20 -12
- package/dest/node-cjs/barretenberg/blake2s.test.js +19 -16
- package/dest/node-cjs/barretenberg/index.d.ts +44 -43
- package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/index.js +136 -84
- package/dest/node-cjs/barretenberg/pedersen.test.js +24 -17
- package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +2 -0
- package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg/poseidon.bench.test.js +218 -0
- package/dest/node-cjs/barretenberg/poseidon.test.js +15 -15
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +2 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +4 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +18 -10
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +3 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +51 -13
- package/dest/node-cjs/barretenberg_wasm/index.test.js +11 -10
- package/dest/node-cjs/bb_backends/browser/index.d.ts +11 -0
- package/dest/node-cjs/bb_backends/browser/index.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/browser/index.js +43 -0
- package/dest/node-cjs/bb_backends/index.d.ts +45 -0
- package/dest/node-cjs/bb_backends/index.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/index.js +18 -0
- package/dest/node-cjs/bb_backends/interface.d.ts +33 -0
- package/dest/node-cjs/bb_backends/interface.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/interface.js +3 -0
- package/dest/node-cjs/bb_backends/node/index.d.ts +11 -0
- package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/node/index.js +84 -0
- package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +25 -0
- package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/node/native_pipe.js +117 -0
- package/dest/node-cjs/bb_backends/node/native_shm.d.ts +28 -0
- package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/node/native_shm.js +154 -0
- package/dest/node-cjs/bb_backends/node/native_socket.d.ts +34 -0
- package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/node/native_socket.js +274 -0
- package/dest/node-cjs/bb_backends/node/platform.d.ts +27 -0
- package/dest/node-cjs/bb_backends/node/platform.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/node/platform.js +131 -0
- package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts +15 -0
- package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/sync_to_async_adapter.js +24 -0
- package/dest/node-cjs/bb_backends/wasm.d.ts +56 -0
- package/dest/node-cjs/bb_backends/wasm.d.ts.map +1 -0
- package/dest/node-cjs/bb_backends/wasm.js +95 -0
- package/dest/node-cjs/cbind/generate.js +1 -6
- package/dest/node-cjs/cbind/generated/api_types.d.ts +1167 -0
- package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/api_types.js +1747 -47
- package/dest/node-cjs/cbind/generated/async.d.ts +38 -4
- package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/async.js +326 -20
- package/dest/node-cjs/cbind/generated/sync.d.ts +39 -5
- package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -1
- package/dest/node-cjs/cbind/generated/sync.js +293 -20
- package/dest/node-cjs/cbind/schema_compiler.d.ts +2 -4
- package/dest/node-cjs/cbind/schema_compiler.d.ts.map +1 -1
- package/dest/node-cjs/cbind/schema_compiler.js +74 -179
- package/dest/node-cjs/index.d.ts +2 -2
- package/dest/node-cjs/index.d.ts.map +1 -1
- package/dest/node-cjs/index.js +3 -3
- package/dest/node-cjs/serialize/index.d.ts +0 -1
- package/dest/node-cjs/serialize/index.d.ts.map +1 -1
- package/dest/node-cjs/serialize/index.js +1 -2
- package/dest/node-cjs/serialize/serialize.d.ts +0 -35
- package/dest/node-cjs/serialize/serialize.d.ts.map +1 -1
- package/dest/node-cjs/serialize/serialize.js +1 -79
- package/dest/node-cjs/types/fields.d.ts.map +1 -1
- package/dest/node-cjs/types/fields.js +2 -2
- package/dest/node-cjs/types/index.d.ts +0 -3
- package/dest/node-cjs/types/index.d.ts.map +1 -1
- package/dest/node-cjs/types/index.js +1 -4
- package/package.json +3 -4
- package/src/barretenberg/__snapshots__/pedersen.test.ts.snap +2 -2
- package/src/barretenberg/__snapshots__/poseidon.test.ts.snap +3 -3
- package/src/barretenberg/backend.ts +37 -32
- package/src/barretenberg/blake2s.test.ts +20 -21
- package/src/barretenberg/index.ts +136 -117
- package/src/barretenberg/pedersen.test.ts +23 -16
- package/src/barretenberg/poseidon.bench.test.ts +267 -0
- package/src/barretenberg/poseidon.test.ts +14 -14
- package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +3 -3
- package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +17 -9
- package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +62 -15
- package/src/barretenberg_wasm/index.test.ts +12 -11
- package/src/bb_backends/browser/index.ts +50 -0
- package/src/bb_backends/index.ts +49 -0
- package/src/bb_backends/interface.ts +35 -0
- package/src/bb_backends/node/index.ts +94 -0
- package/src/bb_backends/node/native_pipe.ts +127 -0
- package/src/bb_backends/node/native_shm.ts +171 -0
- package/src/bb_backends/node/native_socket.ts +312 -0
- package/src/bb_backends/node/platform.ts +151 -0
- package/src/bb_backends/sync_to_async_adapter.ts +21 -0
- package/src/bb_backends/wasm.ts +110 -0
- package/src/cbind/README.md +1 -1
- package/src/cbind/generate.ts +0 -6
- package/src/cbind/schema_compiler.ts +131 -241
- package/src/index.ts +2 -1
- package/src/serialize/index.ts +0 -1
- package/src/serialize/serialize.ts +0 -82
- package/src/types/fields.ts +2 -2
- package/src/types/index.ts +0 -3
- package/dest/browser/barretenberg_api/index.d.ts +0 -109
- package/dest/browser/barretenberg_api/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_api/index.js +0 -699
- package/dest/browser/cbind/generated/native.d.ts +0 -31
- package/dest/browser/cbind/generated/native.d.ts.map +0 -1
- package/dest/browser/cbind/generated/native.js +0 -234
- package/dest/browser/serialize/output_type.d.ts +0 -11
- package/dest/browser/serialize/output_type.d.ts.map +0 -1
- package/dest/browser/serialize/output_type.js +0 -44
- package/dest/browser/types/fixed_size_buffer.d.ts +0 -26
- package/dest/browser/types/fixed_size_buffer.d.ts.map +0 -1
- package/dest/browser/types/fixed_size_buffer.js +0 -51
- package/dest/browser/types/ptr.d.ts +0 -13
- package/dest/browser/types/ptr.d.ts.map +0 -1
- package/dest/browser/types/ptr.js +0 -19
- package/dest/browser/types/raw_buffer.d.ts +0 -3
- package/dest/browser/types/raw_buffer.d.ts.map +0 -1
- package/dest/browser/types/raw_buffer.js +0 -5
- package/dest/node/barretenberg/common.test.d.ts +0 -2
- package/dest/node/barretenberg/common.test.d.ts.map +0 -1
- package/dest/node/barretenberg/common.test.js +0 -20
- package/dest/node/barretenberg_api/index.d.ts +0 -109
- package/dest/node/barretenberg_api/index.d.ts.map +0 -1
- package/dest/node/barretenberg_api/index.js +0 -699
- package/dest/node/bindgen/function_declaration.d.ts +0 -11
- package/dest/node/bindgen/function_declaration.d.ts.map +0 -1
- package/dest/node/bindgen/function_declaration.js +0 -2
- package/dest/node/bindgen/index.d.ts +0 -2
- package/dest/node/bindgen/index.d.ts.map +0 -1
- package/dest/node/bindgen/index.js +0 -15
- package/dest/node/bindgen/mappings.d.ts +0 -4
- package/dest/node/bindgen/mappings.d.ts.map +0 -1
- package/dest/node/bindgen/mappings.js +0 -64
- package/dest/node/bindgen/rust.d.ts +0 -2
- package/dest/node/bindgen/rust.d.ts.map +0 -1
- package/dest/node/bindgen/rust.js +0 -43
- package/dest/node/bindgen/to_camel_case.d.ts +0 -2
- package/dest/node/bindgen/to_camel_case.d.ts.map +0 -1
- package/dest/node/bindgen/to_camel_case.js +0 -11
- package/dest/node/bindgen/typescript.d.ts +0 -2
- package/dest/node/bindgen/typescript.d.ts.map +0 -1
- package/dest/node/bindgen/typescript.js +0 -100
- package/dest/node/cbind/generated/native.d.ts +0 -31
- package/dest/node/cbind/generated/native.d.ts.map +0 -1
- package/dest/node/cbind/generated/native.js +0 -234
- package/dest/node/main.d.ts +0 -13
- package/dest/node/main.d.ts.map +0 -1
- package/dest/node/main.js +0 -459
- package/dest/node/serialize/output_type.d.ts +0 -11
- package/dest/node/serialize/output_type.d.ts.map +0 -1
- package/dest/node/serialize/output_type.js +0 -44
- package/dest/node/types/fixed_size_buffer.d.ts +0 -26
- package/dest/node/types/fixed_size_buffer.d.ts.map +0 -1
- package/dest/node/types/fixed_size_buffer.js +0 -51
- package/dest/node/types/ptr.d.ts +0 -13
- package/dest/node/types/ptr.d.ts.map +0 -1
- package/dest/node/types/ptr.js +0 -19
- package/dest/node/types/raw_buffer.d.ts +0 -3
- package/dest/node/types/raw_buffer.d.ts.map +0 -1
- package/dest/node/types/raw_buffer.js +0 -5
- package/dest/node-cjs/barretenberg/common.test.d.ts +0 -2
- package/dest/node-cjs/barretenberg/common.test.d.ts.map +0 -1
- package/dest/node-cjs/barretenberg/common.test.js +0 -22
- package/dest/node-cjs/barretenberg_api/index.d.ts +0 -109
- package/dest/node-cjs/barretenberg_api/index.d.ts.map +0 -1
- package/dest/node-cjs/barretenberg_api/index.js +0 -704
- package/dest/node-cjs/bindgen/function_declaration.d.ts +0 -11
- package/dest/node-cjs/bindgen/function_declaration.d.ts.map +0 -1
- package/dest/node-cjs/bindgen/function_declaration.js +0 -3
- package/dest/node-cjs/bindgen/index.d.ts +0 -2
- package/dest/node-cjs/bindgen/index.d.ts.map +0 -1
- package/dest/node-cjs/bindgen/index.js +0 -17
- package/dest/node-cjs/bindgen/mappings.d.ts +0 -4
- package/dest/node-cjs/bindgen/mappings.d.ts.map +0 -1
- package/dest/node-cjs/bindgen/mappings.js +0 -69
- package/dest/node-cjs/bindgen/rust.d.ts +0 -2
- package/dest/node-cjs/bindgen/rust.d.ts.map +0 -1
- package/dest/node-cjs/bindgen/rust.js +0 -47
- package/dest/node-cjs/bindgen/to_camel_case.d.ts +0 -2
- package/dest/node-cjs/bindgen/to_camel_case.d.ts.map +0 -1
- package/dest/node-cjs/bindgen/to_camel_case.js +0 -14
- package/dest/node-cjs/bindgen/typescript.d.ts +0 -2
- package/dest/node-cjs/bindgen/typescript.d.ts.map +0 -1
- package/dest/node-cjs/bindgen/typescript.js +0 -104
- package/dest/node-cjs/cbind/generated/native.d.ts +0 -31
- package/dest/node-cjs/cbind/generated/native.d.ts.map +0 -1
- package/dest/node-cjs/cbind/generated/native.js +0 -238
- package/dest/node-cjs/main.d.ts +0 -13
- package/dest/node-cjs/main.d.ts.map +0 -1
- package/dest/node-cjs/main.js +0 -470
- package/dest/node-cjs/serialize/output_type.d.ts +0 -11
- package/dest/node-cjs/serialize/output_type.d.ts.map +0 -1
- package/dest/node-cjs/serialize/output_type.js +0 -51
- package/dest/node-cjs/types/fixed_size_buffer.d.ts +0 -26
- package/dest/node-cjs/types/fixed_size_buffer.d.ts.map +0 -1
- package/dest/node-cjs/types/fixed_size_buffer.js +0 -57
- package/dest/node-cjs/types/ptr.d.ts +0 -13
- package/dest/node-cjs/types/ptr.d.ts.map +0 -1
- package/dest/node-cjs/types/ptr.js +0 -23
- package/dest/node-cjs/types/raw_buffer.d.ts +0 -3
- package/dest/node-cjs/types/raw_buffer.d.ts.map +0 -1
- package/dest/node-cjs/types/raw_buffer.js +0 -9
- package/src/barretenberg/common.test.ts +0 -23
- package/src/barretenberg_api/index.ts +0 -1216
- package/src/bindgen/function_declaration.ts +0 -11
- package/src/bindgen/index.ts +0 -17
- package/src/bindgen/mappings.ts +0 -67
- package/src/bindgen/rust.ts +0 -52
- package/src/bindgen/to_camel_case.ts +0 -10
- package/src/bindgen/typescript.ts +0 -116
- package/src/main.ts +0 -534
- package/src/serialize/output_type.ts +0 -53
- package/src/types/fixed_size_buffer.ts +0 -59
- package/src/types/ptr.ts +0 -20
- package/src/types/raw_buffer.ts +0 -3
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BbApiBase, CircuitComputeVk, CircuitComputeVkResponse, CircuitInfoResponse, CircuitProve, CircuitProveResponse, CircuitStats, CircuitVerify, CircuitVerifyResponse, CircuitWriteSolidityVerifier, CircuitWriteSolidityVerifierResponse, ClientIvcAccumulate, ClientIvcAccumulateResponse, ClientIvcCheckPrecomputedVk, ClientIvcCheckPrecomputedVkResponse, ClientIvcComputeIvcVk, ClientIvcComputeIvcVkResponse, ClientIvcComputeStandaloneVk, ClientIvcComputeStandaloneVkResponse, ClientIvcLoad, ClientIvcLoadResponse, ClientIvcProve, ClientIvcProveResponse, ClientIvcStart, ClientIvcStartResponse, ClientIvcStats, ClientIvcStatsResponse, ClientIvcVerify, ClientIvcVerifyResponse, VkAsFields, VkAsFieldsResponse } from './api_types.js';
|
|
1
|
+
import { IMsgpackBackendAsync } from '../../bb_backends/interface.js';
|
|
2
|
+
import { AesDecrypt, AesDecryptResponse, AesEncrypt, AesEncryptResponse, BbApiBase, Blake2s, Blake2sResponse, Blake2sToField, Blake2sToFieldResponse, Bn254FrSqrt, Bn254FrSqrtResponse, CircuitComputeVk, CircuitComputeVkResponse, CircuitInfoResponse, CircuitProve, CircuitProveResponse, CircuitStats, CircuitVerify, CircuitVerifyResponse, CircuitWriteSolidityVerifier, CircuitWriteSolidityVerifierResponse, ClientIvcAccumulate, ClientIvcAccumulateResponse, ClientIvcCheckPrecomputedVk, ClientIvcCheckPrecomputedVkResponse, ClientIvcComputeIvcVk, ClientIvcComputeIvcVkResponse, ClientIvcComputeStandaloneVk, ClientIvcComputeStandaloneVkResponse, ClientIvcLoad, ClientIvcLoadResponse, ClientIvcProve, ClientIvcProveResponse, ClientIvcStart, ClientIvcStartResponse, ClientIvcStats, ClientIvcStatsResponse, ClientIvcVerify, ClientIvcVerifyResponse, EcdsaSecp256k1ComputePublicKey, EcdsaSecp256k1ComputePublicKeyResponse, EcdsaSecp256k1ConstructSignature, EcdsaSecp256k1ConstructSignatureResponse, EcdsaSecp256k1RecoverPublicKey, EcdsaSecp256k1RecoverPublicKeyResponse, EcdsaSecp256k1VerifySignature, EcdsaSecp256k1VerifySignatureResponse, EcdsaSecp256r1ComputePublicKey, EcdsaSecp256r1ComputePublicKeyResponse, EcdsaSecp256r1ConstructSignature, EcdsaSecp256r1ConstructSignatureResponse, EcdsaSecp256r1RecoverPublicKey, EcdsaSecp256r1RecoverPublicKeyResponse, EcdsaSecp256r1VerifySignature, EcdsaSecp256r1VerifySignatureResponse, GrumpkinAdd, GrumpkinAddResponse, GrumpkinBatchMul, GrumpkinBatchMulResponse, GrumpkinGetRandomFr, GrumpkinGetRandomFrResponse, GrumpkinMul, GrumpkinMulResponse, GrumpkinReduce512, GrumpkinReduce512Response, MegaVkAsFields, MegaVkAsFieldsResponse, PedersenCommit, PedersenCommitResponse, PedersenHash, PedersenHashBuffer, PedersenHashBufferResponse, PedersenHashResponse, Poseidon2Hash, Poseidon2HashAccumulate, Poseidon2HashAccumulateResponse, Poseidon2HashResponse, Poseidon2Permutation, Poseidon2PermutationResponse, SchnorrComputePublicKey, SchnorrComputePublicKeyResponse, SchnorrConstructSignature, SchnorrConstructSignatureResponse, SchnorrVerifySignature, SchnorrVerifySignatureResponse, Secp256k1GetRandomFr, Secp256k1GetRandomFrResponse, Secp256k1Mul, Secp256k1MulResponse, Secp256k1Reduce512, Secp256k1Reduce512Response, Shutdown, ShutdownResponse, SrsInitGrumpkinSrs, SrsInitGrumpkinSrsResponse, SrsInitSrs, SrsInitSrsResponse, VkAsFields, VkAsFieldsResponse } from './api_types.js';
|
|
3
3
|
export declare class AsyncApi implements BbApiBase {
|
|
4
|
-
protected
|
|
5
|
-
constructor(
|
|
4
|
+
protected backend: IMsgpackBackendAsync;
|
|
5
|
+
constructor(backend: IMsgpackBackendAsync);
|
|
6
6
|
circuitProve(command: CircuitProve): Promise<CircuitProveResponse>;
|
|
7
7
|
circuitComputeVk(command: CircuitComputeVk): Promise<CircuitComputeVkResponse>;
|
|
8
8
|
circuitStats(command: CircuitStats): Promise<CircuitInfoResponse>;
|
|
@@ -15,9 +15,43 @@ export declare class AsyncApi implements BbApiBase {
|
|
|
15
15
|
clientIvcProve(command: ClientIvcProve): Promise<ClientIvcProveResponse>;
|
|
16
16
|
clientIvcVerify(command: ClientIvcVerify): Promise<ClientIvcVerifyResponse>;
|
|
17
17
|
vkAsFields(command: VkAsFields): Promise<VkAsFieldsResponse>;
|
|
18
|
+
megaVkAsFields(command: MegaVkAsFields): Promise<MegaVkAsFieldsResponse>;
|
|
18
19
|
circuitWriteSolidityVerifier(command: CircuitWriteSolidityVerifier): Promise<CircuitWriteSolidityVerifierResponse>;
|
|
19
20
|
clientIvcCheckPrecomputedVk(command: ClientIvcCheckPrecomputedVk): Promise<ClientIvcCheckPrecomputedVkResponse>;
|
|
20
21
|
clientIvcStats(command: ClientIvcStats): Promise<ClientIvcStatsResponse>;
|
|
22
|
+
poseidon2Hash(command: Poseidon2Hash): Promise<Poseidon2HashResponse>;
|
|
23
|
+
poseidon2Permutation(command: Poseidon2Permutation): Promise<Poseidon2PermutationResponse>;
|
|
24
|
+
poseidon2HashAccumulate(command: Poseidon2HashAccumulate): Promise<Poseidon2HashAccumulateResponse>;
|
|
25
|
+
pedersenCommit(command: PedersenCommit): Promise<PedersenCommitResponse>;
|
|
26
|
+
pedersenHash(command: PedersenHash): Promise<PedersenHashResponse>;
|
|
27
|
+
pedersenHashBuffer(command: PedersenHashBuffer): Promise<PedersenHashBufferResponse>;
|
|
28
|
+
blake2s(command: Blake2s): Promise<Blake2sResponse>;
|
|
29
|
+
blake2sToField(command: Blake2sToField): Promise<Blake2sToFieldResponse>;
|
|
30
|
+
aesEncrypt(command: AesEncrypt): Promise<AesEncryptResponse>;
|
|
31
|
+
aesDecrypt(command: AesDecrypt): Promise<AesDecryptResponse>;
|
|
32
|
+
grumpkinMul(command: GrumpkinMul): Promise<GrumpkinMulResponse>;
|
|
33
|
+
grumpkinAdd(command: GrumpkinAdd): Promise<GrumpkinAddResponse>;
|
|
34
|
+
grumpkinBatchMul(command: GrumpkinBatchMul): Promise<GrumpkinBatchMulResponse>;
|
|
35
|
+
grumpkinGetRandomFr(command: GrumpkinGetRandomFr): Promise<GrumpkinGetRandomFrResponse>;
|
|
36
|
+
grumpkinReduce512(command: GrumpkinReduce512): Promise<GrumpkinReduce512Response>;
|
|
37
|
+
secp256k1Mul(command: Secp256k1Mul): Promise<Secp256k1MulResponse>;
|
|
38
|
+
secp256k1GetRandomFr(command: Secp256k1GetRandomFr): Promise<Secp256k1GetRandomFrResponse>;
|
|
39
|
+
secp256k1Reduce512(command: Secp256k1Reduce512): Promise<Secp256k1Reduce512Response>;
|
|
40
|
+
bn254FrSqrt(command: Bn254FrSqrt): Promise<Bn254FrSqrtResponse>;
|
|
41
|
+
schnorrComputePublicKey(command: SchnorrComputePublicKey): Promise<SchnorrComputePublicKeyResponse>;
|
|
42
|
+
schnorrConstructSignature(command: SchnorrConstructSignature): Promise<SchnorrConstructSignatureResponse>;
|
|
43
|
+
schnorrVerifySignature(command: SchnorrVerifySignature): Promise<SchnorrVerifySignatureResponse>;
|
|
44
|
+
ecdsaSecp256k1ComputePublicKey(command: EcdsaSecp256k1ComputePublicKey): Promise<EcdsaSecp256k1ComputePublicKeyResponse>;
|
|
45
|
+
ecdsaSecp256r1ComputePublicKey(command: EcdsaSecp256r1ComputePublicKey): Promise<EcdsaSecp256r1ComputePublicKeyResponse>;
|
|
46
|
+
ecdsaSecp256k1ConstructSignature(command: EcdsaSecp256k1ConstructSignature): Promise<EcdsaSecp256k1ConstructSignatureResponse>;
|
|
47
|
+
ecdsaSecp256r1ConstructSignature(command: EcdsaSecp256r1ConstructSignature): Promise<EcdsaSecp256r1ConstructSignatureResponse>;
|
|
48
|
+
ecdsaSecp256k1RecoverPublicKey(command: EcdsaSecp256k1RecoverPublicKey): Promise<EcdsaSecp256k1RecoverPublicKeyResponse>;
|
|
49
|
+
ecdsaSecp256r1RecoverPublicKey(command: EcdsaSecp256r1RecoverPublicKey): Promise<EcdsaSecp256r1RecoverPublicKeyResponse>;
|
|
50
|
+
ecdsaSecp256k1VerifySignature(command: EcdsaSecp256k1VerifySignature): Promise<EcdsaSecp256k1VerifySignatureResponse>;
|
|
51
|
+
ecdsaSecp256r1VerifySignature(command: EcdsaSecp256r1VerifySignature): Promise<EcdsaSecp256r1VerifySignatureResponse>;
|
|
52
|
+
srsInitSrs(command: SrsInitSrs): Promise<SrsInitSrsResponse>;
|
|
53
|
+
srsInitGrumpkinSrs(command: SrsInitGrumpkinSrs): Promise<SrsInitGrumpkinSrsResponse>;
|
|
54
|
+
shutdown(command: Shutdown): Promise<ShutdownResponse>;
|
|
21
55
|
destroy(): Promise<void>;
|
|
22
56
|
}
|
|
23
57
|
//# sourceMappingURL=async.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../../src/cbind/generated/async.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../../src/cbind/generated/async.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
// AUTOGENERATED FILE - DO NOT EDIT
|
|
2
2
|
import { Decoder, Encoder } from 'msgpackr';
|
|
3
|
-
import { fromCircuitComputeVk, fromCircuitProve, fromCircuitStats, fromCircuitVerify, fromCircuitWriteSolidityVerifier, fromClientIvcAccumulate, fromClientIvcCheckPrecomputedVk, fromClientIvcComputeIvcVk, fromClientIvcComputeStandaloneVk, fromClientIvcLoad, fromClientIvcProve, fromClientIvcStart, fromClientIvcStats, fromClientIvcVerify, fromVkAsFields, toCircuitComputeVkResponse, toCircuitInfoResponse, toCircuitProveResponse, toCircuitVerifyResponse, toCircuitWriteSolidityVerifierResponse, toClientIvcAccumulateResponse, toClientIvcCheckPrecomputedVkResponse, toClientIvcComputeIvcVkResponse, toClientIvcComputeStandaloneVkResponse, toClientIvcLoadResponse, toClientIvcProveResponse, toClientIvcStartResponse, toClientIvcStatsResponse, toClientIvcVerifyResponse, toVkAsFieldsResponse } from './api_types.js';
|
|
4
|
-
async function msgpackCall(
|
|
3
|
+
import { fromAesDecrypt, fromAesEncrypt, fromBlake2s, fromBlake2sToField, fromBn254FrSqrt, fromCircuitComputeVk, fromCircuitProve, fromCircuitStats, fromCircuitVerify, fromCircuitWriteSolidityVerifier, fromClientIvcAccumulate, fromClientIvcCheckPrecomputedVk, fromClientIvcComputeIvcVk, fromClientIvcComputeStandaloneVk, fromClientIvcLoad, fromClientIvcProve, fromClientIvcStart, fromClientIvcStats, fromClientIvcVerify, fromEcdsaSecp256k1ComputePublicKey, fromEcdsaSecp256k1ConstructSignature, fromEcdsaSecp256k1RecoverPublicKey, fromEcdsaSecp256k1VerifySignature, fromEcdsaSecp256r1ComputePublicKey, fromEcdsaSecp256r1ConstructSignature, fromEcdsaSecp256r1RecoverPublicKey, fromEcdsaSecp256r1VerifySignature, fromGrumpkinAdd, fromGrumpkinBatchMul, fromGrumpkinGetRandomFr, fromGrumpkinMul, fromGrumpkinReduce512, fromMegaVkAsFields, fromPedersenCommit, fromPedersenHash, fromPedersenHashBuffer, fromPoseidon2Hash, fromPoseidon2HashAccumulate, fromPoseidon2Permutation, fromSchnorrComputePublicKey, fromSchnorrConstructSignature, fromSchnorrVerifySignature, fromSecp256k1GetRandomFr, fromSecp256k1Mul, fromSecp256k1Reduce512, fromShutdown, fromSrsInitGrumpkinSrs, fromSrsInitSrs, fromVkAsFields, toAesDecryptResponse, toAesEncryptResponse, toBlake2sResponse, toBlake2sToFieldResponse, toBn254FrSqrtResponse, toCircuitComputeVkResponse, toCircuitInfoResponse, toCircuitProveResponse, toCircuitVerifyResponse, toCircuitWriteSolidityVerifierResponse, toClientIvcAccumulateResponse, toClientIvcCheckPrecomputedVkResponse, toClientIvcComputeIvcVkResponse, toClientIvcComputeStandaloneVkResponse, toClientIvcLoadResponse, toClientIvcProveResponse, toClientIvcStartResponse, toClientIvcStatsResponse, toClientIvcVerifyResponse, toEcdsaSecp256k1ComputePublicKeyResponse, toEcdsaSecp256k1ConstructSignatureResponse, toEcdsaSecp256k1RecoverPublicKeyResponse, toEcdsaSecp256k1VerifySignatureResponse, toEcdsaSecp256r1ComputePublicKeyResponse, toEcdsaSecp256r1ConstructSignatureResponse, toEcdsaSecp256r1RecoverPublicKeyResponse, toEcdsaSecp256r1VerifySignatureResponse, toGrumpkinAddResponse, toGrumpkinBatchMulResponse, toGrumpkinGetRandomFrResponse, toGrumpkinMulResponse, toGrumpkinReduce512Response, toMegaVkAsFieldsResponse, toPedersenCommitResponse, toPedersenHashBufferResponse, toPedersenHashResponse, toPoseidon2HashAccumulateResponse, toPoseidon2HashResponse, toPoseidon2PermutationResponse, toSchnorrComputePublicKeyResponse, toSchnorrConstructSignatureResponse, toSchnorrVerifySignatureResponse, toSecp256k1GetRandomFrResponse, toSecp256k1MulResponse, toSecp256k1Reduce512Response, toShutdownResponse, toSrsInitGrumpkinSrsResponse, toSrsInitSrsResponse, toVkAsFieldsResponse } from './api_types.js';
|
|
4
|
+
async function msgpackCall(backend, input) { const inputBuffer = new Encoder({ useRecords: false }).pack(input); const encodedResult = await backend.call(inputBuffer); return new Decoder({ useRecords: false }).unpack(encodedResult); }
|
|
5
5
|
export class AsyncApi {
|
|
6
|
-
constructor(
|
|
7
|
-
this.
|
|
6
|
+
constructor(backend) {
|
|
7
|
+
this.backend = backend;
|
|
8
8
|
}
|
|
9
9
|
circuitProve(command) {
|
|
10
10
|
const msgpackCommand = fromCircuitProve(command);
|
|
11
|
-
return msgpackCall(this.
|
|
11
|
+
return msgpackCall(this.backend, [["CircuitProve", msgpackCommand]]).then(([variantName, result]) => {
|
|
12
12
|
if (variantName !== 'CircuitProveResponse') {
|
|
13
13
|
throw new Error(`Expected variant name 'CircuitProveResponse' but got '${variantName}'`);
|
|
14
14
|
}
|
|
@@ -17,7 +17,7 @@ export class AsyncApi {
|
|
|
17
17
|
}
|
|
18
18
|
circuitComputeVk(command) {
|
|
19
19
|
const msgpackCommand = fromCircuitComputeVk(command);
|
|
20
|
-
return msgpackCall(this.
|
|
20
|
+
return msgpackCall(this.backend, [["CircuitComputeVk", msgpackCommand]]).then(([variantName, result]) => {
|
|
21
21
|
if (variantName !== 'CircuitComputeVkResponse') {
|
|
22
22
|
throw new Error(`Expected variant name 'CircuitComputeVkResponse' but got '${variantName}'`);
|
|
23
23
|
}
|
|
@@ -26,7 +26,7 @@ export class AsyncApi {
|
|
|
26
26
|
}
|
|
27
27
|
circuitStats(command) {
|
|
28
28
|
const msgpackCommand = fromCircuitStats(command);
|
|
29
|
-
return msgpackCall(this.
|
|
29
|
+
return msgpackCall(this.backend, [["CircuitStats", msgpackCommand]]).then(([variantName, result]) => {
|
|
30
30
|
if (variantName !== 'CircuitInfoResponse') {
|
|
31
31
|
throw new Error(`Expected variant name 'CircuitInfoResponse' but got '${variantName}'`);
|
|
32
32
|
}
|
|
@@ -35,7 +35,7 @@ export class AsyncApi {
|
|
|
35
35
|
}
|
|
36
36
|
circuitVerify(command) {
|
|
37
37
|
const msgpackCommand = fromCircuitVerify(command);
|
|
38
|
-
return msgpackCall(this.
|
|
38
|
+
return msgpackCall(this.backend, [["CircuitVerify", msgpackCommand]]).then(([variantName, result]) => {
|
|
39
39
|
if (variantName !== 'CircuitVerifyResponse') {
|
|
40
40
|
throw new Error(`Expected variant name 'CircuitVerifyResponse' but got '${variantName}'`);
|
|
41
41
|
}
|
|
@@ -44,7 +44,7 @@ export class AsyncApi {
|
|
|
44
44
|
}
|
|
45
45
|
clientIvcComputeStandaloneVk(command) {
|
|
46
46
|
const msgpackCommand = fromClientIvcComputeStandaloneVk(command);
|
|
47
|
-
return msgpackCall(this.
|
|
47
|
+
return msgpackCall(this.backend, [["ClientIvcComputeStandaloneVk", msgpackCommand]]).then(([variantName, result]) => {
|
|
48
48
|
if (variantName !== 'ClientIvcComputeStandaloneVkResponse') {
|
|
49
49
|
throw new Error(`Expected variant name 'ClientIvcComputeStandaloneVkResponse' but got '${variantName}'`);
|
|
50
50
|
}
|
|
@@ -53,7 +53,7 @@ export class AsyncApi {
|
|
|
53
53
|
}
|
|
54
54
|
clientIvcComputeIvcVk(command) {
|
|
55
55
|
const msgpackCommand = fromClientIvcComputeIvcVk(command);
|
|
56
|
-
return msgpackCall(this.
|
|
56
|
+
return msgpackCall(this.backend, [["ClientIvcComputeIvcVk", msgpackCommand]]).then(([variantName, result]) => {
|
|
57
57
|
if (variantName !== 'ClientIvcComputeIvcVkResponse') {
|
|
58
58
|
throw new Error(`Expected variant name 'ClientIvcComputeIvcVkResponse' but got '${variantName}'`);
|
|
59
59
|
}
|
|
@@ -62,7 +62,7 @@ export class AsyncApi {
|
|
|
62
62
|
}
|
|
63
63
|
clientIvcStart(command) {
|
|
64
64
|
const msgpackCommand = fromClientIvcStart(command);
|
|
65
|
-
return msgpackCall(this.
|
|
65
|
+
return msgpackCall(this.backend, [["ClientIvcStart", msgpackCommand]]).then(([variantName, result]) => {
|
|
66
66
|
if (variantName !== 'ClientIvcStartResponse') {
|
|
67
67
|
throw new Error(`Expected variant name 'ClientIvcStartResponse' but got '${variantName}'`);
|
|
68
68
|
}
|
|
@@ -71,7 +71,7 @@ export class AsyncApi {
|
|
|
71
71
|
}
|
|
72
72
|
clientIvcLoad(command) {
|
|
73
73
|
const msgpackCommand = fromClientIvcLoad(command);
|
|
74
|
-
return msgpackCall(this.
|
|
74
|
+
return msgpackCall(this.backend, [["ClientIvcLoad", msgpackCommand]]).then(([variantName, result]) => {
|
|
75
75
|
if (variantName !== 'ClientIvcLoadResponse') {
|
|
76
76
|
throw new Error(`Expected variant name 'ClientIvcLoadResponse' but got '${variantName}'`);
|
|
77
77
|
}
|
|
@@ -80,7 +80,7 @@ export class AsyncApi {
|
|
|
80
80
|
}
|
|
81
81
|
clientIvcAccumulate(command) {
|
|
82
82
|
const msgpackCommand = fromClientIvcAccumulate(command);
|
|
83
|
-
return msgpackCall(this.
|
|
83
|
+
return msgpackCall(this.backend, [["ClientIvcAccumulate", msgpackCommand]]).then(([variantName, result]) => {
|
|
84
84
|
if (variantName !== 'ClientIvcAccumulateResponse') {
|
|
85
85
|
throw new Error(`Expected variant name 'ClientIvcAccumulateResponse' but got '${variantName}'`);
|
|
86
86
|
}
|
|
@@ -89,7 +89,7 @@ export class AsyncApi {
|
|
|
89
89
|
}
|
|
90
90
|
clientIvcProve(command) {
|
|
91
91
|
const msgpackCommand = fromClientIvcProve(command);
|
|
92
|
-
return msgpackCall(this.
|
|
92
|
+
return msgpackCall(this.backend, [["ClientIvcProve", msgpackCommand]]).then(([variantName, result]) => {
|
|
93
93
|
if (variantName !== 'ClientIvcProveResponse') {
|
|
94
94
|
throw new Error(`Expected variant name 'ClientIvcProveResponse' but got '${variantName}'`);
|
|
95
95
|
}
|
|
@@ -98,7 +98,7 @@ export class AsyncApi {
|
|
|
98
98
|
}
|
|
99
99
|
clientIvcVerify(command) {
|
|
100
100
|
const msgpackCommand = fromClientIvcVerify(command);
|
|
101
|
-
return msgpackCall(this.
|
|
101
|
+
return msgpackCall(this.backend, [["ClientIvcVerify", msgpackCommand]]).then(([variantName, result]) => {
|
|
102
102
|
if (variantName !== 'ClientIvcVerifyResponse') {
|
|
103
103
|
throw new Error(`Expected variant name 'ClientIvcVerifyResponse' but got '${variantName}'`);
|
|
104
104
|
}
|
|
@@ -107,16 +107,25 @@ export class AsyncApi {
|
|
|
107
107
|
}
|
|
108
108
|
vkAsFields(command) {
|
|
109
109
|
const msgpackCommand = fromVkAsFields(command);
|
|
110
|
-
return msgpackCall(this.
|
|
110
|
+
return msgpackCall(this.backend, [["VkAsFields", msgpackCommand]]).then(([variantName, result]) => {
|
|
111
111
|
if (variantName !== 'VkAsFieldsResponse') {
|
|
112
112
|
throw new Error(`Expected variant name 'VkAsFieldsResponse' but got '${variantName}'`);
|
|
113
113
|
}
|
|
114
114
|
return toVkAsFieldsResponse(result);
|
|
115
115
|
});
|
|
116
116
|
}
|
|
117
|
+
megaVkAsFields(command) {
|
|
118
|
+
const msgpackCommand = fromMegaVkAsFields(command);
|
|
119
|
+
return msgpackCall(this.backend, [["MegaVkAsFields", msgpackCommand]]).then(([variantName, result]) => {
|
|
120
|
+
if (variantName !== 'MegaVkAsFieldsResponse') {
|
|
121
|
+
throw new Error(`Expected variant name 'MegaVkAsFieldsResponse' but got '${variantName}'`);
|
|
122
|
+
}
|
|
123
|
+
return toMegaVkAsFieldsResponse(result);
|
|
124
|
+
});
|
|
125
|
+
}
|
|
117
126
|
circuitWriteSolidityVerifier(command) {
|
|
118
127
|
const msgpackCommand = fromCircuitWriteSolidityVerifier(command);
|
|
119
|
-
return msgpackCall(this.
|
|
128
|
+
return msgpackCall(this.backend, [["CircuitWriteSolidityVerifier", msgpackCommand]]).then(([variantName, result]) => {
|
|
120
129
|
if (variantName !== 'CircuitWriteSolidityVerifierResponse') {
|
|
121
130
|
throw new Error(`Expected variant name 'CircuitWriteSolidityVerifierResponse' but got '${variantName}'`);
|
|
122
131
|
}
|
|
@@ -125,7 +134,7 @@ export class AsyncApi {
|
|
|
125
134
|
}
|
|
126
135
|
clientIvcCheckPrecomputedVk(command) {
|
|
127
136
|
const msgpackCommand = fromClientIvcCheckPrecomputedVk(command);
|
|
128
|
-
return msgpackCall(this.
|
|
137
|
+
return msgpackCall(this.backend, [["ClientIvcCheckPrecomputedVk", msgpackCommand]]).then(([variantName, result]) => {
|
|
129
138
|
if (variantName !== 'ClientIvcCheckPrecomputedVkResponse') {
|
|
130
139
|
throw new Error(`Expected variant name 'ClientIvcCheckPrecomputedVkResponse' but got '${variantName}'`);
|
|
131
140
|
}
|
|
@@ -134,15 +143,312 @@ export class AsyncApi {
|
|
|
134
143
|
}
|
|
135
144
|
clientIvcStats(command) {
|
|
136
145
|
const msgpackCommand = fromClientIvcStats(command);
|
|
137
|
-
return msgpackCall(this.
|
|
146
|
+
return msgpackCall(this.backend, [["ClientIvcStats", msgpackCommand]]).then(([variantName, result]) => {
|
|
138
147
|
if (variantName !== 'ClientIvcStatsResponse') {
|
|
139
148
|
throw new Error(`Expected variant name 'ClientIvcStatsResponse' but got '${variantName}'`);
|
|
140
149
|
}
|
|
141
150
|
return toClientIvcStatsResponse(result);
|
|
142
151
|
});
|
|
143
152
|
}
|
|
153
|
+
poseidon2Hash(command) {
|
|
154
|
+
const msgpackCommand = fromPoseidon2Hash(command);
|
|
155
|
+
return msgpackCall(this.backend, [["Poseidon2Hash", msgpackCommand]]).then(([variantName, result]) => {
|
|
156
|
+
if (variantName !== 'Poseidon2HashResponse') {
|
|
157
|
+
throw new Error(`Expected variant name 'Poseidon2HashResponse' but got '${variantName}'`);
|
|
158
|
+
}
|
|
159
|
+
return toPoseidon2HashResponse(result);
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
poseidon2Permutation(command) {
|
|
163
|
+
const msgpackCommand = fromPoseidon2Permutation(command);
|
|
164
|
+
return msgpackCall(this.backend, [["Poseidon2Permutation", msgpackCommand]]).then(([variantName, result]) => {
|
|
165
|
+
if (variantName !== 'Poseidon2PermutationResponse') {
|
|
166
|
+
throw new Error(`Expected variant name 'Poseidon2PermutationResponse' but got '${variantName}'`);
|
|
167
|
+
}
|
|
168
|
+
return toPoseidon2PermutationResponse(result);
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
poseidon2HashAccumulate(command) {
|
|
172
|
+
const msgpackCommand = fromPoseidon2HashAccumulate(command);
|
|
173
|
+
return msgpackCall(this.backend, [["Poseidon2HashAccumulate", msgpackCommand]]).then(([variantName, result]) => {
|
|
174
|
+
if (variantName !== 'Poseidon2HashAccumulateResponse') {
|
|
175
|
+
throw new Error(`Expected variant name 'Poseidon2HashAccumulateResponse' but got '${variantName}'`);
|
|
176
|
+
}
|
|
177
|
+
return toPoseidon2HashAccumulateResponse(result);
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
pedersenCommit(command) {
|
|
181
|
+
const msgpackCommand = fromPedersenCommit(command);
|
|
182
|
+
return msgpackCall(this.backend, [["PedersenCommit", msgpackCommand]]).then(([variantName, result]) => {
|
|
183
|
+
if (variantName !== 'PedersenCommitResponse') {
|
|
184
|
+
throw new Error(`Expected variant name 'PedersenCommitResponse' but got '${variantName}'`);
|
|
185
|
+
}
|
|
186
|
+
return toPedersenCommitResponse(result);
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
pedersenHash(command) {
|
|
190
|
+
const msgpackCommand = fromPedersenHash(command);
|
|
191
|
+
return msgpackCall(this.backend, [["PedersenHash", msgpackCommand]]).then(([variantName, result]) => {
|
|
192
|
+
if (variantName !== 'PedersenHashResponse') {
|
|
193
|
+
throw new Error(`Expected variant name 'PedersenHashResponse' but got '${variantName}'`);
|
|
194
|
+
}
|
|
195
|
+
return toPedersenHashResponse(result);
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
pedersenHashBuffer(command) {
|
|
199
|
+
const msgpackCommand = fromPedersenHashBuffer(command);
|
|
200
|
+
return msgpackCall(this.backend, [["PedersenHashBuffer", msgpackCommand]]).then(([variantName, result]) => {
|
|
201
|
+
if (variantName !== 'PedersenHashBufferResponse') {
|
|
202
|
+
throw new Error(`Expected variant name 'PedersenHashBufferResponse' but got '${variantName}'`);
|
|
203
|
+
}
|
|
204
|
+
return toPedersenHashBufferResponse(result);
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
blake2s(command) {
|
|
208
|
+
const msgpackCommand = fromBlake2s(command);
|
|
209
|
+
return msgpackCall(this.backend, [["Blake2s", msgpackCommand]]).then(([variantName, result]) => {
|
|
210
|
+
if (variantName !== 'Blake2sResponse') {
|
|
211
|
+
throw new Error(`Expected variant name 'Blake2sResponse' but got '${variantName}'`);
|
|
212
|
+
}
|
|
213
|
+
return toBlake2sResponse(result);
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
blake2sToField(command) {
|
|
217
|
+
const msgpackCommand = fromBlake2sToField(command);
|
|
218
|
+
return msgpackCall(this.backend, [["Blake2sToField", msgpackCommand]]).then(([variantName, result]) => {
|
|
219
|
+
if (variantName !== 'Blake2sToFieldResponse') {
|
|
220
|
+
throw new Error(`Expected variant name 'Blake2sToFieldResponse' but got '${variantName}'`);
|
|
221
|
+
}
|
|
222
|
+
return toBlake2sToFieldResponse(result);
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
aesEncrypt(command) {
|
|
226
|
+
const msgpackCommand = fromAesEncrypt(command);
|
|
227
|
+
return msgpackCall(this.backend, [["AesEncrypt", msgpackCommand]]).then(([variantName, result]) => {
|
|
228
|
+
if (variantName !== 'AesEncryptResponse') {
|
|
229
|
+
throw new Error(`Expected variant name 'AesEncryptResponse' but got '${variantName}'`);
|
|
230
|
+
}
|
|
231
|
+
return toAesEncryptResponse(result);
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
aesDecrypt(command) {
|
|
235
|
+
const msgpackCommand = fromAesDecrypt(command);
|
|
236
|
+
return msgpackCall(this.backend, [["AesDecrypt", msgpackCommand]]).then(([variantName, result]) => {
|
|
237
|
+
if (variantName !== 'AesDecryptResponse') {
|
|
238
|
+
throw new Error(`Expected variant name 'AesDecryptResponse' but got '${variantName}'`);
|
|
239
|
+
}
|
|
240
|
+
return toAesDecryptResponse(result);
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
grumpkinMul(command) {
|
|
244
|
+
const msgpackCommand = fromGrumpkinMul(command);
|
|
245
|
+
return msgpackCall(this.backend, [["GrumpkinMul", msgpackCommand]]).then(([variantName, result]) => {
|
|
246
|
+
if (variantName !== 'GrumpkinMulResponse') {
|
|
247
|
+
throw new Error(`Expected variant name 'GrumpkinMulResponse' but got '${variantName}'`);
|
|
248
|
+
}
|
|
249
|
+
return toGrumpkinMulResponse(result);
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
grumpkinAdd(command) {
|
|
253
|
+
const msgpackCommand = fromGrumpkinAdd(command);
|
|
254
|
+
return msgpackCall(this.backend, [["GrumpkinAdd", msgpackCommand]]).then(([variantName, result]) => {
|
|
255
|
+
if (variantName !== 'GrumpkinAddResponse') {
|
|
256
|
+
throw new Error(`Expected variant name 'GrumpkinAddResponse' but got '${variantName}'`);
|
|
257
|
+
}
|
|
258
|
+
return toGrumpkinAddResponse(result);
|
|
259
|
+
});
|
|
260
|
+
}
|
|
261
|
+
grumpkinBatchMul(command) {
|
|
262
|
+
const msgpackCommand = fromGrumpkinBatchMul(command);
|
|
263
|
+
return msgpackCall(this.backend, [["GrumpkinBatchMul", msgpackCommand]]).then(([variantName, result]) => {
|
|
264
|
+
if (variantName !== 'GrumpkinBatchMulResponse') {
|
|
265
|
+
throw new Error(`Expected variant name 'GrumpkinBatchMulResponse' but got '${variantName}'`);
|
|
266
|
+
}
|
|
267
|
+
return toGrumpkinBatchMulResponse(result);
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
grumpkinGetRandomFr(command) {
|
|
271
|
+
const msgpackCommand = fromGrumpkinGetRandomFr(command);
|
|
272
|
+
return msgpackCall(this.backend, [["GrumpkinGetRandomFr", msgpackCommand]]).then(([variantName, result]) => {
|
|
273
|
+
if (variantName !== 'GrumpkinGetRandomFrResponse') {
|
|
274
|
+
throw new Error(`Expected variant name 'GrumpkinGetRandomFrResponse' but got '${variantName}'`);
|
|
275
|
+
}
|
|
276
|
+
return toGrumpkinGetRandomFrResponse(result);
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
grumpkinReduce512(command) {
|
|
280
|
+
const msgpackCommand = fromGrumpkinReduce512(command);
|
|
281
|
+
return msgpackCall(this.backend, [["GrumpkinReduce512", msgpackCommand]]).then(([variantName, result]) => {
|
|
282
|
+
if (variantName !== 'GrumpkinReduce512Response') {
|
|
283
|
+
throw new Error(`Expected variant name 'GrumpkinReduce512Response' but got '${variantName}'`);
|
|
284
|
+
}
|
|
285
|
+
return toGrumpkinReduce512Response(result);
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
secp256k1Mul(command) {
|
|
289
|
+
const msgpackCommand = fromSecp256k1Mul(command);
|
|
290
|
+
return msgpackCall(this.backend, [["Secp256k1Mul", msgpackCommand]]).then(([variantName, result]) => {
|
|
291
|
+
if (variantName !== 'Secp256k1MulResponse') {
|
|
292
|
+
throw new Error(`Expected variant name 'Secp256k1MulResponse' but got '${variantName}'`);
|
|
293
|
+
}
|
|
294
|
+
return toSecp256k1MulResponse(result);
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
secp256k1GetRandomFr(command) {
|
|
298
|
+
const msgpackCommand = fromSecp256k1GetRandomFr(command);
|
|
299
|
+
return msgpackCall(this.backend, [["Secp256k1GetRandomFr", msgpackCommand]]).then(([variantName, result]) => {
|
|
300
|
+
if (variantName !== 'Secp256k1GetRandomFrResponse') {
|
|
301
|
+
throw new Error(`Expected variant name 'Secp256k1GetRandomFrResponse' but got '${variantName}'`);
|
|
302
|
+
}
|
|
303
|
+
return toSecp256k1GetRandomFrResponse(result);
|
|
304
|
+
});
|
|
305
|
+
}
|
|
306
|
+
secp256k1Reduce512(command) {
|
|
307
|
+
const msgpackCommand = fromSecp256k1Reduce512(command);
|
|
308
|
+
return msgpackCall(this.backend, [["Secp256k1Reduce512", msgpackCommand]]).then(([variantName, result]) => {
|
|
309
|
+
if (variantName !== 'Secp256k1Reduce512Response') {
|
|
310
|
+
throw new Error(`Expected variant name 'Secp256k1Reduce512Response' but got '${variantName}'`);
|
|
311
|
+
}
|
|
312
|
+
return toSecp256k1Reduce512Response(result);
|
|
313
|
+
});
|
|
314
|
+
}
|
|
315
|
+
bn254FrSqrt(command) {
|
|
316
|
+
const msgpackCommand = fromBn254FrSqrt(command);
|
|
317
|
+
return msgpackCall(this.backend, [["Bn254FrSqrt", msgpackCommand]]).then(([variantName, result]) => {
|
|
318
|
+
if (variantName !== 'Bn254FrSqrtResponse') {
|
|
319
|
+
throw new Error(`Expected variant name 'Bn254FrSqrtResponse' but got '${variantName}'`);
|
|
320
|
+
}
|
|
321
|
+
return toBn254FrSqrtResponse(result);
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
schnorrComputePublicKey(command) {
|
|
325
|
+
const msgpackCommand = fromSchnorrComputePublicKey(command);
|
|
326
|
+
return msgpackCall(this.backend, [["SchnorrComputePublicKey", msgpackCommand]]).then(([variantName, result]) => {
|
|
327
|
+
if (variantName !== 'SchnorrComputePublicKeyResponse') {
|
|
328
|
+
throw new Error(`Expected variant name 'SchnorrComputePublicKeyResponse' but got '${variantName}'`);
|
|
329
|
+
}
|
|
330
|
+
return toSchnorrComputePublicKeyResponse(result);
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
schnorrConstructSignature(command) {
|
|
334
|
+
const msgpackCommand = fromSchnorrConstructSignature(command);
|
|
335
|
+
return msgpackCall(this.backend, [["SchnorrConstructSignature", msgpackCommand]]).then(([variantName, result]) => {
|
|
336
|
+
if (variantName !== 'SchnorrConstructSignatureResponse') {
|
|
337
|
+
throw new Error(`Expected variant name 'SchnorrConstructSignatureResponse' but got '${variantName}'`);
|
|
338
|
+
}
|
|
339
|
+
return toSchnorrConstructSignatureResponse(result);
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
schnorrVerifySignature(command) {
|
|
343
|
+
const msgpackCommand = fromSchnorrVerifySignature(command);
|
|
344
|
+
return msgpackCall(this.backend, [["SchnorrVerifySignature", msgpackCommand]]).then(([variantName, result]) => {
|
|
345
|
+
if (variantName !== 'SchnorrVerifySignatureResponse') {
|
|
346
|
+
throw new Error(`Expected variant name 'SchnorrVerifySignatureResponse' but got '${variantName}'`);
|
|
347
|
+
}
|
|
348
|
+
return toSchnorrVerifySignatureResponse(result);
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
ecdsaSecp256k1ComputePublicKey(command) {
|
|
352
|
+
const msgpackCommand = fromEcdsaSecp256k1ComputePublicKey(command);
|
|
353
|
+
return msgpackCall(this.backend, [["EcdsaSecp256k1ComputePublicKey", msgpackCommand]]).then(([variantName, result]) => {
|
|
354
|
+
if (variantName !== 'EcdsaSecp256k1ComputePublicKeyResponse') {
|
|
355
|
+
throw new Error(`Expected variant name 'EcdsaSecp256k1ComputePublicKeyResponse' but got '${variantName}'`);
|
|
356
|
+
}
|
|
357
|
+
return toEcdsaSecp256k1ComputePublicKeyResponse(result);
|
|
358
|
+
});
|
|
359
|
+
}
|
|
360
|
+
ecdsaSecp256r1ComputePublicKey(command) {
|
|
361
|
+
const msgpackCommand = fromEcdsaSecp256r1ComputePublicKey(command);
|
|
362
|
+
return msgpackCall(this.backend, [["EcdsaSecp256r1ComputePublicKey", msgpackCommand]]).then(([variantName, result]) => {
|
|
363
|
+
if (variantName !== 'EcdsaSecp256r1ComputePublicKeyResponse') {
|
|
364
|
+
throw new Error(`Expected variant name 'EcdsaSecp256r1ComputePublicKeyResponse' but got '${variantName}'`);
|
|
365
|
+
}
|
|
366
|
+
return toEcdsaSecp256r1ComputePublicKeyResponse(result);
|
|
367
|
+
});
|
|
368
|
+
}
|
|
369
|
+
ecdsaSecp256k1ConstructSignature(command) {
|
|
370
|
+
const msgpackCommand = fromEcdsaSecp256k1ConstructSignature(command);
|
|
371
|
+
return msgpackCall(this.backend, [["EcdsaSecp256k1ConstructSignature", msgpackCommand]]).then(([variantName, result]) => {
|
|
372
|
+
if (variantName !== 'EcdsaSecp256k1ConstructSignatureResponse') {
|
|
373
|
+
throw new Error(`Expected variant name 'EcdsaSecp256k1ConstructSignatureResponse' but got '${variantName}'`);
|
|
374
|
+
}
|
|
375
|
+
return toEcdsaSecp256k1ConstructSignatureResponse(result);
|
|
376
|
+
});
|
|
377
|
+
}
|
|
378
|
+
ecdsaSecp256r1ConstructSignature(command) {
|
|
379
|
+
const msgpackCommand = fromEcdsaSecp256r1ConstructSignature(command);
|
|
380
|
+
return msgpackCall(this.backend, [["EcdsaSecp256r1ConstructSignature", msgpackCommand]]).then(([variantName, result]) => {
|
|
381
|
+
if (variantName !== 'EcdsaSecp256r1ConstructSignatureResponse') {
|
|
382
|
+
throw new Error(`Expected variant name 'EcdsaSecp256r1ConstructSignatureResponse' but got '${variantName}'`);
|
|
383
|
+
}
|
|
384
|
+
return toEcdsaSecp256r1ConstructSignatureResponse(result);
|
|
385
|
+
});
|
|
386
|
+
}
|
|
387
|
+
ecdsaSecp256k1RecoverPublicKey(command) {
|
|
388
|
+
const msgpackCommand = fromEcdsaSecp256k1RecoverPublicKey(command);
|
|
389
|
+
return msgpackCall(this.backend, [["EcdsaSecp256k1RecoverPublicKey", msgpackCommand]]).then(([variantName, result]) => {
|
|
390
|
+
if (variantName !== 'EcdsaSecp256k1RecoverPublicKeyResponse') {
|
|
391
|
+
throw new Error(`Expected variant name 'EcdsaSecp256k1RecoverPublicKeyResponse' but got '${variantName}'`);
|
|
392
|
+
}
|
|
393
|
+
return toEcdsaSecp256k1RecoverPublicKeyResponse(result);
|
|
394
|
+
});
|
|
395
|
+
}
|
|
396
|
+
ecdsaSecp256r1RecoverPublicKey(command) {
|
|
397
|
+
const msgpackCommand = fromEcdsaSecp256r1RecoverPublicKey(command);
|
|
398
|
+
return msgpackCall(this.backend, [["EcdsaSecp256r1RecoverPublicKey", msgpackCommand]]).then(([variantName, result]) => {
|
|
399
|
+
if (variantName !== 'EcdsaSecp256r1RecoverPublicKeyResponse') {
|
|
400
|
+
throw new Error(`Expected variant name 'EcdsaSecp256r1RecoverPublicKeyResponse' but got '${variantName}'`);
|
|
401
|
+
}
|
|
402
|
+
return toEcdsaSecp256r1RecoverPublicKeyResponse(result);
|
|
403
|
+
});
|
|
404
|
+
}
|
|
405
|
+
ecdsaSecp256k1VerifySignature(command) {
|
|
406
|
+
const msgpackCommand = fromEcdsaSecp256k1VerifySignature(command);
|
|
407
|
+
return msgpackCall(this.backend, [["EcdsaSecp256k1VerifySignature", msgpackCommand]]).then(([variantName, result]) => {
|
|
408
|
+
if (variantName !== 'EcdsaSecp256k1VerifySignatureResponse') {
|
|
409
|
+
throw new Error(`Expected variant name 'EcdsaSecp256k1VerifySignatureResponse' but got '${variantName}'`);
|
|
410
|
+
}
|
|
411
|
+
return toEcdsaSecp256k1VerifySignatureResponse(result);
|
|
412
|
+
});
|
|
413
|
+
}
|
|
414
|
+
ecdsaSecp256r1VerifySignature(command) {
|
|
415
|
+
const msgpackCommand = fromEcdsaSecp256r1VerifySignature(command);
|
|
416
|
+
return msgpackCall(this.backend, [["EcdsaSecp256r1VerifySignature", msgpackCommand]]).then(([variantName, result]) => {
|
|
417
|
+
if (variantName !== 'EcdsaSecp256r1VerifySignatureResponse') {
|
|
418
|
+
throw new Error(`Expected variant name 'EcdsaSecp256r1VerifySignatureResponse' but got '${variantName}'`);
|
|
419
|
+
}
|
|
420
|
+
return toEcdsaSecp256r1VerifySignatureResponse(result);
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
srsInitSrs(command) {
|
|
424
|
+
const msgpackCommand = fromSrsInitSrs(command);
|
|
425
|
+
return msgpackCall(this.backend, [["SrsInitSrs", msgpackCommand]]).then(([variantName, result]) => {
|
|
426
|
+
if (variantName !== 'SrsInitSrsResponse') {
|
|
427
|
+
throw new Error(`Expected variant name 'SrsInitSrsResponse' but got '${variantName}'`);
|
|
428
|
+
}
|
|
429
|
+
return toSrsInitSrsResponse(result);
|
|
430
|
+
});
|
|
431
|
+
}
|
|
432
|
+
srsInitGrumpkinSrs(command) {
|
|
433
|
+
const msgpackCommand = fromSrsInitGrumpkinSrs(command);
|
|
434
|
+
return msgpackCall(this.backend, [["SrsInitGrumpkinSrs", msgpackCommand]]).then(([variantName, result]) => {
|
|
435
|
+
if (variantName !== 'SrsInitGrumpkinSrsResponse') {
|
|
436
|
+
throw new Error(`Expected variant name 'SrsInitGrumpkinSrsResponse' but got '${variantName}'`);
|
|
437
|
+
}
|
|
438
|
+
return toSrsInitGrumpkinSrsResponse(result);
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
shutdown(command) {
|
|
442
|
+
const msgpackCommand = fromShutdown(command);
|
|
443
|
+
return msgpackCall(this.backend, [["Shutdown", msgpackCommand]]).then(([variantName, result]) => {
|
|
444
|
+
if (variantName !== 'ShutdownResponse') {
|
|
445
|
+
throw new Error(`Expected variant name 'ShutdownResponse' but got '${variantName}'`);
|
|
446
|
+
}
|
|
447
|
+
return toShutdownResponse(result);
|
|
448
|
+
});
|
|
449
|
+
}
|
|
144
450
|
destroy() {
|
|
145
|
-
return this.
|
|
451
|
+
return this.backend.destroy ? this.backend.destroy() : Promise.resolve();
|
|
146
452
|
}
|
|
147
453
|
}
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2JpbmQvZ2VuZXJhdGVkL2FzeW5jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG1DQUFtQztBQUduQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM1QyxPQUFPLEVBQTR5QixvQkFBb0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxnQ0FBZ0MsRUFBRSx1QkFBdUIsRUFBRSwrQkFBK0IsRUFBRSx5QkFBeUIsRUFBRSxnQ0FBZ0MsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSxjQUFjLEVBQUUsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsc0NBQXNDLEVBQUUsNkJBQTZCLEVBQUUscUNBQXFDLEVBQUUsK0JBQStCLEVBQUUsc0NBQXNDLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUseUJBQXlCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2bEQsS0FBSyxVQUFVLFdBQVcsQ0FBQyxJQUFnQyxFQUFFLEtBQWEsRUFBRSxLQUFZLElBQUssTUFBTSxXQUFXLEdBQUcsSUFBSSxPQUFPLENBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFBLENBQUM7QUFDcFMs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
|
|
454
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2JpbmQvZ2VuZXJhdGVkL2FzeW5jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG1DQUFtQztBQUduQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM1QyxPQUFPLEVBQTYrRSxjQUFjLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsZ0NBQWdDLEVBQUUsdUJBQXVCLEVBQUUsK0JBQStCLEVBQUUseUJBQXlCLEVBQUUsZ0NBQWdDLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsa0NBQWtDLEVBQUUsb0NBQW9DLEVBQUUsa0NBQWtDLEVBQUUsaUNBQWlDLEVBQUUsa0NBQWtDLEVBQUUsb0NBQW9DLEVBQUUsa0NBQWtDLEVBQUUsaUNBQWlDLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLHVCQUF1QixFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxpQkFBaUIsRUFBRSwyQkFBMkIsRUFBRSx3QkFBd0IsRUFBRSwyQkFBMkIsRUFBRSw2QkFBNkIsRUFBRSwwQkFBMEIsRUFBRSx3QkFBd0IsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsRUFBRSwwQkFBMEIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxzQ0FBc0MsRUFBRSw2QkFB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
|