@dfinity/ckbtc 3.1.12 → 3.1.13-beta-2025-06-28

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.
@@ -1,2 +1,2 @@
1
- import{c as a}from"./chunk-M2DS6MT4.js";import"./chunk-FW4363Y4.js";export{a as BitcoinCanister};
1
+ import{c as a}from"./chunk-ABDCS67G.js";import"./chunk-FW4363Y4.js";export{a as BitcoinCanister};
2
2
  //# sourceMappingURL=bitcoin.canister.js.map
@@ -1,2 +1,2 @@
1
- import{Canister as v,createServices as B}from"@dfinity/utils";var k=({IDL:t})=>{let e=t.Variant({disabled:t.Null,enabled:t.Null}),a=t.Record({get_current_fee_percentiles:t.Nat,get_utxos_maximum:t.Nat,get_block_headers_cycles_per_ten_instructions:t.Nat,get_current_fee_percentiles_maximum:t.Nat,send_transaction_per_byte:t.Nat,get_balance:t.Nat,get_utxos_cycles_per_ten_instructions:t.Nat,get_block_headers_base:t.Nat,get_utxos_base:t.Nat,get_balance_maximum:t.Nat,send_transaction_base:t.Nat,get_block_headers_maximum:t.Nat}),n=t.Variant({mainnet:t.Null,regtest:t.Null,testnet:t.Null}),l=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),blocks_source:t.Opt(t.Principal),fees:t.Opt(a),watchdog_canister:t.Opt(t.Opt(t.Principal)),network:t.Opt(n),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)}),c=t.Text,_=t.Record({network:n,address:c,min_confirmations:t.Opt(t.Nat32)}),i=t.Nat64,s=t.Nat32,p=t.Record({start_height:s,end_height:t.Opt(s),network:n}),u=t.Vec(t.Nat8),d=t.Record({tip_height:s,block_headers:t.Vec(u)}),g=t.Record({network:n}),b=t.Nat64,r=t.Record({network:n,filter:t.Opt(t.Variant({page:t.Vec(t.Nat8),min_confirmations:t.Nat32})),address:c}),m=t.Vec(t.Nat8),N=t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32}),f=t.Record({height:s,value:i,outpoint:N}),o=t.Record({next_page:t.Opt(t.Vec(t.Nat8)),tip_height:s,tip_block_hash:m,utxos:t.Vec(f)}),y=t.Record({transaction:t.Vec(t.Nat8),network:n}),h=t.Record({api_access:e,lazily_evaluate_fee_percentiles:e,blocks_source:t.Principal,fees:a,watchdog_canister:t.Opt(t.Principal),network:n,stability_threshold:t.Nat,syncing:e,burn_cycles:e,disable_api_if_not_fully_synced:e}),O=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),fees:t.Opt(a),watchdog_canister:t.Opt(t.Opt(t.Principal)),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)});return t.Service({bitcoin_get_balance:t.Func([_],[i],[]),bitcoin_get_balance_query:t.Func([_],[i],[]),bitcoin_get_block_headers:t.Func([p],[d],[]),bitcoin_get_current_fee_percentiles:t.Func([g],[t.Vec(b)],[]),bitcoin_get_utxos:t.Func([r],[o],[]),bitcoin_get_utxos_query:t.Func([r],[o],[]),bitcoin_send_transaction:t.Func([y],[],[]),get_config:t.Func([],[h],[]),set_config:t.Func([O],[],[])})};var w=({IDL:t})=>{let e=t.Variant({disabled:t.Null,enabled:t.Null}),a=t.Record({get_current_fee_percentiles:t.Nat,get_utxos_maximum:t.Nat,get_block_headers_cycles_per_ten_instructions:t.Nat,get_current_fee_percentiles_maximum:t.Nat,send_transaction_per_byte:t.Nat,get_balance:t.Nat,get_utxos_cycles_per_ten_instructions:t.Nat,get_block_headers_base:t.Nat,get_utxos_base:t.Nat,get_balance_maximum:t.Nat,send_transaction_base:t.Nat,get_block_headers_maximum:t.Nat}),n=t.Variant({mainnet:t.Null,regtest:t.Null,testnet:t.Null}),l=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),blocks_source:t.Opt(t.Principal),fees:t.Opt(a),watchdog_canister:t.Opt(t.Opt(t.Principal)),network:t.Opt(n),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)}),c=t.Text,_=t.Record({network:n,address:c,min_confirmations:t.Opt(t.Nat32)}),i=t.Nat64,s=t.Nat32,p=t.Record({start_height:s,end_height:t.Opt(s),network:n}),u=t.Vec(t.Nat8),d=t.Record({tip_height:s,block_headers:t.Vec(u)}),g=t.Record({network:n}),b=t.Nat64,r=t.Record({network:n,filter:t.Opt(t.Variant({page:t.Vec(t.Nat8),min_confirmations:t.Nat32})),address:c}),m=t.Vec(t.Nat8),N=t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32}),f=t.Record({height:s,value:i,outpoint:N}),o=t.Record({next_page:t.Opt(t.Vec(t.Nat8)),tip_height:s,tip_block_hash:m,utxos:t.Vec(f)}),y=t.Record({transaction:t.Vec(t.Nat8),network:n}),h=t.Record({api_access:e,lazily_evaluate_fee_percentiles:e,blocks_source:t.Principal,fees:a,watchdog_canister:t.Opt(t.Principal),network:n,stability_threshold:t.Nat,syncing:e,burn_cycles:e,disable_api_if_not_fully_synced:e}),O=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),fees:t.Opt(a),watchdog_canister:t.Opt(t.Opt(t.Principal)),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)});return t.Service({bitcoin_get_balance:t.Func([_],[i],[]),bitcoin_get_balance_query:t.Func([_],[i],["query"]),bitcoin_get_block_headers:t.Func([p],[d],[]),bitcoin_get_current_fee_percentiles:t.Func([g],[t.Vec(b)],[]),bitcoin_get_utxos:t.Func([r],[o],[]),bitcoin_get_utxos_query:t.Func([r],[o],["query"]),bitcoin_send_transaction:t.Func([y],[],[]),get_config:t.Func([],[h],["query"]),set_config:t.Func([O],[],[])})};import{nonNullish as q,toNullable as x}from"@dfinity/utils";var F={mainnet:{mainnet:null},testnet:{testnet:null},regtest:{regtest:null}},R=({network:t,filter:e,...a})=>({filter:q(e)?x("minConfirmations"in e?{min_confirmations:e.minConfirmations}:{page:e.page}):x(),network:t==="testnet"?{testnet:null}:{mainnet:null},...a}),P=({network:t,minConfirmations:e,...a})=>({min_confirmations:x(e),network:F[t],...a});var V=class t extends v{constructor(){super(...arguments);this.getUtxosQuery=({...a})=>{let{bitcoin_get_utxos_query:n}=this.caller({certified:!1});return n(R(a))};this.getBalanceQuery=({...a})=>{let{bitcoin_get_balance_query:n}=this.caller({certified:!1});return n(P(a))}}static create(a){let{service:n,certifiedService:l,canisterId:c}=B({options:a,idlFactory:w,certifiedIdlFactory:k});return new t(c,n,l)}};export{R as a,P as b,V as c};
2
- //# sourceMappingURL=chunk-M2DS6MT4.js.map
1
+ import{Canister as v,createServices as B}from"@dfinity/utils";var k=({IDL:t})=>{let e=t.Variant({disabled:t.Null,enabled:t.Null}),n=t.Record({get_current_fee_percentiles:t.Nat,get_utxos_maximum:t.Nat,get_block_headers_cycles_per_ten_instructions:t.Nat,get_current_fee_percentiles_maximum:t.Nat,send_transaction_per_byte:t.Nat,get_balance:t.Nat,get_utxos_cycles_per_ten_instructions:t.Nat,get_block_headers_base:t.Nat,get_utxos_base:t.Nat,get_balance_maximum:t.Nat,send_transaction_base:t.Nat,get_block_headers_maximum:t.Nat}),a=t.Variant({mainnet:t.Null,regtest:t.Null,testnet:t.Null}),l=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),blocks_source:t.Opt(t.Principal),fees:t.Opt(n),watchdog_canister:t.Opt(t.Opt(t.Principal)),network:t.Opt(a),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)}),i=t.Text,_=t.Record({network:a,address:i,min_confirmations:t.Opt(t.Nat32)}),c=t.Nat64,s=t.Nat32,p=t.Record({start_height:s,end_height:t.Opt(s),network:a}),u=t.Vec(t.Nat8),d=t.Record({tip_height:s,block_headers:t.Vec(u)}),g=t.Record({network:a}),b=t.Nat64,r=t.Record({network:a,filter:t.Opt(t.Variant({page:t.Vec(t.Nat8),min_confirmations:t.Nat32})),address:i}),m=t.Vec(t.Nat8),N=t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32}),f=t.Record({height:s,value:c,outpoint:N}),o=t.Record({next_page:t.Opt(t.Vec(t.Nat8)),tip_height:s,tip_block_hash:m,utxos:t.Vec(f)}),y=t.Record({transaction:t.Vec(t.Nat8),network:a}),h=t.Record({api_access:e,lazily_evaluate_fee_percentiles:e,blocks_source:t.Principal,fees:n,watchdog_canister:t.Opt(t.Principal),network:a,stability_threshold:t.Nat,syncing:e,burn_cycles:e,disable_api_if_not_fully_synced:e}),O=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),fees:t.Opt(n),watchdog_canister:t.Opt(t.Opt(t.Principal)),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)});return t.Service({bitcoin_get_balance:t.Func([_],[c],[]),bitcoin_get_balance_query:t.Func([_],[c],[]),bitcoin_get_block_headers:t.Func([p],[d],[]),bitcoin_get_current_fee_percentiles:t.Func([g],[t.Vec(b)],[]),bitcoin_get_utxos:t.Func([r],[o],[]),bitcoin_get_utxos_query:t.Func([r],[o],[]),bitcoin_send_transaction:t.Func([y],[],[]),get_config:t.Func([],[h],[]),set_config:t.Func([O],[],[])})};var w=({IDL:t})=>{let e=t.Variant({disabled:t.Null,enabled:t.Null}),n=t.Record({get_current_fee_percentiles:t.Nat,get_utxos_maximum:t.Nat,get_block_headers_cycles_per_ten_instructions:t.Nat,get_current_fee_percentiles_maximum:t.Nat,send_transaction_per_byte:t.Nat,get_balance:t.Nat,get_utxos_cycles_per_ten_instructions:t.Nat,get_block_headers_base:t.Nat,get_utxos_base:t.Nat,get_balance_maximum:t.Nat,send_transaction_base:t.Nat,get_block_headers_maximum:t.Nat}),a=t.Variant({mainnet:t.Null,regtest:t.Null,testnet:t.Null}),l=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),blocks_source:t.Opt(t.Principal),fees:t.Opt(n),watchdog_canister:t.Opt(t.Opt(t.Principal)),network:t.Opt(a),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)}),i=t.Text,_=t.Record({network:a,address:i,min_confirmations:t.Opt(t.Nat32)}),c=t.Nat64,s=t.Nat32,p=t.Record({start_height:s,end_height:t.Opt(s),network:a}),u=t.Vec(t.Nat8),d=t.Record({tip_height:s,block_headers:t.Vec(u)}),g=t.Record({network:a}),b=t.Nat64,r=t.Record({network:a,filter:t.Opt(t.Variant({page:t.Vec(t.Nat8),min_confirmations:t.Nat32})),address:i}),m=t.Vec(t.Nat8),N=t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32}),f=t.Record({height:s,value:c,outpoint:N}),o=t.Record({next_page:t.Opt(t.Vec(t.Nat8)),tip_height:s,tip_block_hash:m,utxos:t.Vec(f)}),y=t.Record({transaction:t.Vec(t.Nat8),network:a}),h=t.Record({api_access:e,lazily_evaluate_fee_percentiles:e,blocks_source:t.Principal,fees:n,watchdog_canister:t.Opt(t.Principal),network:a,stability_threshold:t.Nat,syncing:e,burn_cycles:e,disable_api_if_not_fully_synced:e}),O=t.Record({api_access:t.Opt(e),lazily_evaluate_fee_percentiles:t.Opt(e),fees:t.Opt(n),watchdog_canister:t.Opt(t.Opt(t.Principal)),stability_threshold:t.Opt(t.Nat),syncing:t.Opt(e),burn_cycles:t.Opt(e),disable_api_if_not_fully_synced:t.Opt(e)});return t.Service({bitcoin_get_balance:t.Func([_],[c],[]),bitcoin_get_balance_query:t.Func([_],[c],["query"]),bitcoin_get_block_headers:t.Func([p],[d],[]),bitcoin_get_current_fee_percentiles:t.Func([g],[t.Vec(b)],[]),bitcoin_get_utxos:t.Func([r],[o],[]),bitcoin_get_utxos_query:t.Func([r],[o],["query"]),bitcoin_send_transaction:t.Func([y],[],[]),get_config:t.Func([],[h],["query"]),set_config:t.Func([O],[],[])})};import{nonNullish as q,toNullable as x}from"@dfinity/utils";var F={mainnet:{mainnet:null},testnet:{testnet:null},regtest:{regtest:null}},R=({network:t,filter:e,...n})=>({filter:q(e)?x("minConfirmations"in e?{min_confirmations:e.minConfirmations}:{page:e.page}):x(),network:t==="testnet"?{testnet:null}:{mainnet:null},...n}),P=({network:t,minConfirmations:e,...n})=>({min_confirmations:x(e),network:F[t],...n});var V=class t extends v{static create(e){let{service:n,certifiedService:a,canisterId:l}=B({options:e,idlFactory:w,certifiedIdlFactory:k});return new t(l,n,a)}getUtxosQuery=({...e})=>{let{bitcoin_get_utxos_query:n}=this.caller({certified:!1});return n(R(e))};getBalanceQuery=({...e})=>{let{bitcoin_get_balance_query:n}=this.caller({certified:!1});return n(P(e))}};export{R as a,P as b,V as c};
2
+ //# sourceMappingURL=chunk-ABDCS67G.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/bitcoin.canister.ts", "../../candid/bitcoin.certified.idl.js", "../../candid/bitcoin.idl.js", "../../src/types/bitcoin.params.ts"],
4
4
  "sourcesContent": ["import { Canister, createServices } from \"@dfinity/utils\";\nimport type {\n _SERVICE as BitcoinService,\n get_utxos_response,\n satoshi,\n} from \"../candid/bitcoin\";\nimport { idlFactory as certifiedIdlFactory } from \"../candid/bitcoin.certified.idl\";\nimport { idlFactory } from \"../candid/bitcoin.idl\";\nimport {\n toGetBalanceParams,\n toGetUtxosParams,\n type GetBalanceParams,\n type GetUtxosParams,\n} from \"./types/bitcoin.params\";\nimport type { CkBTCCanisterOptions } from \"./types/canister.options\";\n\nexport class BitcoinCanister extends Canister<BitcoinService> {\n static create(options: CkBTCCanisterOptions<BitcoinService>) {\n const { service, certifiedService, canisterId } =\n createServices<BitcoinService>({\n options,\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new BitcoinCanister(canisterId, service, certifiedService);\n }\n\n /**\n * Given a `get_utxos_request`, which must specify a Bitcoin address and a Bitcoin network (`mainnet`, `testnet` or `regtest`), the function returns all unspent transaction outputs (UTXOs) associated with the provided address in the specified Bitcoin network based on the current view of the Bitcoin blockchain available to the Bitcoin component.\n *\n * \u26A0\uFE0F Note that this method does not support certified calls because only canisters are allowed to get UTXOs via update calls.\n *\n * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-bitcoin_get_utxos\n *\n * @param {Object} params\n * @param {BitcoinNetwork} params.network Tesnet or mainnet.\n * @param {Object} params.filter The optional filter parameter can be used to restrict the set of returned UTXOs, either providing a minimum number of confirmations or a page reference when pagination is used for addresses with many UTXOs.\n * @param {string} params.address A Bitcoin address.\n * @returns {Promise<bitcoin_get_utxos_result>} The UTXOs are returned sorted by block height in descending order.\n */\n getUtxosQuery = ({\n ...params\n }: GetUtxosParams): Promise<get_utxos_response> => {\n const { bitcoin_get_utxos_query } = this.caller({\n certified: false,\n });\n return bitcoin_get_utxos_query(toGetUtxosParams(params));\n };\n\n /**\n * Given a `get_balance_request`, which must specify a Bitcoin address and a Bitcoin network (`mainnet`, `testnet` or `regtest`), the function returns the current balance of this address in `Satoshi` (10^8 Satoshi = 1 Bitcoin) in the specified Bitcoin network.\n *\n * \u26A0\uFE0F Note that this method does not support certified calls because only canisters are allowed to get Bitcoin balance via update calls.\n *\n * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-bitcoin_get_balance\n *\n * @param {Object} params\n * @param {BitcoinNetwork} params.network Tesnet or mainnet.\n * @param {Object} params.min_confirmations The optional filter parameter can be used to limit the set of considered UTXOs for the calculation of the balance to those with at least the provided number of confirmations in the same manner as for the `bitcoin_get_utxos` call.\n * @param {string} params.address A Bitcoin address.\n * @returns {Promise<satoshi>} The balance is returned in `Satoshi` (10^8 Satoshi = 1 Bitcoin).\n */\n getBalanceQuery = ({ ...params }: GetBalanceParams): Promise<satoshi> => {\n const { bitcoin_get_balance_query } = this.caller({\n certified: false,\n });\n return bitcoin_get_balance_query(toGetBalanceParams(params));\n };\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/ckbtc/candid/bitcoin.did */\nexport const idlFactory = ({ IDL }) => {\n const flag = IDL.Variant({ 'disabled' : IDL.Null, 'enabled' : IDL.Null });\n const fees = IDL.Record({\n 'get_current_fee_percentiles' : IDL.Nat,\n 'get_utxos_maximum' : IDL.Nat,\n 'get_block_headers_cycles_per_ten_instructions' : IDL.Nat,\n 'get_current_fee_percentiles_maximum' : IDL.Nat,\n 'send_transaction_per_byte' : IDL.Nat,\n 'get_balance' : IDL.Nat,\n 'get_utxos_cycles_per_ten_instructions' : IDL.Nat,\n 'get_block_headers_base' : IDL.Nat,\n 'get_utxos_base' : IDL.Nat,\n 'get_balance_maximum' : IDL.Nat,\n 'send_transaction_base' : IDL.Nat,\n 'get_block_headers_maximum' : IDL.Nat,\n });\n const network = IDL.Variant({\n 'mainnet' : IDL.Null,\n 'regtest' : IDL.Null,\n 'testnet' : IDL.Null,\n });\n const init_config = IDL.Record({\n 'api_access' : IDL.Opt(flag),\n 'lazily_evaluate_fee_percentiles' : IDL.Opt(flag),\n 'blocks_source' : IDL.Opt(IDL.Principal),\n 'fees' : IDL.Opt(fees),\n 'watchdog_canister' : IDL.Opt(IDL.Opt(IDL.Principal)),\n 'network' : IDL.Opt(network),\n 'stability_threshold' : IDL.Opt(IDL.Nat),\n 'syncing' : IDL.Opt(flag),\n 'burn_cycles' : IDL.Opt(flag),\n 'disable_api_if_not_fully_synced' : IDL.Opt(flag),\n });\n const address = IDL.Text;\n const get_balance_request = IDL.Record({\n 'network' : network,\n 'address' : address,\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n });\n const satoshi = IDL.Nat64;\n const block_height = IDL.Nat32;\n const get_block_headers_request = IDL.Record({\n 'start_height' : block_height,\n 'end_height' : IDL.Opt(block_height),\n 'network' : network,\n });\n const block_header = IDL.Vec(IDL.Nat8);\n const get_block_headers_response = IDL.Record({\n 'tip_height' : block_height,\n 'block_headers' : IDL.Vec(block_header),\n });\n const get_current_fee_percentiles_request = IDL.Record({\n 'network' : network,\n });\n const millisatoshi_per_byte = IDL.Nat64;\n const get_utxos_request = IDL.Record({\n 'network' : network,\n 'filter' : IDL.Opt(\n IDL.Variant({\n 'page' : IDL.Vec(IDL.Nat8),\n 'min_confirmations' : IDL.Nat32,\n })\n ),\n 'address' : address,\n });\n const block_hash = IDL.Vec(IDL.Nat8);\n const outpoint = IDL.Record({\n 'txid' : IDL.Vec(IDL.Nat8),\n 'vout' : IDL.Nat32,\n });\n const utxo = IDL.Record({\n 'height' : block_height,\n 'value' : satoshi,\n 'outpoint' : outpoint,\n });\n const get_utxos_response = IDL.Record({\n 'next_page' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n 'tip_height' : block_height,\n 'tip_block_hash' : block_hash,\n 'utxos' : IDL.Vec(utxo),\n });\n const send_transaction_request = IDL.Record({\n 'transaction' : IDL.Vec(IDL.Nat8),\n 'network' : network,\n });\n const config = IDL.Record({\n 'api_access' : flag,\n 'lazily_evaluate_fee_percentiles' : flag,\n 'blocks_source' : IDL.Principal,\n 'fees' : fees,\n 'watchdog_canister' : IDL.Opt(IDL.Principal),\n 'network' : network,\n 'stability_threshold' : IDL.Nat,\n 'syncing' : flag,\n 'burn_cycles' : flag,\n 'disable_api_if_not_fully_synced' : flag,\n });\n const set_config_request = IDL.Record({\n 'api_access' : IDL.Opt(flag),\n 'lazily_evaluate_fee_percentiles' : IDL.Opt(flag),\n 'fees' : IDL.Opt(fees),\n 'watchdog_canister' : IDL.Opt(IDL.Opt(IDL.Principal)),\n 'stability_threshold' : IDL.Opt(IDL.Nat),\n 'syncing' : IDL.Opt(flag),\n 'burn_cycles' : IDL.Opt(flag),\n 'disable_api_if_not_fully_synced' : IDL.Opt(flag),\n });\n return IDL.Service({\n 'bitcoin_get_balance' : IDL.Func([get_balance_request], [satoshi], []),\n 'bitcoin_get_balance_query' : IDL.Func(\n [get_balance_request],\n [satoshi],\n [],\n ),\n 'bitcoin_get_block_headers' : IDL.Func(\n [get_block_headers_request],\n [get_block_headers_response],\n [],\n ),\n 'bitcoin_get_current_fee_percentiles' : IDL.Func(\n [get_current_fee_percentiles_request],\n [IDL.Vec(millisatoshi_per_byte)],\n [],\n ),\n 'bitcoin_get_utxos' : IDL.Func(\n [get_utxos_request],\n [get_utxos_response],\n [],\n ),\n 'bitcoin_get_utxos_query' : IDL.Func(\n [get_utxos_request],\n [get_utxos_response],\n [],\n ),\n 'bitcoin_send_transaction' : IDL.Func([send_transaction_request], [], []),\n 'get_config' : IDL.Func([], [config], []),\n 'set_config' : IDL.Func([set_config_request], [], []),\n });\n};\nexport const init = ({ IDL }) => {\n const flag = IDL.Variant({ 'disabled' : IDL.Null, 'enabled' : IDL.Null });\n const fees = IDL.Record({\n 'get_current_fee_percentiles' : IDL.Nat,\n 'get_utxos_maximum' : IDL.Nat,\n 'get_block_headers_cycles_per_ten_instructions' : IDL.Nat,\n 'get_current_fee_percentiles_maximum' : IDL.Nat,\n 'send_transaction_per_byte' : IDL.Nat,\n 'get_balance' : IDL.Nat,\n 'get_utxos_cycles_per_ten_instructions' : IDL.Nat,\n 'get_block_headers_base' : IDL.Nat,\n 'get_utxos_base' : IDL.Nat,\n 'get_balance_maximum' : IDL.Nat,\n 'send_transaction_base' : IDL.Nat,\n 'get_block_headers_maximum' : IDL.Nat,\n });\n const network = IDL.Variant({\n 'mainnet' : IDL.Null,\n 'regtest' : IDL.Null,\n 'testnet' : IDL.Null,\n });\n const init_config = IDL.Record({\n 'api_access' : IDL.Opt(flag),\n 'lazily_evaluate_fee_percentiles' : IDL.Opt(flag),\n 'blocks_source' : IDL.Opt(IDL.Principal),\n 'fees' : IDL.Opt(fees),\n 'watchdog_canister' : IDL.Opt(IDL.Opt(IDL.Principal)),\n 'network' : IDL.Opt(network),\n 'stability_threshold' : IDL.Opt(IDL.Nat),\n 'syncing' : IDL.Opt(flag),\n 'burn_cycles' : IDL.Opt(flag),\n 'disable_api_if_not_fully_synced' : IDL.Opt(flag),\n });\n return [init_config];\n};\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/ckbtc/candid/bitcoin.did */\nexport const idlFactory = ({ IDL }) => {\n const flag = IDL.Variant({ 'disabled' : IDL.Null, 'enabled' : IDL.Null });\n const fees = IDL.Record({\n 'get_current_fee_percentiles' : IDL.Nat,\n 'get_utxos_maximum' : IDL.Nat,\n 'get_block_headers_cycles_per_ten_instructions' : IDL.Nat,\n 'get_current_fee_percentiles_maximum' : IDL.Nat,\n 'send_transaction_per_byte' : IDL.Nat,\n 'get_balance' : IDL.Nat,\n 'get_utxos_cycles_per_ten_instructions' : IDL.Nat,\n 'get_block_headers_base' : IDL.Nat,\n 'get_utxos_base' : IDL.Nat,\n 'get_balance_maximum' : IDL.Nat,\n 'send_transaction_base' : IDL.Nat,\n 'get_block_headers_maximum' : IDL.Nat,\n });\n const network = IDL.Variant({\n 'mainnet' : IDL.Null,\n 'regtest' : IDL.Null,\n 'testnet' : IDL.Null,\n });\n const init_config = IDL.Record({\n 'api_access' : IDL.Opt(flag),\n 'lazily_evaluate_fee_percentiles' : IDL.Opt(flag),\n 'blocks_source' : IDL.Opt(IDL.Principal),\n 'fees' : IDL.Opt(fees),\n 'watchdog_canister' : IDL.Opt(IDL.Opt(IDL.Principal)),\n 'network' : IDL.Opt(network),\n 'stability_threshold' : IDL.Opt(IDL.Nat),\n 'syncing' : IDL.Opt(flag),\n 'burn_cycles' : IDL.Opt(flag),\n 'disable_api_if_not_fully_synced' : IDL.Opt(flag),\n });\n const address = IDL.Text;\n const get_balance_request = IDL.Record({\n 'network' : network,\n 'address' : address,\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n });\n const satoshi = IDL.Nat64;\n const block_height = IDL.Nat32;\n const get_block_headers_request = IDL.Record({\n 'start_height' : block_height,\n 'end_height' : IDL.Opt(block_height),\n 'network' : network,\n });\n const block_header = IDL.Vec(IDL.Nat8);\n const get_block_headers_response = IDL.Record({\n 'tip_height' : block_height,\n 'block_headers' : IDL.Vec(block_header),\n });\n const get_current_fee_percentiles_request = IDL.Record({\n 'network' : network,\n });\n const millisatoshi_per_byte = IDL.Nat64;\n const get_utxos_request = IDL.Record({\n 'network' : network,\n 'filter' : IDL.Opt(\n IDL.Variant({\n 'page' : IDL.Vec(IDL.Nat8),\n 'min_confirmations' : IDL.Nat32,\n })\n ),\n 'address' : address,\n });\n const block_hash = IDL.Vec(IDL.Nat8);\n const outpoint = IDL.Record({\n 'txid' : IDL.Vec(IDL.Nat8),\n 'vout' : IDL.Nat32,\n });\n const utxo = IDL.Record({\n 'height' : block_height,\n 'value' : satoshi,\n 'outpoint' : outpoint,\n });\n const get_utxos_response = IDL.Record({\n 'next_page' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n 'tip_height' : block_height,\n 'tip_block_hash' : block_hash,\n 'utxos' : IDL.Vec(utxo),\n });\n const send_transaction_request = IDL.Record({\n 'transaction' : IDL.Vec(IDL.Nat8),\n 'network' : network,\n });\n const config = IDL.Record({\n 'api_access' : flag,\n 'lazily_evaluate_fee_percentiles' : flag,\n 'blocks_source' : IDL.Principal,\n 'fees' : fees,\n 'watchdog_canister' : IDL.Opt(IDL.Principal),\n 'network' : network,\n 'stability_threshold' : IDL.Nat,\n 'syncing' : flag,\n 'burn_cycles' : flag,\n 'disable_api_if_not_fully_synced' : flag,\n });\n const set_config_request = IDL.Record({\n 'api_access' : IDL.Opt(flag),\n 'lazily_evaluate_fee_percentiles' : IDL.Opt(flag),\n 'fees' : IDL.Opt(fees),\n 'watchdog_canister' : IDL.Opt(IDL.Opt(IDL.Principal)),\n 'stability_threshold' : IDL.Opt(IDL.Nat),\n 'syncing' : IDL.Opt(flag),\n 'burn_cycles' : IDL.Opt(flag),\n 'disable_api_if_not_fully_synced' : IDL.Opt(flag),\n });\n return IDL.Service({\n 'bitcoin_get_balance' : IDL.Func([get_balance_request], [satoshi], []),\n 'bitcoin_get_balance_query' : IDL.Func(\n [get_balance_request],\n [satoshi],\n ['query'],\n ),\n 'bitcoin_get_block_headers' : IDL.Func(\n [get_block_headers_request],\n [get_block_headers_response],\n [],\n ),\n 'bitcoin_get_current_fee_percentiles' : IDL.Func(\n [get_current_fee_percentiles_request],\n [IDL.Vec(millisatoshi_per_byte)],\n [],\n ),\n 'bitcoin_get_utxos' : IDL.Func(\n [get_utxos_request],\n [get_utxos_response],\n [],\n ),\n 'bitcoin_get_utxos_query' : IDL.Func(\n [get_utxos_request],\n [get_utxos_response],\n ['query'],\n ),\n 'bitcoin_send_transaction' : IDL.Func([send_transaction_request], [], []),\n 'get_config' : IDL.Func([], [config], ['query']),\n 'set_config' : IDL.Func([set_config_request], [], []),\n });\n};\nexport const init = ({ IDL }) => {\n const flag = IDL.Variant({ 'disabled' : IDL.Null, 'enabled' : IDL.Null });\n const fees = IDL.Record({\n 'get_current_fee_percentiles' : IDL.Nat,\n 'get_utxos_maximum' : IDL.Nat,\n 'get_block_headers_cycles_per_ten_instructions' : IDL.Nat,\n 'get_current_fee_percentiles_maximum' : IDL.Nat,\n 'send_transaction_per_byte' : IDL.Nat,\n 'get_balance' : IDL.Nat,\n 'get_utxos_cycles_per_ten_instructions' : IDL.Nat,\n 'get_block_headers_base' : IDL.Nat,\n 'get_utxos_base' : IDL.Nat,\n 'get_balance_maximum' : IDL.Nat,\n 'send_transaction_base' : IDL.Nat,\n 'get_block_headers_maximum' : IDL.Nat,\n });\n const network = IDL.Variant({\n 'mainnet' : IDL.Null,\n 'regtest' : IDL.Null,\n 'testnet' : IDL.Null,\n });\n const init_config = IDL.Record({\n 'api_access' : IDL.Opt(flag),\n 'lazily_evaluate_fee_percentiles' : IDL.Opt(flag),\n 'blocks_source' : IDL.Opt(IDL.Principal),\n 'fees' : IDL.Opt(fees),\n 'watchdog_canister' : IDL.Opt(IDL.Opt(IDL.Principal)),\n 'network' : IDL.Opt(network),\n 'stability_threshold' : IDL.Opt(IDL.Nat),\n 'syncing' : IDL.Opt(flag),\n 'burn_cycles' : IDL.Opt(flag),\n 'disable_api_if_not_fully_synced' : IDL.Opt(flag),\n });\n return [init_config];\n};\n", "import { nonNullish, toNullable, type QueryParams } from \"@dfinity/utils\";\nimport type {\n get_balance_request,\n get_utxos_request,\n network,\n} from \"../../candid/bitcoin\";\n\nexport type BitcoinNetwork = \"testnet\" | \"mainnet\" | \"regtest\";\n\nconst mapBitcoinNetwork: Record<BitcoinNetwork, network> = {\n mainnet: { mainnet: null },\n testnet: { testnet: null },\n regtest: { regtest: null },\n};\n\nexport type GetUtxosParams = Omit<get_utxos_request, \"network\" | \"filter\"> & {\n network: BitcoinNetwork;\n filter?: { page: Uint8Array | number[] } | { minConfirmations: number };\n} & Omit<QueryParams, \"certified\">;\n\nexport const toGetUtxosParams = ({\n network,\n filter,\n ...rest\n}: GetUtxosParams): get_utxos_request => ({\n filter: nonNullish(filter)\n ? toNullable(\n \"minConfirmations\" in filter\n ? { min_confirmations: filter.minConfirmations }\n : { page: filter.page },\n )\n : toNullable(),\n network: network === \"testnet\" ? { testnet: null } : { mainnet: null },\n ...rest,\n});\n\nexport type GetBalanceParams = Omit<\n get_balance_request,\n \"network\" | \"min_confirmations\"\n> & {\n network: BitcoinNetwork;\n minConfirmations?: number;\n} & Omit<QueryParams, \"certified\">;\n\nexport const toGetBalanceParams = ({\n network,\n minConfirmations,\n ...rest\n}: GetBalanceParams): get_balance_request => ({\n min_confirmations: toNullable(minConfirmations),\n network: mapBitcoinNetwork[network],\n ...rest,\n});\n"],
5
- "mappings": "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",
6
- "names": ["Canister", "createServices", "idlFactory", "IDL", "flag", "fees", "network", "init_config", "address", "get_balance_request", "satoshi", "block_height", "get_block_headers_request", "block_header", "get_block_headers_response", "get_current_fee_percentiles_request", "millisatoshi_per_byte", "get_utxos_request", "block_hash", "outpoint", "utxo", "get_utxos_response", "send_transaction_request", "config", "set_config_request", "idlFactory", "IDL", "flag", "fees", "network", "init_config", "address", "get_balance_request", "satoshi", "block_height", "get_block_headers_request", "block_header", "get_block_headers_response", "get_current_fee_percentiles_request", "millisatoshi_per_byte", "get_utxos_request", "block_hash", "outpoint", "utxo", "get_utxos_response", "send_transaction_request", "config", "set_config_request", "nonNullish", "toNullable", "mapBitcoinNetwork", "toGetUtxosParams", "network", "filter", "rest", "toGetBalanceParams", "minConfirmations", "BitcoinCanister", "_BitcoinCanister", "Canister", "params", "bitcoin_get_utxos_query", "toGetUtxosParams", "bitcoin_get_balance_query", "toGetBalanceParams", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory"]
5
+ "mappings": "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",
6
+ "names": ["Canister", "createServices", "idlFactory", "IDL", "flag", "fees", "network", "init_config", "address", "get_balance_request", "satoshi", "block_height", "get_block_headers_request", "block_header", "get_block_headers_response", "get_current_fee_percentiles_request", "millisatoshi_per_byte", "get_utxos_request", "block_hash", "outpoint", "utxo", "get_utxos_response", "send_transaction_request", "config", "set_config_request", "idlFactory", "IDL", "flag", "fees", "network", "init_config", "address", "get_balance_request", "satoshi", "block_height", "get_block_headers_request", "block_header", "get_block_headers_response", "get_current_fee_percentiles_request", "millisatoshi_per_byte", "get_utxos_request", "block_hash", "outpoint", "utxo", "get_utxos_response", "send_transaction_request", "config", "set_config_request", "nonNullish", "toNullable", "mapBitcoinNetwork", "toGetUtxosParams", "network", "filter", "rest", "toGetBalanceParams", "minConfirmations", "BitcoinCanister", "_BitcoinCanister", "Canister", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory", "params", "bitcoin_get_utxos_query", "toGetUtxosParams", "bitcoin_get_balance_query", "toGetBalanceParams"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ import{Canister as D,createServices as tt,fromNullable as et,isNullish as rt,toNullable as o}from"@dfinity/utils";var H=({IDL:t})=>{let e=t.Variant({RestrictedTo:t.Vec(t.Principal),DepositsRestrictedTo:t.Vec(t.Principal),ReadOnly:t.Null,GeneralAvailability:t.Null}),r=t.Record({get_utxos_cache_expiration_seconds:t.Opt(t.Nat64),kyt_principal:t.Opt(t.Principal),mode:t.Opt(e),retrieve_btc_min_amount:t.Opt(t.Nat64),max_time_in_queue_nanos:t.Opt(t.Nat64),check_fee:t.Opt(t.Nat64),btc_checker_principal:t.Opt(t.Principal),min_confirmations:t.Opt(t.Nat32),kyt_fee:t.Opt(t.Nat64)}),c=t.Variant({Mainnet:t.Null,Regtest:t.Null,Testnet:t.Null}),i=t.Record({get_utxos_cache_expiration_seconds:t.Opt(t.Nat64),kyt_principal:t.Opt(t.Principal),ecdsa_key_name:t.Text,mode:e,retrieve_btc_min_amount:t.Nat64,ledger_id:t.Principal,max_time_in_queue_nanos:t.Nat64,btc_network:c,check_fee:t.Opt(t.Nat64),btc_checker_principal:t.Opt(t.Principal),min_confirmations:t.Opt(t.Nat32),kyt_fee:t.Opt(t.Nat64)}),R=t.Variant({Upgrade:t.Opt(r),Init:i}),u=t.Variant({stopped:t.Null,stopping:t.Null,running:t.Null}),x=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),v=t.Record({freezing_threshold:t.Nat,controllers:t.Vec(t.Principal),reserved_cycles_limit:t.Nat,log_visibility:x,wasm_memory_limit:t.Nat,memory_allocation:t.Nat,compute_allocation:t.Nat}),b=t.Record({response_payload_bytes_total:t.Nat,num_instructions_total:t.Nat,num_calls_total:t.Nat,request_payload_bytes_total:t.Nat}),y=t.Record({status:u,memory_size:t.Nat,cycles:t.Nat,settings:v,query_stats:b,idle_cycles_burned_per_day:t.Nat,module_hash:t.Opt(t.Vec(t.Nat8)),reserved_cycles:t.Nat}),n=t.Record({owner:t.Principal,subaccount:t.Opt(t.Vec(t.Nat8))}),a=t.Record({height:t.Nat32,value:t.Nat64,outpoint:t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32})}),s=t.Variant({CallFailed:t.Null,TaintedDestination:t.Record({kyt_fee:t.Nat64,kyt_provider:t.Principal})}),_=t.Variant({ValueTooSmall:t.Null,Quarantined:t.Null}),f=t.Variant({p2wsh_v0:t.Vec(t.Nat8),p2tr_v1:t.Vec(t.Nat8),p2sh:t.Vec(t.Nat8),p2wpkh_v0:t.Vec(t.Nat8),p2pkh:t.Vec(t.Nat8)}),g=t.Variant({received_utxos:t.Record({to_account:n,mint_txid:t.Opt(t.Nat64),utxos:t.Vec(a)}),schedule_deposit_reimbursement:t.Record({burn_block_index:t.Nat64,account:n,amount:t.Nat64,reason:s}),sent_transaction:t.Record({fee:t.Opt(t.Nat64),change_output:t.Opt(t.Record({value:t.Nat64,vout:t.Nat32})),txid:t.Vec(t.Nat8),utxos:t.Vec(a),requests:t.Vec(t.Nat64),submitted_at:t.Nat64}),distributed_kyt_fee:t.Record({block_index:t.Nat64,amount:t.Nat64,kyt_provider:t.Principal}),init:i,upgrade:r,retrieve_btc_kyt_failed:t.Record({block_index:t.Nat64,owner:t.Principal,uuid:t.Text,address:t.Text,amount:t.Nat64,kyt_provider:t.Principal}),suspended_utxo:t.Record({utxo:a,account:n,reason:_}),accepted_retrieve_btc_request:t.Record({received_at:t.Nat64,block_index:t.Nat64,address:f,reimbursement_account:t.Opt(n),amount:t.Nat64,kyt_provider:t.Opt(t.Principal)}),checked_utxo:t.Record({clean:t.Bool,utxo:a,uuid:t.Text,kyt_provider:t.Opt(t.Principal)}),removed_retrieve_btc_request:t.Record({block_index:t.Nat64}),confirmed_transaction:t.Record({txid:t.Vec(t.Nat8)}),replaced_transaction:t.Record({fee:t.Nat64,change_output:t.Record({value:t.Nat64,vout:t.Nat32}),old_txid:t.Vec(t.Nat8),new_txid:t.Vec(t.Nat8),submitted_at:t.Nat64}),checked_utxo_v2:t.Record({utxo:a,account:n}),ignored_utxo:t.Record({utxo:a}),checked_utxo_mint_unknown:t.Record({utxo:a,account:n}),reimbursed_failed_deposit:t.Record({burn_block_index:t.Nat64,mint_block_index:t.Nat64})}),O=t.Record({timestamp:t.Opt(t.Nat64),payload:g}),V=t.Record({retrieve_btc_min_amount:t.Nat64,min_confirmations:t.Nat32,kyt_fee:t.Nat64}),k=t.Record({address:t.Text,amount:t.Nat64}),p=t.Record({block_index:t.Nat64}),h=t.Variant({MalformedAddress:t.Text,GenericError:t.Record({error_message:t.Text,error_code:t.Nat64}),TemporarilyUnavailable:t.Text,AlreadyProcessing:t.Null,AmountTooLow:t.Nat64,InsufficientFunds:t.Record({balance:t.Nat64})}),w=t.Variant({Signing:t.Null,Confirmed:t.Record({txid:t.Vec(t.Nat8)}),Sending:t.Record({txid:t.Vec(t.Nat8)}),AmountTooLow:t.Null,Unknown:t.Null,Submitted:t.Record({txid:t.Vec(t.Nat8)}),Pending:t.Null}),P=t.Record({account:n,amount:t.Nat64,reason:s}),T=t.Record({account:n,mint_block_index:t.Nat64,amount:t.Nat64,reason:s}),N=t.Variant({Signing:t.Null,Confirmed:t.Record({txid:t.Vec(t.Nat8)}),Sending:t.Record({txid:t.Vec(t.Nat8)}),AmountTooLow:t.Null,WillReimburse:P,Unknown:t.Null,Submitted:t.Record({txid:t.Vec(t.Nat8)}),Reimbursed:T,Pending:t.Null}),B=t.Record({from_subaccount:t.Opt(t.Vec(t.Nat8)),address:t.Text,amount:t.Nat64}),A=t.Variant({MalformedAddress:t.Text,GenericError:t.Record({error_message:t.Text,error_code:t.Nat64}),TemporarilyUnavailable:t.Text,InsufficientAllowance:t.Record({allowance:t.Nat64}),AlreadyProcessing:t.Null,AmountTooLow:t.Nat64,InsufficientFunds:t.Record({balance:t.Nat64})}),U=t.Variant({ValueTooSmall:a,Tainted:a,Minted:t.Record({minted_amount:t.Nat64,block_index:t.Nat64,utxo:a}),Checked:a}),S=t.Nat64,F=t.Record({utxo:a,earliest_retry:S,reason:_}),q=t.Record({confirmations:t.Nat32,value:t.Nat64,outpoint:t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32})}),C=t.Variant({GenericError:t.Record({error_message:t.Text,error_code:t.Nat64}),TemporarilyUnavailable:t.Text,AlreadyProcessing:t.Null,NoNewUtxos:t.Record({suspended_utxos:t.Opt(t.Vec(F)),required_confirmations:t.Nat32,pending_utxos:t.Opt(t.Vec(q)),current_confirmations:t.Opt(t.Nat32)})});return t.Service({estimate_withdrawal_fee:t.Func([t.Record({amount:t.Opt(t.Nat64)})],[t.Record({minter_fee:t.Nat64,bitcoin_fee:t.Nat64})],[]),get_btc_address:t.Func([t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(t.Vec(t.Nat8))})],[t.Text],[]),get_canister_status:t.Func([],[y],[]),get_deposit_fee:t.Func([],[t.Nat64],[]),get_events:t.Func([t.Record({start:t.Nat64,length:t.Nat64})],[t.Vec(O)],[]),get_known_utxos:t.Func([t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(t.Vec(t.Nat8))})],[t.Vec(a)],[]),get_minter_info:t.Func([],[V],[]),get_withdrawal_account:t.Func([],[n],[]),retrieve_btc:t.Func([k],[t.Variant({Ok:p,Err:h})],[]),retrieve_btc_status:t.Func([t.Record({block_index:t.Nat64})],[w],[]),retrieve_btc_status_v2:t.Func([t.Record({block_index:t.Nat64})],[N],[]),retrieve_btc_status_v2_by_account:t.Func([t.Opt(n)],[t.Vec(t.Record({block_index:t.Nat64,status_v2:t.Opt(N)}))],[]),retrieve_btc_with_approval:t.Func([B],[t.Variant({Ok:p,Err:A})],[]),update_balance:t.Func([t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(t.Vec(t.Nat8))})],[t.Variant({Ok:t.Vec(U),Err:C})],[])})};var X=({IDL:t})=>{let e=t.Variant({RestrictedTo:t.Vec(t.Principal),DepositsRestrictedTo:t.Vec(t.Principal),ReadOnly:t.Null,GeneralAvailability:t.Null}),r=t.Record({get_utxos_cache_expiration_seconds:t.Opt(t.Nat64),kyt_principal:t.Opt(t.Principal),mode:t.Opt(e),retrieve_btc_min_amount:t.Opt(t.Nat64),max_time_in_queue_nanos:t.Opt(t.Nat64),check_fee:t.Opt(t.Nat64),btc_checker_principal:t.Opt(t.Principal),min_confirmations:t.Opt(t.Nat32),kyt_fee:t.Opt(t.Nat64)}),c=t.Variant({Mainnet:t.Null,Regtest:t.Null,Testnet:t.Null}),i=t.Record({get_utxos_cache_expiration_seconds:t.Opt(t.Nat64),kyt_principal:t.Opt(t.Principal),ecdsa_key_name:t.Text,mode:e,retrieve_btc_min_amount:t.Nat64,ledger_id:t.Principal,max_time_in_queue_nanos:t.Nat64,btc_network:c,check_fee:t.Opt(t.Nat64),btc_checker_principal:t.Opt(t.Principal),min_confirmations:t.Opt(t.Nat32),kyt_fee:t.Opt(t.Nat64)}),R=t.Variant({Upgrade:t.Opt(r),Init:i}),u=t.Variant({stopped:t.Null,stopping:t.Null,running:t.Null}),x=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),v=t.Record({freezing_threshold:t.Nat,controllers:t.Vec(t.Principal),reserved_cycles_limit:t.Nat,log_visibility:x,wasm_memory_limit:t.Nat,memory_allocation:t.Nat,compute_allocation:t.Nat}),b=t.Record({response_payload_bytes_total:t.Nat,num_instructions_total:t.Nat,num_calls_total:t.Nat,request_payload_bytes_total:t.Nat}),y=t.Record({status:u,memory_size:t.Nat,cycles:t.Nat,settings:v,query_stats:b,idle_cycles_burned_per_day:t.Nat,module_hash:t.Opt(t.Vec(t.Nat8)),reserved_cycles:t.Nat}),n=t.Record({owner:t.Principal,subaccount:t.Opt(t.Vec(t.Nat8))}),a=t.Record({height:t.Nat32,value:t.Nat64,outpoint:t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32})}),s=t.Variant({CallFailed:t.Null,TaintedDestination:t.Record({kyt_fee:t.Nat64,kyt_provider:t.Principal})}),_=t.Variant({ValueTooSmall:t.Null,Quarantined:t.Null}),f=t.Variant({p2wsh_v0:t.Vec(t.Nat8),p2tr_v1:t.Vec(t.Nat8),p2sh:t.Vec(t.Nat8),p2wpkh_v0:t.Vec(t.Nat8),p2pkh:t.Vec(t.Nat8)}),g=t.Variant({received_utxos:t.Record({to_account:n,mint_txid:t.Opt(t.Nat64),utxos:t.Vec(a)}),schedule_deposit_reimbursement:t.Record({burn_block_index:t.Nat64,account:n,amount:t.Nat64,reason:s}),sent_transaction:t.Record({fee:t.Opt(t.Nat64),change_output:t.Opt(t.Record({value:t.Nat64,vout:t.Nat32})),txid:t.Vec(t.Nat8),utxos:t.Vec(a),requests:t.Vec(t.Nat64),submitted_at:t.Nat64}),distributed_kyt_fee:t.Record({block_index:t.Nat64,amount:t.Nat64,kyt_provider:t.Principal}),init:i,upgrade:r,retrieve_btc_kyt_failed:t.Record({block_index:t.Nat64,owner:t.Principal,uuid:t.Text,address:t.Text,amount:t.Nat64,kyt_provider:t.Principal}),suspended_utxo:t.Record({utxo:a,account:n,reason:_}),accepted_retrieve_btc_request:t.Record({received_at:t.Nat64,block_index:t.Nat64,address:f,reimbursement_account:t.Opt(n),amount:t.Nat64,kyt_provider:t.Opt(t.Principal)}),checked_utxo:t.Record({clean:t.Bool,utxo:a,uuid:t.Text,kyt_provider:t.Opt(t.Principal)}),removed_retrieve_btc_request:t.Record({block_index:t.Nat64}),confirmed_transaction:t.Record({txid:t.Vec(t.Nat8)}),replaced_transaction:t.Record({fee:t.Nat64,change_output:t.Record({value:t.Nat64,vout:t.Nat32}),old_txid:t.Vec(t.Nat8),new_txid:t.Vec(t.Nat8),submitted_at:t.Nat64}),checked_utxo_v2:t.Record({utxo:a,account:n}),ignored_utxo:t.Record({utxo:a}),checked_utxo_mint_unknown:t.Record({utxo:a,account:n}),reimbursed_failed_deposit:t.Record({burn_block_index:t.Nat64,mint_block_index:t.Nat64})}),O=t.Record({timestamp:t.Opt(t.Nat64),payload:g}),V=t.Record({retrieve_btc_min_amount:t.Nat64,min_confirmations:t.Nat32,kyt_fee:t.Nat64}),k=t.Record({address:t.Text,amount:t.Nat64}),p=t.Record({block_index:t.Nat64}),h=t.Variant({MalformedAddress:t.Text,GenericError:t.Record({error_message:t.Text,error_code:t.Nat64}),TemporarilyUnavailable:t.Text,AlreadyProcessing:t.Null,AmountTooLow:t.Nat64,InsufficientFunds:t.Record({balance:t.Nat64})}),w=t.Variant({Signing:t.Null,Confirmed:t.Record({txid:t.Vec(t.Nat8)}),Sending:t.Record({txid:t.Vec(t.Nat8)}),AmountTooLow:t.Null,Unknown:t.Null,Submitted:t.Record({txid:t.Vec(t.Nat8)}),Pending:t.Null}),P=t.Record({account:n,amount:t.Nat64,reason:s}),T=t.Record({account:n,mint_block_index:t.Nat64,amount:t.Nat64,reason:s}),N=t.Variant({Signing:t.Null,Confirmed:t.Record({txid:t.Vec(t.Nat8)}),Sending:t.Record({txid:t.Vec(t.Nat8)}),AmountTooLow:t.Null,WillReimburse:P,Unknown:t.Null,Submitted:t.Record({txid:t.Vec(t.Nat8)}),Reimbursed:T,Pending:t.Null}),B=t.Record({from_subaccount:t.Opt(t.Vec(t.Nat8)),address:t.Text,amount:t.Nat64}),A=t.Variant({MalformedAddress:t.Text,GenericError:t.Record({error_message:t.Text,error_code:t.Nat64}),TemporarilyUnavailable:t.Text,InsufficientAllowance:t.Record({allowance:t.Nat64}),AlreadyProcessing:t.Null,AmountTooLow:t.Nat64,InsufficientFunds:t.Record({balance:t.Nat64})}),U=t.Variant({ValueTooSmall:a,Tainted:a,Minted:t.Record({minted_amount:t.Nat64,block_index:t.Nat64,utxo:a}),Checked:a}),S=t.Nat64,F=t.Record({utxo:a,earliest_retry:S,reason:_}),q=t.Record({confirmations:t.Nat32,value:t.Nat64,outpoint:t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32})}),C=t.Variant({GenericError:t.Record({error_message:t.Text,error_code:t.Nat64}),TemporarilyUnavailable:t.Text,AlreadyProcessing:t.Null,NoNewUtxos:t.Record({suspended_utxos:t.Opt(t.Vec(F)),required_confirmations:t.Nat32,pending_utxos:t.Opt(t.Vec(q)),current_confirmations:t.Opt(t.Nat32)})});return t.Service({estimate_withdrawal_fee:t.Func([t.Record({amount:t.Opt(t.Nat64)})],[t.Record({minter_fee:t.Nat64,bitcoin_fee:t.Nat64})],["query"]),get_btc_address:t.Func([t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(t.Vec(t.Nat8))})],[t.Text],[]),get_canister_status:t.Func([],[y],[]),get_deposit_fee:t.Func([],[t.Nat64],["query"]),get_events:t.Func([t.Record({start:t.Nat64,length:t.Nat64})],[t.Vec(O)],["query"]),get_known_utxos:t.Func([t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(t.Vec(t.Nat8))})],[t.Vec(a)],["query"]),get_minter_info:t.Func([],[V],["query"]),get_withdrawal_account:t.Func([],[n],[]),retrieve_btc:t.Func([k],[t.Variant({Ok:p,Err:h})],[]),retrieve_btc_status:t.Func([t.Record({block_index:t.Nat64})],[w],["query"]),retrieve_btc_status_v2:t.Func([t.Record({block_index:t.Nat64})],[N],["query"]),retrieve_btc_status_v2_by_account:t.Func([t.Opt(n)],[t.Vec(t.Record({block_index:t.Nat64,status_v2:t.Opt(N)}))],["query"]),retrieve_btc_with_approval:t.Func([B],[t.Variant({Ok:p,Err:A})],[]),update_balance:t.Func([t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(t.Vec(t.Nat8))})],[t.Variant({Ok:t.Vec(U),Err:C})],[])})};import{fromNullable as L,nonNullish as K}from"@dfinity/utils";var d=class extends Error{},E=class extends d{},W=class extends d{},m=class extends d{},M=class extends m{pendingUtxos;requiredConfirmations;constructor({pending_utxos:e,required_confirmations:r}){super(),this.pendingUtxos=L(e)??[],this.requiredConfirmations=r}},l=class extends d{},G=class extends l{},$=class extends l{},Q=class extends l{},z=class extends l{},J=t=>{if("GenericError"in t){let{GenericError:{error_message:e,error_code:r}}=t;return new d(`${e} (${r})`)}if("TemporarilyUnavailable"in t)return new E(t.TemporarilyUnavailable);if("AlreadyProcessing"in t)return new W},Y=t=>{let e=J(t);return K(e)?e:"NoNewUtxos"in t?new M(t.NoNewUtxos):new m(`Unsupported response type in minter.updateBalance ${JSON.stringify(t)}`)},j=t=>{let e=J(t);return K(e)?e:"MalformedAddress"in t?new G(t.MalformedAddress):"AmountTooLow"in t?new $(`${t.AmountTooLow}`):"InsufficientFunds"in t?new Q(`${t.InsufficientFunds.balance}`):new l(`Unsupported response type in minter.retrieveBtc ${JSON.stringify(t)}`)},Z=t=>{let e=J(t);return K(e)?e:"InsufficientAllowance"in t?new z(`${t.InsufficientAllowance.allowance}`):j(t)};var I=class t extends D{static create(e){let{service:r,certifiedService:c,canisterId:i}=tt({options:e,idlFactory:X,certifiedIdlFactory:H});return new t(i,r,c)}getBtcAddress=({owner:e,subaccount:r})=>this.caller({certified:!0}).get_btc_address({owner:o(e),subaccount:o(r)});updateBalance=async({owner:e,subaccount:r})=>{let c=await this.caller({certified:!0}).update_balance({owner:o(e),subaccount:o(r)});if("Err"in c)throw Y(c.Err);return c.Ok};getWithdrawalAccount=()=>this.caller({certified:!0}).get_withdrawal_account();retrieveBtc=async e=>{let r=await this.caller({certified:!0}).retrieve_btc(e);if("Err"in r)throw j(r.Err);return r.Ok};retrieveBtcWithApproval=async({address:e,amount:r,fromSubaccount:c})=>{let i=await this.caller({certified:!0}).retrieve_btc_with_approval({address:e,amount:r,from_subaccount:o(c)});if("Err"in i)throw Z(i.Err);return i.Ok};retrieveBtcStatus=({transactionId:e,certified:r})=>this.caller({certified:r}).retrieve_btc_status({block_index:e});retrieveBtcStatusV2ByAccount=async({account:e,certified:r})=>{let{retrieve_btc_status_v2_by_account:c}=this.caller({certified:r});return(await c(rt(e)?[]:[{owner:e.owner,subaccount:o(e.subaccount)}])).map(({block_index:R,status_v2:u})=>({id:R,status:et(u)}))};estimateWithdrawalFee=({certified:e,amount:r})=>this.caller({certified:e}).estimate_withdrawal_fee({amount:o(r)});getMinterInfo=({certified:e})=>this.caller({certified:e}).get_minter_info();getKnownUtxos=({owner:e,subaccount:r,certified:c})=>{let{get_known_utxos:i}=this.caller({certified:c});return i({owner:o(e),subaccount:o(r)})}};export{d as a,E as b,W as c,m as d,M as e,l as f,G as g,$ as h,Q as i,z as j,Y as k,j as l,Z as m,I as n};
2
+ //# sourceMappingURL=chunk-HAU7JR75.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/minter.canister.ts", "../../candid/minter.certified.idl.js", "../../candid/minter.idl.js", "../../src/errors/minter.errors.ts"],
4
+ "sourcesContent": ["import {\n Canister,\n createServices,\n fromNullable,\n isNullish,\n toNullable,\n type QueryParams,\n} from \"@dfinity/utils\";\nimport type {\n _SERVICE as CkBTCMinterService,\n MinterInfo,\n RetrieveBtcOk,\n RetrieveBtcStatus,\n Utxo,\n Account as WithdrawalAccount,\n} from \"../candid/minter\";\nimport { idlFactory as certifiedIdlFactory } from \"../candid/minter.certified.idl\";\nimport { idlFactory } from \"../candid/minter.idl\";\nimport {\n createRetrieveBtcError,\n createRetrieveBtcWithApprovalError,\n createUpdateBalanceError,\n} from \"./errors/minter.errors\";\nimport type { CkBTCCanisterOptions } from \"./types/canister.options\";\nimport type {\n EstimateWithdrawalFeeParams,\n GetBTCAddressParams,\n GetKnownUtxosParams,\n RetrieveBtcParams,\n RetrieveBtcStatusV2ByAccountParams,\n UpdateBalanceParams,\n} from \"./types/minter.params\";\nimport type {\n EstimateWithdrawalFee,\n RetrieveBtcResponse,\n RetrieveBtcStatusV2WithId,\n RetrieveBtcWithApprovalResponse,\n UpdateBalanceOk,\n UpdateBalanceResponse,\n} from \"./types/minter.responses\";\n\nexport class CkBTCMinterCanister extends Canister<CkBTCMinterService> {\n static create(options: CkBTCCanisterOptions<CkBTCMinterService>) {\n const { service, certifiedService, canisterId } =\n createServices<CkBTCMinterService>({\n options,\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new CkBTCMinterCanister(canisterId, service, certifiedService);\n }\n\n /**\n * Returns a BTC address for a given account.\n *\n * Note: an update call is required by the Minter canister.\n *\n * @param {GetBTCAddressParams} params The parameters for which a BTC address should be resolved.\n * @param {Principal} params.owner The owner for which the BTC address should be generated. If not provided, the `caller` will be use instead.\n * @param {Uint8Array} params.subaccount An optional subaccount to compute the address.\n * @returns {Promise<string>} The BTC address of the given account.\n */\n getBtcAddress = ({\n owner,\n subaccount,\n }: GetBTCAddressParams): Promise<string> =>\n this.caller({ certified: true }).get_btc_address({\n owner: toNullable(owner),\n subaccount: toNullable(subaccount),\n });\n\n /**\n * Notify the minter about the bitcoin transfer.\n *\n * Upon successful notification, new ckBTC should be available on the targeted address.\n *\n * @param {UpdateBalanceParams} params The parameters are the address to which bitcoin where transferred.\n * @param {Principal} params.owner The owner of the address. If not provided, the `caller` will be use instead.\n * @param {Principal} params.subaccount An optional subaccount of the address.\n * @returns {Promise<UpdateBalanceOk>} The result of the balance update.\n */\n updateBalance = async ({\n owner,\n subaccount,\n }: UpdateBalanceParams): Promise<UpdateBalanceOk> => {\n const response: UpdateBalanceResponse = await this.caller({\n certified: true,\n }).update_balance({\n owner: toNullable(owner),\n subaccount: toNullable(subaccount),\n });\n\n if (\"Err\" in response) {\n throw createUpdateBalanceError(response.Err);\n }\n\n return response.Ok;\n };\n\n /**\n * Returns the account to which the caller should deposit ckBTC before withdrawing BTC using the [retrieveBtc] endpoint.\n *\n * @returns {Promise<Account>} The account to which ckBTC needs to be transferred. Provide corresponding information to map an Icrc1 account.\n */\n getWithdrawalAccount = (): Promise<WithdrawalAccount> =>\n this.caller({ certified: true }).get_withdrawal_account();\n\n /**\n * Submits a request to convert ckBTC to BTC.\n *\n * Note:\n *\n * The BTC retrieval process is slow. Instead of synchronously waiting for a BTC transaction to settle, this method returns a request ([block_index]) that the caller can use to query the request status.\n *\n * Preconditions:\n *\n * The caller deposited the requested amount in ckBTC to the account that the [getWithdrawalAccount] endpoint returns.\n *\n * @param {RetrieveBtcParams} params The parameters are the bitcoin address and amount to convert.\n * @param {string} params.address The bitcoin address.\n * @param {bigint} params.amount The ckBTC amount.\n * @returns {Promise<RetrieveBtcOk>} The result or the operation.\n */\n retrieveBtc = async (params: RetrieveBtcParams): Promise<RetrieveBtcOk> => {\n const response: RetrieveBtcResponse = await this.caller({\n certified: true,\n }).retrieve_btc(params);\n\n if (\"Err\" in response) {\n throw createRetrieveBtcError(response.Err);\n }\n\n return response.Ok;\n };\n\n /**\n * Submits a request to convert ckBTC to BTC after making an ICRC-2 approval.\n *\n * # Note\n *\n * The BTC retrieval process is slow. Instead of synchronously waiting for a BTC transaction to settle, this method returns a request ([block_index]) that the caller can use to query the request status.\n *\n * # Preconditions\n *\n * The caller allowed the minter's principal to spend its funds using\n * [icrc2_approve] on the ckBTC ledger.\n *\n * @param {string} params.address The bitcoin address.\n * @param {bigint} params.amount The ckBTC amount.\n * @param {Uint8Array} params.fromSubaccount An optional subaccount from which\n * the ckBTC should be transferred.\n * @returns {Promise<RetrieveBtcOk>} The result or the operation.\n */\n retrieveBtcWithApproval = async ({\n address,\n amount,\n fromSubaccount,\n }: {\n address: string;\n amount: bigint;\n fromSubaccount?: Uint8Array;\n }): Promise<RetrieveBtcOk> => {\n const response: RetrieveBtcWithApprovalResponse = await this.caller({\n certified: true,\n }).retrieve_btc_with_approval({\n address,\n amount,\n from_subaccount: toNullable(fromSubaccount),\n });\n\n if (\"Err\" in response) {\n throw createRetrieveBtcWithApprovalError(response.Err);\n }\n\n return response.Ok;\n };\n\n /**\n * Returns the status of a specific BTC withdrawal based on the transaction ID\n * of the corresponding burn transaction.\n *\n * @param {bigint} transactionId The ID of the corresponding burn transaction.\n * @param {boolean} certified query or update call\n * @returns {Promise<RetrieveBtcStatus>} The status of the BTC retrieval request.\n */\n retrieveBtcStatus = ({\n transactionId,\n certified,\n }: {\n transactionId: bigint;\n certified: boolean;\n }): Promise<RetrieveBtcStatus> =>\n this.caller({\n certified,\n }).retrieve_btc_status({ block_index: transactionId });\n\n /**\n * Returns the status of all BTC withdrawals for an account.\n *\n * @param {boolean} certified query or update call\n * @param {MinterAccount} account an optional account to retrieve the statuses. If not provided, statuses for the caller are retrieved.\n * @returns {Promise<RetrieveBtcStatusV2WithId[]>} The statuses of the BTC retrieval requests.\n */\n retrieveBtcStatusV2ByAccount = async ({\n account,\n certified,\n }: RetrieveBtcStatusV2ByAccountParams): Promise<\n RetrieveBtcStatusV2WithId[]\n > => {\n const { retrieve_btc_status_v2_by_account } = this.caller({\n certified,\n });\n\n const statuses = await retrieve_btc_status_v2_by_account(\n isNullish(account)\n ? []\n : [\n {\n owner: account.owner,\n subaccount: toNullable(account.subaccount),\n },\n ],\n );\n\n return statuses.map(({ block_index, status_v2 }) => ({\n id: block_index,\n status: fromNullable(status_v2),\n }));\n };\n\n /**\n * Returns an estimation of the user's fee (in Satoshi) for a retrieve_btc request based on the current status of the Bitcoin network and the fee related to the minter.\n *\n * @param {RetrieveBtcParams} params The parameters to estimate the fee.\n * @param {boolean} params.certified query or update call\n * @param {bigint | undefined} params.amount The optional amount for which the fee should be estimated.\n */\n estimateWithdrawalFee = ({\n certified,\n amount,\n }: EstimateWithdrawalFeeParams): Promise<EstimateWithdrawalFee> =>\n this.caller({\n certified,\n }).estimate_withdrawal_fee({ amount: toNullable(amount) });\n\n /**\n * Returns internal minter parameters such as the minimal amount to retrieve BTC, minimal number of confirmations or KYT fee.\n *\n * @param {QueryParams} params The parameters to get the minter info.\n * @param {boolean} params.certified query or update call\n */\n getMinterInfo = ({ certified }: QueryParams): Promise<MinterInfo> =>\n this.caller({\n certified,\n }).get_minter_info();\n\n /**\n * Returns UTXOs of the given account known by the minter.\n *\n * @param {GetKnownUtxosParams} params The parameters for which the known utxos should be resolved.\n * @param {Principal} params.owner The owner of the account. Note that if not provided, the `caller` would be used by the minter instead.\n * @param {Uint8Array} params.subaccount An optional subaccount.\n * @returns {Promise<Utxo[]>} The known utxos (with no guarantee in the ordering).\n */\n getKnownUtxos = ({\n owner,\n subaccount,\n certified,\n }: GetKnownUtxosParams): Promise<Utxo[]> => {\n const { get_known_utxos } = this.caller({ certified });\n\n return get_known_utxos({\n owner: toNullable(owner),\n subaccount: toNullable(subaccount),\n });\n };\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/ckbtc/candid/minter.did */\nexport const idlFactory = ({ IDL }) => {\n const Mode = IDL.Variant({\n 'RestrictedTo' : IDL.Vec(IDL.Principal),\n 'DepositsRestrictedTo' : IDL.Vec(IDL.Principal),\n 'ReadOnly' : IDL.Null,\n 'GeneralAvailability' : IDL.Null,\n });\n const UpgradeArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'mode' : IDL.Opt(Mode),\n 'retrieve_btc_min_amount' : IDL.Opt(IDL.Nat64),\n 'max_time_in_queue_nanos' : IDL.Opt(IDL.Nat64),\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const BtcNetwork = IDL.Variant({\n 'Mainnet' : IDL.Null,\n 'Regtest' : IDL.Null,\n 'Testnet' : IDL.Null,\n });\n const InitArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'ecdsa_key_name' : IDL.Text,\n 'mode' : Mode,\n 'retrieve_btc_min_amount' : IDL.Nat64,\n 'ledger_id' : IDL.Principal,\n 'max_time_in_queue_nanos' : IDL.Nat64,\n 'btc_network' : BtcNetwork,\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const MinterArg = IDL.Variant({\n 'Upgrade' : IDL.Opt(UpgradeArgs),\n 'Init' : InitArgs,\n });\n const CanisterStatusType = IDL.Variant({\n 'stopped' : IDL.Null,\n 'stopping' : IDL.Null,\n 'running' : IDL.Null,\n });\n const LogVisibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n 'allowed_viewers' : IDL.Vec(IDL.Principal),\n });\n const DefiniteCanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Nat,\n 'controllers' : IDL.Vec(IDL.Principal),\n 'reserved_cycles_limit' : IDL.Nat,\n 'log_visibility' : LogVisibility,\n 'wasm_memory_limit' : IDL.Nat,\n 'memory_allocation' : IDL.Nat,\n 'compute_allocation' : IDL.Nat,\n });\n const QueryStats = IDL.Record({\n 'response_payload_bytes_total' : IDL.Nat,\n 'num_instructions_total' : IDL.Nat,\n 'num_calls_total' : IDL.Nat,\n 'request_payload_bytes_total' : IDL.Nat,\n });\n const CanisterStatusResponse = IDL.Record({\n 'status' : CanisterStatusType,\n 'memory_size' : IDL.Nat,\n 'cycles' : IDL.Nat,\n 'settings' : DefiniteCanisterSettings,\n 'query_stats' : QueryStats,\n 'idle_cycles_burned_per_day' : IDL.Nat,\n 'module_hash' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n 'reserved_cycles' : IDL.Nat,\n });\n const Account = IDL.Record({\n 'owner' : IDL.Principal,\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const Utxo = IDL.Record({\n 'height' : IDL.Nat32,\n 'value' : IDL.Nat64,\n 'outpoint' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8), 'vout' : IDL.Nat32 }),\n });\n const ReimbursementReason = IDL.Variant({\n 'CallFailed' : IDL.Null,\n 'TaintedDestination' : IDL.Record({\n 'kyt_fee' : IDL.Nat64,\n 'kyt_provider' : IDL.Principal,\n }),\n });\n const SuspendedReason = IDL.Variant({\n 'ValueTooSmall' : IDL.Null,\n 'Quarantined' : IDL.Null,\n });\n const BitcoinAddress = IDL.Variant({\n 'p2wsh_v0' : IDL.Vec(IDL.Nat8),\n 'p2tr_v1' : IDL.Vec(IDL.Nat8),\n 'p2sh' : IDL.Vec(IDL.Nat8),\n 'p2wpkh_v0' : IDL.Vec(IDL.Nat8),\n 'p2pkh' : IDL.Vec(IDL.Nat8),\n });\n const EventType = IDL.Variant({\n 'received_utxos' : IDL.Record({\n 'to_account' : Account,\n 'mint_txid' : IDL.Opt(IDL.Nat64),\n 'utxos' : IDL.Vec(Utxo),\n }),\n 'schedule_deposit_reimbursement' : IDL.Record({\n 'burn_block_index' : IDL.Nat64,\n 'account' : Account,\n 'amount' : IDL.Nat64,\n 'reason' : ReimbursementReason,\n }),\n 'sent_transaction' : IDL.Record({\n 'fee' : IDL.Opt(IDL.Nat64),\n 'change_output' : IDL.Opt(\n IDL.Record({ 'value' : IDL.Nat64, 'vout' : IDL.Nat32 })\n ),\n 'txid' : IDL.Vec(IDL.Nat8),\n 'utxos' : IDL.Vec(Utxo),\n 'requests' : IDL.Vec(IDL.Nat64),\n 'submitted_at' : IDL.Nat64,\n }),\n 'distributed_kyt_fee' : IDL.Record({\n 'block_index' : IDL.Nat64,\n 'amount' : IDL.Nat64,\n 'kyt_provider' : IDL.Principal,\n }),\n 'init' : InitArgs,\n 'upgrade' : UpgradeArgs,\n 'retrieve_btc_kyt_failed' : IDL.Record({\n 'block_index' : IDL.Nat64,\n 'owner' : IDL.Principal,\n 'uuid' : IDL.Text,\n 'address' : IDL.Text,\n 'amount' : IDL.Nat64,\n 'kyt_provider' : IDL.Principal,\n }),\n 'suspended_utxo' : IDL.Record({\n 'utxo' : Utxo,\n 'account' : Account,\n 'reason' : SuspendedReason,\n }),\n 'accepted_retrieve_btc_request' : IDL.Record({\n 'received_at' : IDL.Nat64,\n 'block_index' : IDL.Nat64,\n 'address' : BitcoinAddress,\n 'reimbursement_account' : IDL.Opt(Account),\n 'amount' : IDL.Nat64,\n 'kyt_provider' : IDL.Opt(IDL.Principal),\n }),\n 'checked_utxo' : IDL.Record({\n 'clean' : IDL.Bool,\n 'utxo' : Utxo,\n 'uuid' : IDL.Text,\n 'kyt_provider' : IDL.Opt(IDL.Principal),\n }),\n 'removed_retrieve_btc_request' : IDL.Record({ 'block_index' : IDL.Nat64 }),\n 'confirmed_transaction' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'replaced_transaction' : IDL.Record({\n 'fee' : IDL.Nat64,\n 'change_output' : IDL.Record({ 'value' : IDL.Nat64, 'vout' : IDL.Nat32 }),\n 'old_txid' : IDL.Vec(IDL.Nat8),\n 'new_txid' : IDL.Vec(IDL.Nat8),\n 'submitted_at' : IDL.Nat64,\n }),\n 'checked_utxo_v2' : IDL.Record({ 'utxo' : Utxo, 'account' : Account }),\n 'ignored_utxo' : IDL.Record({ 'utxo' : Utxo }),\n 'checked_utxo_mint_unknown' : IDL.Record({\n 'utxo' : Utxo,\n 'account' : Account,\n }),\n 'reimbursed_failed_deposit' : IDL.Record({\n 'burn_block_index' : IDL.Nat64,\n 'mint_block_index' : IDL.Nat64,\n }),\n });\n const Event = IDL.Record({\n 'timestamp' : IDL.Opt(IDL.Nat64),\n 'payload' : EventType,\n });\n const MinterInfo = IDL.Record({\n 'retrieve_btc_min_amount' : IDL.Nat64,\n 'min_confirmations' : IDL.Nat32,\n 'kyt_fee' : IDL.Nat64,\n });\n const RetrieveBtcArgs = IDL.Record({\n 'address' : IDL.Text,\n 'amount' : IDL.Nat64,\n });\n const RetrieveBtcOk = IDL.Record({ 'block_index' : IDL.Nat64 });\n const RetrieveBtcError = IDL.Variant({\n 'MalformedAddress' : IDL.Text,\n 'GenericError' : IDL.Record({\n 'error_message' : IDL.Text,\n 'error_code' : IDL.Nat64,\n }),\n 'TemporarilyUnavailable' : IDL.Text,\n 'AlreadyProcessing' : IDL.Null,\n 'AmountTooLow' : IDL.Nat64,\n 'InsufficientFunds' : IDL.Record({ 'balance' : IDL.Nat64 }),\n });\n const RetrieveBtcStatus = IDL.Variant({\n 'Signing' : IDL.Null,\n 'Confirmed' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Sending' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'AmountTooLow' : IDL.Null,\n 'Unknown' : IDL.Null,\n 'Submitted' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Pending' : IDL.Null,\n });\n const ReimbursementRequest = IDL.Record({\n 'account' : Account,\n 'amount' : IDL.Nat64,\n 'reason' : ReimbursementReason,\n });\n const ReimbursedDeposit = IDL.Record({\n 'account' : Account,\n 'mint_block_index' : IDL.Nat64,\n 'amount' : IDL.Nat64,\n 'reason' : ReimbursementReason,\n });\n const RetrieveBtcStatusV2 = IDL.Variant({\n 'Signing' : IDL.Null,\n 'Confirmed' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Sending' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'AmountTooLow' : IDL.Null,\n 'WillReimburse' : ReimbursementRequest,\n 'Unknown' : IDL.Null,\n 'Submitted' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Reimbursed' : ReimbursedDeposit,\n 'Pending' : IDL.Null,\n });\n const RetrieveBtcWithApprovalArgs = IDL.Record({\n 'from_subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n 'address' : IDL.Text,\n 'amount' : IDL.Nat64,\n });\n const RetrieveBtcWithApprovalError = IDL.Variant({\n 'MalformedAddress' : IDL.Text,\n 'GenericError' : IDL.Record({\n 'error_message' : IDL.Text,\n 'error_code' : IDL.Nat64,\n }),\n 'TemporarilyUnavailable' : IDL.Text,\n 'InsufficientAllowance' : IDL.Record({ 'allowance' : IDL.Nat64 }),\n 'AlreadyProcessing' : IDL.Null,\n 'AmountTooLow' : IDL.Nat64,\n 'InsufficientFunds' : IDL.Record({ 'balance' : IDL.Nat64 }),\n });\n const UtxoStatus = IDL.Variant({\n 'ValueTooSmall' : Utxo,\n 'Tainted' : Utxo,\n 'Minted' : IDL.Record({\n 'minted_amount' : IDL.Nat64,\n 'block_index' : IDL.Nat64,\n 'utxo' : Utxo,\n }),\n 'Checked' : Utxo,\n });\n const Timestamp = IDL.Nat64;\n const SuspendedUtxo = IDL.Record({\n 'utxo' : Utxo,\n 'earliest_retry' : Timestamp,\n 'reason' : SuspendedReason,\n });\n const PendingUtxo = IDL.Record({\n 'confirmations' : IDL.Nat32,\n 'value' : IDL.Nat64,\n 'outpoint' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8), 'vout' : IDL.Nat32 }),\n });\n const UpdateBalanceError = IDL.Variant({\n 'GenericError' : IDL.Record({\n 'error_message' : IDL.Text,\n 'error_code' : IDL.Nat64,\n }),\n 'TemporarilyUnavailable' : IDL.Text,\n 'AlreadyProcessing' : IDL.Null,\n 'NoNewUtxos' : IDL.Record({\n 'suspended_utxos' : IDL.Opt(IDL.Vec(SuspendedUtxo)),\n 'required_confirmations' : IDL.Nat32,\n 'pending_utxos' : IDL.Opt(IDL.Vec(PendingUtxo)),\n 'current_confirmations' : IDL.Opt(IDL.Nat32),\n }),\n });\n return IDL.Service({\n 'estimate_withdrawal_fee' : IDL.Func(\n [IDL.Record({ 'amount' : IDL.Opt(IDL.Nat64) })],\n [IDL.Record({ 'minter_fee' : IDL.Nat64, 'bitcoin_fee' : IDL.Nat64 })],\n [],\n ),\n 'get_btc_address' : IDL.Func(\n [\n IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n }),\n ],\n [IDL.Text],\n [],\n ),\n 'get_canister_status' : IDL.Func([], [CanisterStatusResponse], []),\n 'get_deposit_fee' : IDL.Func([], [IDL.Nat64], []),\n 'get_events' : IDL.Func(\n [IDL.Record({ 'start' : IDL.Nat64, 'length' : IDL.Nat64 })],\n [IDL.Vec(Event)],\n [],\n ),\n 'get_known_utxos' : IDL.Func(\n [\n IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n }),\n ],\n [IDL.Vec(Utxo)],\n [],\n ),\n 'get_minter_info' : IDL.Func([], [MinterInfo], []),\n 'get_withdrawal_account' : IDL.Func([], [Account], []),\n 'retrieve_btc' : IDL.Func(\n [RetrieveBtcArgs],\n [IDL.Variant({ 'Ok' : RetrieveBtcOk, 'Err' : RetrieveBtcError })],\n [],\n ),\n 'retrieve_btc_status' : IDL.Func(\n [IDL.Record({ 'block_index' : IDL.Nat64 })],\n [RetrieveBtcStatus],\n [],\n ),\n 'retrieve_btc_status_v2' : IDL.Func(\n [IDL.Record({ 'block_index' : IDL.Nat64 })],\n [RetrieveBtcStatusV2],\n [],\n ),\n 'retrieve_btc_status_v2_by_account' : IDL.Func(\n [IDL.Opt(Account)],\n [\n IDL.Vec(\n IDL.Record({\n 'block_index' : IDL.Nat64,\n 'status_v2' : IDL.Opt(RetrieveBtcStatusV2),\n })\n ),\n ],\n [],\n ),\n 'retrieve_btc_with_approval' : IDL.Func(\n [RetrieveBtcWithApprovalArgs],\n [\n IDL.Variant({\n 'Ok' : RetrieveBtcOk,\n 'Err' : RetrieveBtcWithApprovalError,\n }),\n ],\n [],\n ),\n 'update_balance' : IDL.Func(\n [\n IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n }),\n ],\n [\n IDL.Variant({\n 'Ok' : IDL.Vec(UtxoStatus),\n 'Err' : UpdateBalanceError,\n }),\n ],\n [],\n ),\n });\n};\nexport const init = ({ IDL }) => {\n const Mode = IDL.Variant({\n 'RestrictedTo' : IDL.Vec(IDL.Principal),\n 'DepositsRestrictedTo' : IDL.Vec(IDL.Principal),\n 'ReadOnly' : IDL.Null,\n 'GeneralAvailability' : IDL.Null,\n });\n const UpgradeArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'mode' : IDL.Opt(Mode),\n 'retrieve_btc_min_amount' : IDL.Opt(IDL.Nat64),\n 'max_time_in_queue_nanos' : IDL.Opt(IDL.Nat64),\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const BtcNetwork = IDL.Variant({\n 'Mainnet' : IDL.Null,\n 'Regtest' : IDL.Null,\n 'Testnet' : IDL.Null,\n });\n const InitArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'ecdsa_key_name' : IDL.Text,\n 'mode' : Mode,\n 'retrieve_btc_min_amount' : IDL.Nat64,\n 'ledger_id' : IDL.Principal,\n 'max_time_in_queue_nanos' : IDL.Nat64,\n 'btc_network' : BtcNetwork,\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const MinterArg = IDL.Variant({\n 'Upgrade' : IDL.Opt(UpgradeArgs),\n 'Init' : InitArgs,\n });\n return [MinterArg];\n};\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/ckbtc/candid/minter.did */\nexport const idlFactory = ({ IDL }) => {\n const Mode = IDL.Variant({\n 'RestrictedTo' : IDL.Vec(IDL.Principal),\n 'DepositsRestrictedTo' : IDL.Vec(IDL.Principal),\n 'ReadOnly' : IDL.Null,\n 'GeneralAvailability' : IDL.Null,\n });\n const UpgradeArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'mode' : IDL.Opt(Mode),\n 'retrieve_btc_min_amount' : IDL.Opt(IDL.Nat64),\n 'max_time_in_queue_nanos' : IDL.Opt(IDL.Nat64),\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const BtcNetwork = IDL.Variant({\n 'Mainnet' : IDL.Null,\n 'Regtest' : IDL.Null,\n 'Testnet' : IDL.Null,\n });\n const InitArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'ecdsa_key_name' : IDL.Text,\n 'mode' : Mode,\n 'retrieve_btc_min_amount' : IDL.Nat64,\n 'ledger_id' : IDL.Principal,\n 'max_time_in_queue_nanos' : IDL.Nat64,\n 'btc_network' : BtcNetwork,\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const MinterArg = IDL.Variant({\n 'Upgrade' : IDL.Opt(UpgradeArgs),\n 'Init' : InitArgs,\n });\n const CanisterStatusType = IDL.Variant({\n 'stopped' : IDL.Null,\n 'stopping' : IDL.Null,\n 'running' : IDL.Null,\n });\n const LogVisibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n 'allowed_viewers' : IDL.Vec(IDL.Principal),\n });\n const DefiniteCanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Nat,\n 'controllers' : IDL.Vec(IDL.Principal),\n 'reserved_cycles_limit' : IDL.Nat,\n 'log_visibility' : LogVisibility,\n 'wasm_memory_limit' : IDL.Nat,\n 'memory_allocation' : IDL.Nat,\n 'compute_allocation' : IDL.Nat,\n });\n const QueryStats = IDL.Record({\n 'response_payload_bytes_total' : IDL.Nat,\n 'num_instructions_total' : IDL.Nat,\n 'num_calls_total' : IDL.Nat,\n 'request_payload_bytes_total' : IDL.Nat,\n });\n const CanisterStatusResponse = IDL.Record({\n 'status' : CanisterStatusType,\n 'memory_size' : IDL.Nat,\n 'cycles' : IDL.Nat,\n 'settings' : DefiniteCanisterSettings,\n 'query_stats' : QueryStats,\n 'idle_cycles_burned_per_day' : IDL.Nat,\n 'module_hash' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n 'reserved_cycles' : IDL.Nat,\n });\n const Account = IDL.Record({\n 'owner' : IDL.Principal,\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const Utxo = IDL.Record({\n 'height' : IDL.Nat32,\n 'value' : IDL.Nat64,\n 'outpoint' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8), 'vout' : IDL.Nat32 }),\n });\n const ReimbursementReason = IDL.Variant({\n 'CallFailed' : IDL.Null,\n 'TaintedDestination' : IDL.Record({\n 'kyt_fee' : IDL.Nat64,\n 'kyt_provider' : IDL.Principal,\n }),\n });\n const SuspendedReason = IDL.Variant({\n 'ValueTooSmall' : IDL.Null,\n 'Quarantined' : IDL.Null,\n });\n const BitcoinAddress = IDL.Variant({\n 'p2wsh_v0' : IDL.Vec(IDL.Nat8),\n 'p2tr_v1' : IDL.Vec(IDL.Nat8),\n 'p2sh' : IDL.Vec(IDL.Nat8),\n 'p2wpkh_v0' : IDL.Vec(IDL.Nat8),\n 'p2pkh' : IDL.Vec(IDL.Nat8),\n });\n const EventType = IDL.Variant({\n 'received_utxos' : IDL.Record({\n 'to_account' : Account,\n 'mint_txid' : IDL.Opt(IDL.Nat64),\n 'utxos' : IDL.Vec(Utxo),\n }),\n 'schedule_deposit_reimbursement' : IDL.Record({\n 'burn_block_index' : IDL.Nat64,\n 'account' : Account,\n 'amount' : IDL.Nat64,\n 'reason' : ReimbursementReason,\n }),\n 'sent_transaction' : IDL.Record({\n 'fee' : IDL.Opt(IDL.Nat64),\n 'change_output' : IDL.Opt(\n IDL.Record({ 'value' : IDL.Nat64, 'vout' : IDL.Nat32 })\n ),\n 'txid' : IDL.Vec(IDL.Nat8),\n 'utxos' : IDL.Vec(Utxo),\n 'requests' : IDL.Vec(IDL.Nat64),\n 'submitted_at' : IDL.Nat64,\n }),\n 'distributed_kyt_fee' : IDL.Record({\n 'block_index' : IDL.Nat64,\n 'amount' : IDL.Nat64,\n 'kyt_provider' : IDL.Principal,\n }),\n 'init' : InitArgs,\n 'upgrade' : UpgradeArgs,\n 'retrieve_btc_kyt_failed' : IDL.Record({\n 'block_index' : IDL.Nat64,\n 'owner' : IDL.Principal,\n 'uuid' : IDL.Text,\n 'address' : IDL.Text,\n 'amount' : IDL.Nat64,\n 'kyt_provider' : IDL.Principal,\n }),\n 'suspended_utxo' : IDL.Record({\n 'utxo' : Utxo,\n 'account' : Account,\n 'reason' : SuspendedReason,\n }),\n 'accepted_retrieve_btc_request' : IDL.Record({\n 'received_at' : IDL.Nat64,\n 'block_index' : IDL.Nat64,\n 'address' : BitcoinAddress,\n 'reimbursement_account' : IDL.Opt(Account),\n 'amount' : IDL.Nat64,\n 'kyt_provider' : IDL.Opt(IDL.Principal),\n }),\n 'checked_utxo' : IDL.Record({\n 'clean' : IDL.Bool,\n 'utxo' : Utxo,\n 'uuid' : IDL.Text,\n 'kyt_provider' : IDL.Opt(IDL.Principal),\n }),\n 'removed_retrieve_btc_request' : IDL.Record({ 'block_index' : IDL.Nat64 }),\n 'confirmed_transaction' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'replaced_transaction' : IDL.Record({\n 'fee' : IDL.Nat64,\n 'change_output' : IDL.Record({ 'value' : IDL.Nat64, 'vout' : IDL.Nat32 }),\n 'old_txid' : IDL.Vec(IDL.Nat8),\n 'new_txid' : IDL.Vec(IDL.Nat8),\n 'submitted_at' : IDL.Nat64,\n }),\n 'checked_utxo_v2' : IDL.Record({ 'utxo' : Utxo, 'account' : Account }),\n 'ignored_utxo' : IDL.Record({ 'utxo' : Utxo }),\n 'checked_utxo_mint_unknown' : IDL.Record({\n 'utxo' : Utxo,\n 'account' : Account,\n }),\n 'reimbursed_failed_deposit' : IDL.Record({\n 'burn_block_index' : IDL.Nat64,\n 'mint_block_index' : IDL.Nat64,\n }),\n });\n const Event = IDL.Record({\n 'timestamp' : IDL.Opt(IDL.Nat64),\n 'payload' : EventType,\n });\n const MinterInfo = IDL.Record({\n 'retrieve_btc_min_amount' : IDL.Nat64,\n 'min_confirmations' : IDL.Nat32,\n 'kyt_fee' : IDL.Nat64,\n });\n const RetrieveBtcArgs = IDL.Record({\n 'address' : IDL.Text,\n 'amount' : IDL.Nat64,\n });\n const RetrieveBtcOk = IDL.Record({ 'block_index' : IDL.Nat64 });\n const RetrieveBtcError = IDL.Variant({\n 'MalformedAddress' : IDL.Text,\n 'GenericError' : IDL.Record({\n 'error_message' : IDL.Text,\n 'error_code' : IDL.Nat64,\n }),\n 'TemporarilyUnavailable' : IDL.Text,\n 'AlreadyProcessing' : IDL.Null,\n 'AmountTooLow' : IDL.Nat64,\n 'InsufficientFunds' : IDL.Record({ 'balance' : IDL.Nat64 }),\n });\n const RetrieveBtcStatus = IDL.Variant({\n 'Signing' : IDL.Null,\n 'Confirmed' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Sending' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'AmountTooLow' : IDL.Null,\n 'Unknown' : IDL.Null,\n 'Submitted' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Pending' : IDL.Null,\n });\n const ReimbursementRequest = IDL.Record({\n 'account' : Account,\n 'amount' : IDL.Nat64,\n 'reason' : ReimbursementReason,\n });\n const ReimbursedDeposit = IDL.Record({\n 'account' : Account,\n 'mint_block_index' : IDL.Nat64,\n 'amount' : IDL.Nat64,\n 'reason' : ReimbursementReason,\n });\n const RetrieveBtcStatusV2 = IDL.Variant({\n 'Signing' : IDL.Null,\n 'Confirmed' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Sending' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'AmountTooLow' : IDL.Null,\n 'WillReimburse' : ReimbursementRequest,\n 'Unknown' : IDL.Null,\n 'Submitted' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8) }),\n 'Reimbursed' : ReimbursedDeposit,\n 'Pending' : IDL.Null,\n });\n const RetrieveBtcWithApprovalArgs = IDL.Record({\n 'from_subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n 'address' : IDL.Text,\n 'amount' : IDL.Nat64,\n });\n const RetrieveBtcWithApprovalError = IDL.Variant({\n 'MalformedAddress' : IDL.Text,\n 'GenericError' : IDL.Record({\n 'error_message' : IDL.Text,\n 'error_code' : IDL.Nat64,\n }),\n 'TemporarilyUnavailable' : IDL.Text,\n 'InsufficientAllowance' : IDL.Record({ 'allowance' : IDL.Nat64 }),\n 'AlreadyProcessing' : IDL.Null,\n 'AmountTooLow' : IDL.Nat64,\n 'InsufficientFunds' : IDL.Record({ 'balance' : IDL.Nat64 }),\n });\n const UtxoStatus = IDL.Variant({\n 'ValueTooSmall' : Utxo,\n 'Tainted' : Utxo,\n 'Minted' : IDL.Record({\n 'minted_amount' : IDL.Nat64,\n 'block_index' : IDL.Nat64,\n 'utxo' : Utxo,\n }),\n 'Checked' : Utxo,\n });\n const Timestamp = IDL.Nat64;\n const SuspendedUtxo = IDL.Record({\n 'utxo' : Utxo,\n 'earliest_retry' : Timestamp,\n 'reason' : SuspendedReason,\n });\n const PendingUtxo = IDL.Record({\n 'confirmations' : IDL.Nat32,\n 'value' : IDL.Nat64,\n 'outpoint' : IDL.Record({ 'txid' : IDL.Vec(IDL.Nat8), 'vout' : IDL.Nat32 }),\n });\n const UpdateBalanceError = IDL.Variant({\n 'GenericError' : IDL.Record({\n 'error_message' : IDL.Text,\n 'error_code' : IDL.Nat64,\n }),\n 'TemporarilyUnavailable' : IDL.Text,\n 'AlreadyProcessing' : IDL.Null,\n 'NoNewUtxos' : IDL.Record({\n 'suspended_utxos' : IDL.Opt(IDL.Vec(SuspendedUtxo)),\n 'required_confirmations' : IDL.Nat32,\n 'pending_utxos' : IDL.Opt(IDL.Vec(PendingUtxo)),\n 'current_confirmations' : IDL.Opt(IDL.Nat32),\n }),\n });\n return IDL.Service({\n 'estimate_withdrawal_fee' : IDL.Func(\n [IDL.Record({ 'amount' : IDL.Opt(IDL.Nat64) })],\n [IDL.Record({ 'minter_fee' : IDL.Nat64, 'bitcoin_fee' : IDL.Nat64 })],\n ['query'],\n ),\n 'get_btc_address' : IDL.Func(\n [\n IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n }),\n ],\n [IDL.Text],\n [],\n ),\n 'get_canister_status' : IDL.Func([], [CanisterStatusResponse], []),\n 'get_deposit_fee' : IDL.Func([], [IDL.Nat64], ['query']),\n 'get_events' : IDL.Func(\n [IDL.Record({ 'start' : IDL.Nat64, 'length' : IDL.Nat64 })],\n [IDL.Vec(Event)],\n ['query'],\n ),\n 'get_known_utxos' : IDL.Func(\n [\n IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n }),\n ],\n [IDL.Vec(Utxo)],\n ['query'],\n ),\n 'get_minter_info' : IDL.Func([], [MinterInfo], ['query']),\n 'get_withdrawal_account' : IDL.Func([], [Account], []),\n 'retrieve_btc' : IDL.Func(\n [RetrieveBtcArgs],\n [IDL.Variant({ 'Ok' : RetrieveBtcOk, 'Err' : RetrieveBtcError })],\n [],\n ),\n 'retrieve_btc_status' : IDL.Func(\n [IDL.Record({ 'block_index' : IDL.Nat64 })],\n [RetrieveBtcStatus],\n ['query'],\n ),\n 'retrieve_btc_status_v2' : IDL.Func(\n [IDL.Record({ 'block_index' : IDL.Nat64 })],\n [RetrieveBtcStatusV2],\n ['query'],\n ),\n 'retrieve_btc_status_v2_by_account' : IDL.Func(\n [IDL.Opt(Account)],\n [\n IDL.Vec(\n IDL.Record({\n 'block_index' : IDL.Nat64,\n 'status_v2' : IDL.Opt(RetrieveBtcStatusV2),\n })\n ),\n ],\n ['query'],\n ),\n 'retrieve_btc_with_approval' : IDL.Func(\n [RetrieveBtcWithApprovalArgs],\n [\n IDL.Variant({\n 'Ok' : RetrieveBtcOk,\n 'Err' : RetrieveBtcWithApprovalError,\n }),\n ],\n [],\n ),\n 'update_balance' : IDL.Func(\n [\n IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n }),\n ],\n [\n IDL.Variant({\n 'Ok' : IDL.Vec(UtxoStatus),\n 'Err' : UpdateBalanceError,\n }),\n ],\n [],\n ),\n });\n};\nexport const init = ({ IDL }) => {\n const Mode = IDL.Variant({\n 'RestrictedTo' : IDL.Vec(IDL.Principal),\n 'DepositsRestrictedTo' : IDL.Vec(IDL.Principal),\n 'ReadOnly' : IDL.Null,\n 'GeneralAvailability' : IDL.Null,\n });\n const UpgradeArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'mode' : IDL.Opt(Mode),\n 'retrieve_btc_min_amount' : IDL.Opt(IDL.Nat64),\n 'max_time_in_queue_nanos' : IDL.Opt(IDL.Nat64),\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const BtcNetwork = IDL.Variant({\n 'Mainnet' : IDL.Null,\n 'Regtest' : IDL.Null,\n 'Testnet' : IDL.Null,\n });\n const InitArgs = IDL.Record({\n 'get_utxos_cache_expiration_seconds' : IDL.Opt(IDL.Nat64),\n 'kyt_principal' : IDL.Opt(IDL.Principal),\n 'ecdsa_key_name' : IDL.Text,\n 'mode' : Mode,\n 'retrieve_btc_min_amount' : IDL.Nat64,\n 'ledger_id' : IDL.Principal,\n 'max_time_in_queue_nanos' : IDL.Nat64,\n 'btc_network' : BtcNetwork,\n 'check_fee' : IDL.Opt(IDL.Nat64),\n 'btc_checker_principal' : IDL.Opt(IDL.Principal),\n 'min_confirmations' : IDL.Opt(IDL.Nat32),\n 'kyt_fee' : IDL.Opt(IDL.Nat64),\n });\n const MinterArg = IDL.Variant({\n 'Upgrade' : IDL.Opt(UpgradeArgs),\n 'Init' : InitArgs,\n });\n return [MinterArg];\n};\n", "import { fromNullable, nonNullish } from \"@dfinity/utils\";\nimport type {\n PendingUtxo,\n RetrieveBtcError,\n RetrieveBtcWithApprovalError,\n UpdateBalanceError,\n} from \"../../candid/minter\";\n\nexport class MinterGenericError extends Error {}\nexport class MinterTemporaryUnavailableError extends MinterGenericError {}\nexport class MinterAlreadyProcessingError extends MinterGenericError {}\n\nexport class MinterUpdateBalanceError extends MinterGenericError {}\nexport class MinterNoNewUtxosError extends MinterUpdateBalanceError {\n readonly pendingUtxos: PendingUtxo[];\n readonly requiredConfirmations: number;\n constructor({\n pending_utxos,\n required_confirmations,\n }: {\n pending_utxos: [] | [PendingUtxo[]];\n required_confirmations: number;\n }) {\n super();\n this.pendingUtxos = fromNullable(pending_utxos) ?? [];\n this.requiredConfirmations = required_confirmations;\n }\n}\n\nexport class MinterRetrieveBtcError extends MinterGenericError {}\nexport class MinterMalformedAddressError extends MinterRetrieveBtcError {}\nexport class MinterAmountTooLowError extends MinterRetrieveBtcError {}\nexport class MinterInsufficientFundsError extends MinterRetrieveBtcError {}\nexport class MinterInsufficientAllowanceError extends MinterRetrieveBtcError {}\n\nconst mapGenericError = (\n Err: UpdateBalanceError | RetrieveBtcError | RetrieveBtcWithApprovalError,\n): MinterGenericError | undefined => {\n if (\"GenericError\" in Err) {\n const {\n GenericError: { error_message, error_code },\n } = Err;\n return new MinterGenericError(`${error_message} (${error_code})`);\n }\n\n if (\"TemporarilyUnavailable\" in Err) {\n return new MinterTemporaryUnavailableError(Err.TemporarilyUnavailable);\n }\n\n if (\"AlreadyProcessing\" in Err) {\n return new MinterAlreadyProcessingError();\n }\n\n return undefined;\n};\n\nexport const createUpdateBalanceError = (\n Err: UpdateBalanceError,\n): MinterGenericError => {\n const error = mapGenericError(Err);\n\n if (nonNullish(error)) {\n return error;\n }\n\n if (\"NoNewUtxos\" in Err) {\n return new MinterNoNewUtxosError(Err.NoNewUtxos);\n }\n\n // Handle types added in the backend but not yet added in the frontend\n return new MinterUpdateBalanceError(\n `Unsupported response type in minter.updateBalance ${JSON.stringify(Err)}`,\n );\n};\n\nexport const createRetrieveBtcError = (\n Err: RetrieveBtcError,\n): MinterGenericError => {\n const error = mapGenericError(Err);\n\n if (nonNullish(error)) {\n return error;\n }\n\n if (\"MalformedAddress\" in Err) {\n return new MinterMalformedAddressError(Err.MalformedAddress);\n }\n\n if (\"AmountTooLow\" in Err) {\n return new MinterAmountTooLowError(`${Err.AmountTooLow}`);\n }\n\n if (\"InsufficientFunds\" in Err) {\n return new MinterInsufficientFundsError(`${Err.InsufficientFunds.balance}`);\n }\n\n // Handle types added in the backend but not yet added in the frontend\n return new MinterRetrieveBtcError(\n `Unsupported response type in minter.retrieveBtc ${JSON.stringify(Err)}`,\n );\n};\n\nexport const createRetrieveBtcWithApprovalError = (\n Err: RetrieveBtcWithApprovalError,\n): MinterGenericError => {\n const error = mapGenericError(Err);\n\n if (nonNullish(error)) {\n return error;\n }\n\n if (\"InsufficientAllowance\" in Err) {\n return new MinterInsufficientAllowanceError(\n `${Err.InsufficientAllowance.allowance}`,\n );\n }\n\n return createRetrieveBtcError(Err);\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Canister", "createServices", "fromNullable", "isNullish", "toNullable", "idlFactory", "IDL", "Mode", "UpgradeArgs", "BtcNetwork", "InitArgs", "MinterArg", "CanisterStatusType", "LogVisibility", "DefiniteCanisterSettings", "QueryStats", "CanisterStatusResponse", "Account", "Utxo", "ReimbursementReason", "SuspendedReason", "BitcoinAddress", "EventType", "Event", "MinterInfo", "RetrieveBtcArgs", "RetrieveBtcOk", "RetrieveBtcError", "RetrieveBtcStatus", "ReimbursementRequest", "ReimbursedDeposit", "RetrieveBtcStatusV2", "RetrieveBtcWithApprovalArgs", "RetrieveBtcWithApprovalError", "UtxoStatus", "Timestamp", "SuspendedUtxo", "PendingUtxo", "UpdateBalanceError", "idlFactory", "IDL", "Mode", "UpgradeArgs", "BtcNetwork", "InitArgs", "MinterArg", "CanisterStatusType", "LogVisibility", "DefiniteCanisterSettings", "QueryStats", "CanisterStatusResponse", "Account", "Utxo", "ReimbursementReason", "SuspendedReason", "BitcoinAddress", "EventType", "Event", "MinterInfo", "RetrieveBtcArgs", "RetrieveBtcOk", "RetrieveBtcError", "RetrieveBtcStatus", "ReimbursementRequest", "ReimbursedDeposit", "RetrieveBtcStatusV2", "RetrieveBtcWithApprovalArgs", "RetrieveBtcWithApprovalError", "UtxoStatus", "Timestamp", "SuspendedUtxo", "PendingUtxo", "UpdateBalanceError", "fromNullable", "nonNullish", "MinterGenericError", "MinterTemporaryUnavailableError", "MinterAlreadyProcessingError", "MinterUpdateBalanceError", "MinterNoNewUtxosError", "pending_utxos", "required_confirmations", "MinterRetrieveBtcError", "MinterMalformedAddressError", "MinterAmountTooLowError", "MinterInsufficientFundsError", "MinterInsufficientAllowanceError", "mapGenericError", "Err", "error_message", "error_code", "createUpdateBalanceError", "error", "createRetrieveBtcError", "createRetrieveBtcWithApprovalError", "CkBTCMinterCanister", "_CkBTCMinterCanister", "Canister", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory", "owner", "subaccount", "toNullable", "response", "createUpdateBalanceError", "params", "createRetrieveBtcError", "address", "amount", "fromSubaccount", "createRetrieveBtcWithApprovalError", "transactionId", "certified", "account", "retrieve_btc_status_v2_by_account", "isNullish", "block_index", "status_v2", "fromNullable", "get_known_utxos"]
7
+ }
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import{a as Ft,b as jt,c as dt}from"./chunk-M2DS6MT4.js";import{a as Dt,b as Wt,c as St,d as Vt,e as $t,f as qt,g as Gt,h as zt,i as Xt,j as Kt,k as Jt,l as Qt,m as Yt,n as bt}from"./chunk-NTLM4OSY.js";import{a as y,b as G}from"./chunk-FW4363Y4.js";var O=y((pe,Z)=>{"use strict";var At="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";Z.exports=At});var et=y((xe,tt)=>{"use strict";var _t=O(),Et=e=>{if(!e||typeof e!="string")throw new Error(`Expected base58 string but got \u201C${e}\u201D`);if(e.match(/[IOl0]/gmu))throw new Error(`Invalid base58 character \u201C${e.match(/[IOl0]/gmu)}\u201D`);let t=e.match(/^1+/gmu),o=t?t[0].length:0,r=(e.length-o)*(Math.log(58)/Math.log(256))+1>>>0;return new Uint8Array([...new Uint8Array(o),...e.match(/.{1}/gmu).map(s=>_t.indexOf(s)).reduce((s,c)=>(s=s.map(n=>{let i=n*58+c;return c=i>>8,i}),s),new Uint8Array(r)).reverse().filter((s=>c=>s=s||c)(!1))])};tt.exports=Et});var ot=y((le,nt)=>{"use strict";var rt=O(),Ct=()=>{let e=Array(256).fill(-1);for(let t=0;t<rt.length;++t)e[rt.charCodeAt(t)]=t;return e};nt.exports=Ct});var it=y((de,ct)=>{"use strict";var st=O(),kt=ot(),Ut=kt(),Bt=e=>{let t=[];for(let o of e){let r=o;for(let s=0;s<t.length;++s){let c=(Ut[t[s]]<<8)+r;t[s]=st.charCodeAt(c%58),r=c/58|0}for(;r;)t.push(st.charCodeAt(r%58)),r=r/58|0}for(let o of e){if(o)break;t.push(49)}return t.reverse(),String.fromCharCode(...t)};ct.exports=Bt});var ft=y($=>{"use strict";$.base58_to_binary=et();$.binary_to_base58=it()});var pt=y(E=>{"use strict";Object.defineProperty(E,"__esModule",{value:!0});E.bech32m=E.bech32=void 0;var F="qpzry9x8gf2tvdw0s3jn54khce6mua7l",ht={};for(let e=0;e<F.length;e++){let t=F.charAt(e);ht[t]=e}function _(e){let t=e>>25;return(e&33554431)<<5^-(t>>0&1)&996825010^-(t>>1&1)&642813549^-(t>>2&1)&513874426^-(t>>3&1)&1027748829^-(t>>4&1)&705979059}function at(e){let t=1;for(let o=0;o<e.length;++o){let r=e.charCodeAt(o);if(r<33||r>126)return"Invalid prefix ("+e+")";t=_(t)^r>>5}t=_(t);for(let o=0;o<e.length;++o){let r=e.charCodeAt(o);t=_(t)^r&31}return t}function q(e,t,o,r){let s=0,c=0,n=(1<<o)-1,i=[];for(let a=0;a<e.length;++a)for(s=s<<t|e[a],c+=t;c>=o;)c-=o,i.push(s>>c&n);if(r)c>0&&i.push(s<<o-c&n);else{if(c>=t)return"Excess padding";if(s<<o-c&n)return"Non-zero padding"}return i}function Lt(e){return q(e,8,5,!0)}function Pt(e){let t=q(e,5,8,!1);if(Array.isArray(t))return t}function Tt(e){let t=q(e,5,8,!1);if(Array.isArray(t))return t;throw new Error(t)}function ut(e){let t;e==="bech32"?t=1:t=734539939;function o(n,i,a){if(a=a||90,n.length+7+i.length>a)throw new TypeError("Exceeds length limit");n=n.toLowerCase();let u=at(n);if(typeof u=="string")throw new Error(u);let h=n+"1";for(let f=0;f<i.length;++f){let p=i[f];if(p>>5!==0)throw new Error("Non 5-bit word");u=_(u)^p,h+=F.charAt(p)}for(let f=0;f<6;++f)u=_(u);u^=t;for(let f=0;f<6;++f){let p=u>>(5-f)*5&31;h+=F.charAt(p)}return h}function r(n,i){if(i=i||90,n.length<8)return n+" too short";if(n.length>i)return"Exceeds length limit";let a=n.toLowerCase(),u=n.toUpperCase();if(n!==a&&n!==u)return"Mixed-case string "+n;n=a;let h=n.lastIndexOf("1");if(h===-1)return"No separator character for "+n;if(h===0)return"Missing prefix for "+n;let f=n.slice(0,h),p=n.slice(h+1);if(p.length<6)return"Data too short";let x=at(f);if(typeof x=="string")return x;let w=[];for(let l=0;l<p.length;++l){let L=p.charAt(l),C=ht[L];if(C===void 0)return"Unknown character "+L;x=_(x)^C,!(l+6>=p.length)&&w.push(C)}return x!==t?"Invalid checksum for "+n:{prefix:f,words:w}}function s(n,i){let a=r(n,i);if(typeof a=="object")return a}function c(n,i){let a=r(n,i);if(typeof a=="object")return a;throw new Error(a)}return{decodeUnsafe:s,decode:c,encode:o,toWords:Lt,fromWordsUnsafe:Pt,fromWords:Tt}}E.bech32=ut("bech32");E.bech32m=ut("bech32m")});var z=(r=>(r[r.Mainnet=0]="Mainnet",r[r.Regtest=1]="Regtest",r[r.Testnet=2]="Testnet",r))(z||{}),X=(c=>(c[c.P2wpkhV0=0]="P2wpkhV0",c[c.P2pkh=1]="P2pkh",c[c.P2sh=2]="P2sh",c[c.P2wsh=3]="P2wsh",c[c.P2tr=4]="P2tr",c))(X||{});var b=class extends Error{},k=class extends b{},P=class extends b{},U=class extends b{},T=class extends b{},v=class extends b{},I=class extends b{},A=class extends b{},N=class extends b{};import{isNullish as xt}from"@dfinity/utils";function wt(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function j(e,...t){if(!wt(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function D(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function K(e,t){j(e);let o=t.outputLen;if(e.length<o)throw new Error(`digestInto() expects output buffer of length at least ${o}`)}var H=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),d=(e,t)=>e<<32-t|e>>>t;var ne=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function gt(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function W(e){return typeof e=="string"&&(e=gt(e)),j(e),e}var R=class{clone(){return this._cloneInto()}},oe={}.toString;function J(e){let t=r=>e().update(W(r)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function mt(e,t,o,r){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,o,r);let s=BigInt(32),c=BigInt(4294967295),n=Number(o>>s&c),i=Number(o&c),a=r?4:0,u=r?0:4;e.setUint32(t+a,n,r),e.setUint32(t+u,i,r)}var Q=(e,t,o)=>e&t^~e&o,Y=(e,t,o)=>e&t^e&o^t&o,M=class extends R{constructor(t,o,r,s){super(),this.blockLen=t,this.outputLen=o,this.padOffset=r,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=H(this.buffer)}update(t){D(this);let{view:o,buffer:r,blockLen:s}=this;t=W(t);let c=t.length;for(let n=0;n<c;){let i=Math.min(s-this.pos,c-n);if(i===s){let a=H(t);for(;s<=c-n;n+=s)this.process(a,n);continue}r.set(t.subarray(n,n+i),this.pos),this.pos+=i,n+=i,this.pos===s&&(this.process(o,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){D(this),K(t,this),this.finished=!0;let{buffer:o,view:r,blockLen:s,isLE:c}=this,{pos:n}=this;o[n++]=128,this.buffer.subarray(n).fill(0),this.padOffset>s-n&&(this.process(r,0),n=0);for(let f=n;f<s;f++)o[f]=0;mt(r,s-8,BigInt(this.length*8),c),this.process(r,0);let i=H(t),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=a/4,h=this.get();if(u>h.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)i.setUint32(4*f,h[f],c)}digest(){let{buffer:t,outputLen:o}=this;this.digestInto(t);let r=t.slice(0,o);return this.destroy(),r}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:o,buffer:r,length:s,finished:c,destroyed:n,pos:i}=this;return t.length=s,t.pos=i,t.finished=c,t.destroyed=n,s%o&&t.buffer.set(r),t}};var yt=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),g=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),m=new Uint32Array(64),S=class extends M{constructor(){super(64,32,8,!1),this.A=g[0]|0,this.B=g[1]|0,this.C=g[2]|0,this.D=g[3]|0,this.E=g[4]|0,this.F=g[5]|0,this.G=g[6]|0,this.H=g[7]|0}get(){let{A:t,B:o,C:r,D:s,E:c,F:n,G:i,H:a}=this;return[t,o,r,s,c,n,i,a]}set(t,o,r,s,c,n,i,a){this.A=t|0,this.B=o|0,this.C=r|0,this.D=s|0,this.E=c|0,this.F=n|0,this.G=i|0,this.H=a|0}process(t,o){for(let f=0;f<16;f++,o+=4)m[f]=t.getUint32(o,!1);for(let f=16;f<64;f++){let p=m[f-15],x=m[f-2],w=d(p,7)^d(p,18)^p>>>3,l=d(x,17)^d(x,19)^x>>>10;m[f]=l+m[f-7]+w+m[f-16]|0}let{A:r,B:s,C:c,D:n,E:i,F:a,G:u,H:h}=this;for(let f=0;f<64;f++){let p=d(i,6)^d(i,11)^d(i,25),x=h+p+Q(i,a,u)+yt[f]+m[f]|0,l=(d(r,2)^d(r,13)^d(r,22))+Y(r,s,c)|0;h=u,u=a,a=i,i=n+x|0,n=c,c=s,s=r,r=x+l|0}r=r+this.A|0,s=s+this.B|0,c=c+this.C|0,n=n+this.D|0,i=i+this.E|0,a=a+this.F|0,u=u+this.G|0,h=h+this.H|0,this.set(r,s,c,n,i,a,u,h)}roundClean(){m.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var V=J(()=>new S);var lt=G(ft()),B=G(pt());var vt=0,It=5,Nt=111,Rt=196,Ht={[vt]:{type:1,networks:[0]},[Nt]:{type:1,networks:[2,1]},[It]:{type:2,networks:[0]},[Rt]:{type:2,networks:[2,1]}},Mt=({address:e,network:t})=>{let r=(h=>{try{return(0,lt.base58_to_binary)(h)}catch{throw new k}})(e),{length:s}=r;if(s!==25)throw new A(`Expected the address to be 25 bytes, got ${s}.`);(h=>{let f=h.slice(s-4,s),p=h.slice(0,s-4),x=V.create();x.update(p);let w=V.create();w.update(x.digest());let l=w.digest().slice(0,4);if(f.some((L,C)=>L!==l[C]))throw new A(`Checksum mismatch expected ${f}, got ${l}.`)})(r);let n=r[0],i=Ht[n];if(xt(i))throw new U;let{type:a,networks:u}=i;if(!u.includes(t))throw new N;return{address:e,network:t,type:a,parser:"base58"}},Ot=({address:e,network:t})=>{let o=h=>{try{return h.startsWith("bc1p")||h.startsWith("tb1p")||h.startsWith("bcrt1p")?B.bech32m.decode(h):B.bech32.decode(h)}catch{throw new A}},{prefix:r,words:s}=o(e),n={bc:0,tb:2,bcrt:1}[r];if(xt(n))throw new k;if(n!==t)throw new I;let[i,...a]=s;if(i>1)throw new v;switch(B.bech32.fromWords(a).length){case 20:return{address:e,network:t,type:0,parser:"bip-173"};case 32:return{address:e,network:t,type:i===0?3:4,parser:"bip-173"};default:throw new T}},_e=({address:e,network:t=0})=>{switch(e.charAt(0)){case"1":case"2":case"3":case"m":case"n":return Mt({address:e,network:t});case"b":case"B":case"t":case"T":return Ot({address:e,network:t});case"":throw new P;default:throw new U}};export{dt as BitcoinCanister,X as BtcAddressType,z as BtcNetwork,bt as CkBTCMinterCanister,St as MinterAlreadyProcessingError,zt as MinterAmountTooLowError,Dt as MinterGenericError,Kt as MinterInsufficientAllowanceError,Xt as MinterInsufficientFundsError,Gt as MinterMalformedAddressError,$t as MinterNoNewUtxosError,qt as MinterRetrieveBtcError,Wt as MinterTemporaryUnavailableError,Vt as MinterUpdateBalanceError,T as ParseBtcAddressBadWitnessLengthError,b as ParseBtcAddressError,k as ParseBtcAddressInvalidError,A as ParseBtcAddressMalformedAddressError,P as ParseBtcAddressNoDataError,I as ParseBtcAddressUnexpectedHumanReadablePartError,U as ParseBtcAddressUnsupportedAddressTypeError,v as ParseBtcAddressUnsupportedWitnessVersionError,N as ParseBtcAddressWrongNetworkError,Qt as createRetrieveBtcError,Yt as createRetrieveBtcWithApprovalError,Jt as createUpdateBalanceError,_e as parseBtcAddress,jt as toGetBalanceParams,Ft as toGetUtxosParams};
1
+ import{a as Wt,b as Nt,c as wt}from"./chunk-ABDCS67G.js";import{a as Ot,b as Rt,c as jt,d as qt,e as zt,f as Xt,g as Kt,h as $t,i as Jt,j as Qt,k as Yt,l as Zt,m as te,n as gt}from"./chunk-HAU7JR75.js";import{a as y,b as X}from"./chunk-FW4363Y4.js";var W=y((pe,et)=>{"use strict";var _t="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";et.exports=_t});var st=y((we,rt)=>{"use strict";var Et=W(),Bt=e=>{if(!e||typeof e!="string")throw new Error(`Expected base58 string but got \u201C${e}\u201D`);if(e.match(/[IOl0]/gmu))throw new Error(`Invalid base58 character \u201C${e.match(/[IOl0]/gmu)}\u201D`);let t=e.match(/^1+/gmu),n=t?t[0].length:0,r=(e.length-n)*(Math.log(58)/Math.log(256))+1>>>0;return new Uint8Array([...new Uint8Array(n),...e.match(/.{1}/gmu).map(o=>Et.indexOf(o)).reduce((o,c)=>(o=o.map(s=>{let i=s*58+c;return c=i>>8,i}),o),new Uint8Array(r)).reverse().filter((o=>c=>o=o||c)(!1))])};rt.exports=Bt});var ct=y((ge,ot)=>{"use strict";var nt=W(),Ct=()=>{let e=Array(256).fill(-1);for(let t=0;t<nt.length;++t)e[nt.charCodeAt(t)]=t;return e};ot.exports=Ct});var ft=y((me,ht)=>{"use strict";var it=W(),Ut=ct(),kt=Ut(),Lt=e=>{let t=[];for(let n of e){let r=n;for(let o=0;o<t.length;++o){let c=(kt[t[o]]<<8)+r;t[o]=it.charCodeAt(c%58),r=c/58|0}for(;r;)t.push(it.charCodeAt(r%58)),r=r/58|0}for(let n of e){if(n)break;t.push(49)}return t.reverse(),String.fromCharCode(...t)};ht.exports=Lt});var at=y(q=>{"use strict";q.base58_to_binary=st();q.binary_to_base58=ft()});var lt=y(_=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});_.bech32m=_.bech32=void 0;var N="qpzry9x8gf2tvdw0s3jn54khce6mua7l",ut={};for(let e=0;e<N.length;e++){let t=N.charAt(e);ut[t]=e}function H(e){let t=e>>25;return(e&33554431)<<5^-(t>>0&1)&996825010^-(t>>1&1)&642813549^-(t>>2&1)&513874426^-(t>>3&1)&1027748829^-(t>>4&1)&705979059}function xt(e){let t=1;for(let n=0;n<e.length;++n){let r=e.charCodeAt(n);if(r<33||r>126)return"Invalid prefix ("+e+")";t=H(t)^r>>5}t=H(t);for(let n=0;n<e.length;++n){let r=e.charCodeAt(n);t=H(t)^r&31}return t}function z(e,t,n,r){let o=0,c=0,s=(1<<n)-1,i=[];for(let f=0;f<e.length;++f)for(o=o<<t|e[f],c+=t;c>=n;)c-=n,i.push(o>>c&s);if(r)c>0&&i.push(o<<n-c&s);else{if(c>=t)return"Excess padding";if(o<<n-c&s)return"Non-zero padding"}return i}function St(e){return z(e,8,5,!0)}function It(e){let t=z(e,5,8,!1);if(Array.isArray(t))return t}function Ft(e){let t=z(e,5,8,!1);if(Array.isArray(t))return t;throw new Error(t)}function dt(e){let t;e==="bech32"?t=1:t=734539939;function n(s,i,f){if(f=f||90,s.length+7+i.length>f)throw new TypeError("Exceeds length limit");s=s.toLowerCase();let x=xt(s);if(typeof x=="string")throw new Error(x);let a=s+"1";for(let h=0;h<i.length;++h){let u=i[h];if(u>>5!==0)throw new Error("Non 5-bit word");x=H(x)^u,a+=N.charAt(u)}for(let h=0;h<6;++h)x=H(x);x^=t;for(let h=0;h<6;++h){let u=x>>(5-h)*5&31;a+=N.charAt(u)}return a}function r(s,i){if(i=i||90,s.length<8)return s+" too short";if(s.length>i)return"Exceeds length limit";let f=s.toLowerCase(),x=s.toUpperCase();if(s!==f&&s!==x)return"Mixed-case string "+s;s=f;let a=s.lastIndexOf("1");if(a===-1)return"No separator character for "+s;if(a===0)return"Missing prefix for "+s;let h=s.slice(0,a),u=s.slice(a+1);if(u.length<6)return"Data too short";let d=xt(h);if(typeof d=="string")return d;let g=[];for(let l=0;l<u.length;++l){let L=u.charAt(l),E=ut[L];if(E===void 0)return"Unknown character "+L;d=H(d)^E,!(l+6>=u.length)&&g.push(E)}return d!==t?"Invalid checksum for "+s:{prefix:h,words:g}}function o(s,i){let f=r(s,i);if(typeof f=="object")return f}function c(s,i){let f=r(s,i);if(typeof f=="object")return f;throw new Error(f)}return{decodeUnsafe:o,decode:c,encode:n,toWords:St,fromWordsUnsafe:It,fromWords:Ft}}_.bech32=dt("bech32");_.bech32m=dt("bech32m")});var K=(r=>(r[r.Mainnet=0]="Mainnet",r[r.Regtest=1]="Regtest",r[r.Testnet=2]="Testnet",r))(K||{}),$=(c=>(c[c.P2wpkhV0=0]="P2wpkhV0",c[c.P2pkh=1]="P2pkh",c[c.P2sh=2]="P2sh",c[c.P2wsh=3]="P2wsh",c[c.P2tr=4]="P2tr",c))($||{});var p=class extends Error{},B=class extends p{},S=class extends p{},C=class extends p{},I=class extends p{},F=class extends p{},D=class extends p{},A=class extends p{},T=class extends p{};import{isNullish as bt}from"@dfinity/utils";function mt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function G(e,...t){if(!mt(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function O(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function J(e,t){G(e);let n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function U(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function V(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function b(e,t){return e<<32-t|e>>>t}function yt(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function R(e){return typeof e=="string"&&(e=yt(e)),G(e),e}var P=class{};function Q(e){let t=r=>e().update(R(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function At(e,t,n,r){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,r);let o=BigInt(32),c=BigInt(4294967295),s=Number(n>>o&c),i=Number(n&c),f=r?4:0,x=r?0:4;e.setUint32(t+f,s,r),e.setUint32(t+x,i,r)}function Y(e,t,n){return e&t^~e&n}function Z(e,t,n){return e&t^e&n^t&n}var M=class extends P{constructor(t,n,r,o){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=n,this.padOffset=r,this.isLE=o,this.buffer=new Uint8Array(t),this.view=V(this.buffer)}update(t){O(this),t=R(t),G(t);let{view:n,buffer:r,blockLen:o}=this,c=t.length;for(let s=0;s<c;){let i=Math.min(o-this.pos,c-s);if(i===o){let f=V(t);for(;o<=c-s;s+=o)this.process(f,s);continue}r.set(t.subarray(s,s+i),this.pos),this.pos+=i,s+=i,this.pos===o&&(this.process(n,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){O(this),J(t,this),this.finished=!0;let{buffer:n,view:r,blockLen:o,isLE:c}=this,{pos:s}=this;n[s++]=128,U(this.buffer.subarray(s)),this.padOffset>o-s&&(this.process(r,0),s=0);for(let h=s;h<o;h++)n[h]=0;At(r,o-8,BigInt(this.length*8),c),this.process(r,0);let i=V(t),f=this.outputLen;if(f%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let x=f/4,a=this.get();if(x>a.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<x;h++)i.setUint32(4*h,a[h],c)}digest(){let{buffer:t,outputLen:n}=this;this.digestInto(t);let r=t.slice(0,n);return this.destroy(),r}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:n,buffer:r,length:o,finished:c,destroyed:s,pos:i}=this;return t.destroyed=s,t.finished=c,t.length=o,t.pos=i,o%n&&t.buffer.set(r),t}clone(){return this._cloneInto()}},w=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Ht=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),m=new Uint32Array(64),v=class extends M{constructor(t=32){super(64,t,8,!1),this.A=w[0]|0,this.B=w[1]|0,this.C=w[2]|0,this.D=w[3]|0,this.E=w[4]|0,this.F=w[5]|0,this.G=w[6]|0,this.H=w[7]|0}get(){let{A:t,B:n,C:r,D:o,E:c,F:s,G:i,H:f}=this;return[t,n,r,o,c,s,i,f]}set(t,n,r,o,c,s,i,f){this.A=t|0,this.B=n|0,this.C=r|0,this.D=o|0,this.E=c|0,this.F=s|0,this.G=i|0,this.H=f|0}process(t,n){for(let h=0;h<16;h++,n+=4)m[h]=t.getUint32(n,!1);for(let h=16;h<64;h++){let u=m[h-15],d=m[h-2],g=b(u,7)^b(u,18)^u>>>3,l=b(d,17)^b(d,19)^d>>>10;m[h]=l+m[h-7]+g+m[h-16]|0}let{A:r,B:o,C:c,D:s,E:i,F:f,G:x,H:a}=this;for(let h=0;h<64;h++){let u=b(i,6)^b(i,11)^b(i,25),d=a+u+Y(i,f,x)+Ht[h]+m[h]|0,l=(b(r,2)^b(r,13)^b(r,22))+Z(r,o,c)|0;a=x,x=f,f=i,i=s+d|0,s=c,c=o,o=r,r=d+l|0}r=r+this.A|0,o=o+this.B|0,c=c+this.C|0,s=s+this.D|0,i=i+this.E|0,f=f+this.F|0,x=x+this.G|0,a=a+this.H|0,this.set(r,o,c,s,i,f,x,a)}roundClean(){U(m)}destroy(){this.set(0,0,0,0,0,0,0,0),U(this.buffer)}};var tt=Q(()=>new v);var j=tt;var pt=X(at()),k=X(lt());var Dt=0,Tt=5,Pt=111,Gt=196,Vt={[Dt]:{type:1,networks:[0]},[Pt]:{type:1,networks:[2,1]},[Tt]:{type:2,networks:[0]},[Gt]:{type:2,networks:[2,1]}},Mt=({address:e,network:t})=>{let r=(a=>{try{return(0,pt.base58_to_binary)(a)}catch{throw new B}})(e),{length:o}=r;if(o!==25)throw new A(`Expected the address to be 25 bytes, got ${o}.`);(a=>{let h=a.slice(o-4,o),u=a.slice(0,o-4),d=j.create();d.update(u);let g=j.create();g.update(d.digest());let l=g.digest().slice(0,4);if(h.some((L,E)=>L!==l[E]))throw new A(`Checksum mismatch expected ${h}, got ${l}.`)})(r);let[s]=r,i=Vt[s];if(bt(i))throw new C;let{type:f,networks:x}=i;if(!x.includes(t))throw new T;return{address:e,network:t,type:f,parser:"base58"}},vt=({address:e,network:t})=>{let n=a=>{try{return a.startsWith("bc1p")||a.startsWith("tb1p")||a.startsWith("bcrt1p")?k.bech32m.decode(a):k.bech32.decode(a)}catch{throw new A}},{prefix:r,words:o}=n(e),s={bc:0,tb:2,bcrt:1}[r];if(bt(s))throw new B;if(s!==t)throw new D;let[i,...f]=o;if(i>1)throw new F;switch(k.bech32.fromWords(f).length){case 20:return{address:e,network:t,type:0,parser:"bip-173"};case 32:return{address:e,network:t,type:i===0?3:4,parser:"bip-173"};default:throw new I}},Ce=({address:e,network:t=0})=>{switch(e.charAt(0)){case"1":case"2":case"3":case"m":case"n":return Mt({address:e,network:t});case"b":case"B":case"t":case"T":return vt({address:e,network:t});case"":throw new S;default:throw new C}};export{wt as BitcoinCanister,$ as BtcAddressType,K as BtcNetwork,gt as CkBTCMinterCanister,jt as MinterAlreadyProcessingError,$t as MinterAmountTooLowError,Ot as MinterGenericError,Qt as MinterInsufficientAllowanceError,Jt as MinterInsufficientFundsError,Kt as MinterMalformedAddressError,zt as MinterNoNewUtxosError,Xt as MinterRetrieveBtcError,Rt as MinterTemporaryUnavailableError,qt as MinterUpdateBalanceError,I as ParseBtcAddressBadWitnessLengthError,p as ParseBtcAddressError,B as ParseBtcAddressInvalidError,A as ParseBtcAddressMalformedAddressError,S as ParseBtcAddressNoDataError,D as ParseBtcAddressUnexpectedHumanReadablePartError,C as ParseBtcAddressUnsupportedAddressTypeError,F as ParseBtcAddressUnsupportedWitnessVersionError,T as ParseBtcAddressWrongNetworkError,Zt as createRetrieveBtcError,te as createRetrieveBtcWithApprovalError,Yt as createUpdateBalanceError,Ce as parseBtcAddress,Nt as toGetBalanceParams,Wt as toGetUtxosParams};
2
2
  /*! Bundled license information:
3
3
 
4
4
  @noble/hashes/esm/utils.js: