mainnet-js 2.6.7 → 2.7.1

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.
Files changed (98) hide show
  1. package/dist/index.html +1 -1
  2. package/dist/{mainnet-2.6.7.js → mainnet-2.7.1.js} +446 -156
  3. package/dist/module/cli.js +0 -4
  4. package/dist/module/cli.js.map +1 -1
  5. package/dist/module/index.d.ts +1 -3
  6. package/dist/module/index.d.ts.map +1 -1
  7. package/dist/module/index.js +1 -3
  8. package/dist/module/index.js.map +1 -1
  9. package/dist/module/network/ElectrumNetworkProvider.d.ts +21 -27
  10. package/dist/module/network/ElectrumNetworkProvider.d.ts.map +1 -1
  11. package/dist/module/network/ElectrumNetworkProvider.js +92 -102
  12. package/dist/module/network/ElectrumNetworkProvider.js.map +1 -1
  13. package/dist/module/network/NetworkProvider.d.ts +9 -22
  14. package/dist/module/network/NetworkProvider.d.ts.map +1 -1
  15. package/dist/module/network/constant.d.ts +0 -21
  16. package/dist/module/network/constant.d.ts.map +1 -1
  17. package/dist/module/network/constant.js +0 -21
  18. package/dist/module/network/constant.js.map +1 -1
  19. package/dist/module/network/default.d.ts +2 -2
  20. package/dist/module/network/default.d.ts.map +1 -1
  21. package/dist/module/network/default.js +15 -45
  22. package/dist/module/network/default.js.map +1 -1
  23. package/dist/module/network/interface.d.ts +2 -8
  24. package/dist/module/network/interface.d.ts.map +1 -1
  25. package/dist/module/network/util.d.ts.map +1 -1
  26. package/dist/module/network/util.js +4 -5
  27. package/dist/module/network/util.js.map +1 -1
  28. package/dist/module/rate/ExchangeRate.js +2 -1
  29. package/dist/module/rate/ExchangeRate.js.map +1 -1
  30. package/dist/module/transaction/Wif.d.ts.map +1 -1
  31. package/dist/module/transaction/Wif.js +1 -1
  32. package/dist/module/transaction/Wif.js.map +1 -1
  33. package/dist/module/wallet/Base.d.ts +282 -88
  34. package/dist/module/wallet/Base.d.ts.map +1 -1
  35. package/dist/module/wallet/Base.js +1058 -215
  36. package/dist/module/wallet/Base.js.map +1 -1
  37. package/dist/module/wallet/Util.d.ts +7 -54
  38. package/dist/module/wallet/Util.d.ts.map +1 -1
  39. package/dist/module/wallet/Util.js +12 -79
  40. package/dist/module/wallet/Util.js.map +1 -1
  41. package/dist/module/wallet/Wif.d.ts +46 -251
  42. package/dist/module/wallet/Wif.d.ts.map +1 -1
  43. package/dist/module/wallet/Wif.js +126 -1026
  44. package/dist/module/wallet/Wif.js.map +1 -1
  45. package/dist/module/wallet/createWallet.d.ts +2 -1
  46. package/dist/module/wallet/createWallet.d.ts.map +1 -1
  47. package/dist/module/wallet/createWallet.js +2 -3
  48. package/dist/module/wallet/createWallet.js.map +1 -1
  49. package/dist/module/wallet/interface.d.ts +2 -4
  50. package/dist/module/wallet/interface.d.ts.map +1 -1
  51. package/dist/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +6 -12
  53. package/src/cli.ts +0 -4
  54. package/src/index.ts +1 -5
  55. package/src/network/ElectrumNetworkProvider.ts +133 -188
  56. package/src/network/NetworkProvider.ts +9 -30
  57. package/src/network/Rpc.test.ts +14 -5
  58. package/src/network/constant.ts +0 -23
  59. package/src/network/default.ts +26 -66
  60. package/src/network/electrum.test.ts +2 -4
  61. package/src/network/interface.ts +2 -9
  62. package/src/network/util.ts +6 -7
  63. package/src/rate/ExchangeRate.test.ts +1 -1
  64. package/src/rate/ExchangeRate.ts +2 -1
  65. package/{polyfill/json.js → src/test/json.test.ts} +7 -1
  66. package/src/transaction/Wif.ts +2 -1
  67. package/src/wallet/Base.ts +1520 -273
  68. package/src/wallet/Cashtokens.test.headless.js +1 -1
  69. package/src/wallet/Cashtokens.test.ts +7 -8
  70. package/src/wallet/Util.ts +20 -102
  71. package/src/wallet/Wif.bip39.test.ts +3 -3
  72. package/src/wallet/Wif.test.ts +31 -25
  73. package/src/wallet/Wif.ts +174 -1493
  74. package/src/wallet/Wif.watchOnly.test.ts +5 -5
  75. package/src/wallet/createWallet.ts +11 -10
  76. package/src/wallet/interface.ts +3 -4
  77. package/webpack.config.cjs +4 -55
  78. package/dist/module/qr/Qr.d.ts +0 -9
  79. package/dist/module/qr/Qr.d.ts.map +0 -1
  80. package/dist/module/qr/Qr.js +0 -22
  81. package/dist/module/qr/Qr.js.map +0 -1
  82. package/dist/module/qr/interface.d.ts +0 -6
  83. package/dist/module/qr/interface.d.ts.map +0 -1
  84. package/dist/module/qr/interface.js +0 -2
  85. package/dist/module/qr/interface.js.map +0 -1
  86. package/dist/module/util/eventsource.d.ts +0 -3
  87. package/dist/module/util/eventsource.d.ts.map +0 -1
  88. package/dist/module/util/eventsource.js +0 -11
  89. package/dist/module/util/eventsource.js.map +0 -1
  90. package/polyfill/README.md +0 -1
  91. package/polyfill/eventsource.js +0 -6
  92. package/polyfill/support/types.js +0 -286
  93. package/polyfill/util.cjs +0 -249
  94. package/src/network/default.test.ts +0 -37
  95. package/src/qr/Qr.test.ts +0 -14
  96. package/src/qr/Qr.ts +0 -24
  97. package/src/qr/interface.ts +0 -5
  98. package/src/util/eventsource.ts +0 -12
@@ -1,67 +1,43 @@
1
1
  import { CashAddressNetworkPrefix } from "@bitauth/libauth";
2
- import { NetworkType, UnitEnum } from "../enum.js";
3
- import { Network, HexHeaderI, TxI } from "../interface.js";
4
- import { UtxoI } from "../interface.js";
5
- import { BaseWallet } from "./Base.js";
2
+ import { NetworkType } from "../enum.js";
6
3
  import { WalletTypeEnum } from "./enum.js";
7
- import { CancelWatchFn, SendRequestOptionsI, WaitForTransactionOptions, WaitForTransactionResponse, WalletInfoI } from "./interface.js";
8
- import { OpReturnData, SendRequest, SendRequestArray, SendRequestType, SendResponse, SourceOutput, TokenBurnRequest, TokenGenesisRequest, TokenMintRequest, TokenSendRequest } from "./model.js";
9
- import { BalanceResponse } from "../util/balanceObjectFromSatoshi.js";
10
- import { ElectrumRawTransaction } from "../network/interface.js";
11
- import { RegTestUtil, RegTestWatchUtil, RegTestWifUtil, TestNetUtil, TestNetWatchUtil, TestNetWifUtil, Util, WatchUtil, WifUtil } from "./Util.js";
4
+ import { MnemonicI, SendRequestOptionsI, WalletInfoI } from "./interface.js";
5
+ import { OpReturnData, SendRequest, SendRequestArray, SendResponse, SourceOutput, TokenSendRequest } from "./model.js";
12
6
  import { SignedMessageI } from "../message/index.js";
13
7
  import ElectrumNetworkProvider from "../network/ElectrumNetworkProvider.js";
14
- import { IdentitySnapshot } from "./bcmr-v2.schema.js";
15
- import { ImageI } from "../qr/interface.js";
16
- import { TransactionHistoryItem } from "../history/interface.js";
8
+ import { BalanceResponse } from "../util/balanceObjectFromSatoshi.js";
9
+ import { BaseWallet } from "./Base.js";
17
10
  /**
18
11
  * Class to manage a bitcoin cash wallet.
19
12
  */
20
13
  export declare class Wallet extends BaseWallet {
21
- static networkPrefix: CashAddressNetworkPrefix;
22
- provider?: ElectrumNetworkProvider;
23
- cashaddr?: string;
24
- tokenaddr?: string;
14
+ provider: ElectrumNetworkProvider;
15
+ cashaddr: string;
16
+ tokenaddr: string;
25
17
  derivationPath: string;
26
18
  parentDerivationPath: string;
27
- parentXPubKey?: string;
28
- privateKey?: Uint8Array;
29
- publicKeyCompressed?: Uint8Array;
30
- privateKeyWif?: string;
31
- publicKey?: Uint8Array;
32
- publicKeyHash?: Uint8Array;
33
- networkPrefix: CashAddressNetworkPrefix;
34
- _slpSemiAware: boolean;
35
- _util?: Util;
19
+ mnemonic: string;
20
+ parentXPubKey: string;
21
+ privateKey: Uint8Array;
22
+ publicKeyCompressed: Uint8Array;
23
+ privateKeyWif: string;
24
+ publicKey: Uint8Array;
25
+ publicKeyHash: Uint8Array;
26
+ name: string;
36
27
  static signedMessage: SignedMessageI;
37
- get util(): Util;
38
- static get util(): typeof Util;
39
- slpSemiAware(value?: boolean): Wallet;
40
- getNetworkProvider(network?: Network): import("../network/NetworkProvider.js").default;
41
- /**
42
- * getTokenDepositAddress - get a cashtoken aware wallet deposit address
43
- *
44
- * @returns The cashtoken aware deposit address as a string
45
- */
46
- getTokenDepositAddress(): string;
47
- /**
48
- * getDepositQr - get an address qrcode, encoded for display on the web
49
- *
50
- * @returns The qrcode for the token aware address
51
- */
52
- getTokenDepositQr(): ImageI;
53
- /**
54
- * explorerUrl Web url to a transaction on a block explorer
55
- *
56
- * @param txId transaction Id
57
- * @returns Url string
58
- */
59
- explorerUrl(txId: string): string;
28
+ getSeed(): MnemonicI;
60
29
  getInfo(): WalletInfoI;
61
30
  getPublicKey(hex?: boolean): string | Uint8Array;
62
31
  getPublicKeyCompressed(hex?: boolean): string | Uint8Array;
63
- getPublicKeyHash(hex?: boolean): string | Uint8Array;
64
32
  constructor(name?: string, network?: NetworkType, walletType?: WalletTypeEnum);
33
+ /**
34
+ * fromId - create a wallet from encoded walletId string
35
+ *
36
+ * @param walletId walletId options to steer the creation process
37
+ *
38
+ * @returns wallet instantiated accordingly to the walletId rules
39
+ */
40
+ static fromId<T extends typeof Wallet>(this: T, walletId: string): Promise<InstanceType<T>>;
65
41
  /**
66
42
  * fromWIF - create a wallet using the private key supplied in `Wallet Import Format`
67
43
  *
@@ -71,27 +47,28 @@ export declare class Wallet extends BaseWallet {
71
47
  */
72
48
  static fromWIF<T extends typeof Wallet>(this: T, wif: string): Promise<InstanceType<T>>;
73
49
  /**
74
- * fromCashaddr - create a watch-only wallet in the network derived from the address
50
+ * fromSeed - create a wallet using the seed phrase and derivation path
75
51
  *
76
- * such kind of wallet does not have a private key and is unable to spend any funds
77
- * however it still allows to use many utility functions such as getting and watching balance, etc.
52
+ * unless specified the derivation path m/44'/245'/0'/0/0 will be userd
53
+ * this derivation path is standard for Electron Cash SLP and other SLP enabled wallets
78
54
  *
79
- * @param address cashaddress of a wallet
55
+ * @param seed BIP39 12 word seed phrase
56
+ * @param derivationPath BIP44 HD wallet derivation path to get a single the private key from hierarchy
80
57
  *
81
58
  * @returns instantiated wallet
82
59
  */
83
- static fromCashaddr<T extends typeof Wallet>(this: T, address: string): Promise<InstanceType<T>>;
60
+ static fromSeed<T extends typeof Wallet>(this: T, seed: string, derivationPath?: string): Promise<InstanceType<T>>;
84
61
  /**
85
- * fromTokenaddr - create a watch-only wallet in the network derived from the address
62
+ * newRandom - create a random wallet
86
63
  *
87
- * such kind of wallet does not have a private key and is unable to spend any funds
88
- * however it still allows to use many utility functions such as getting and watching balance, etc.
64
+ * if `name` parameter is specified, the wallet will also be persisted to DB
89
65
  *
90
- * @param address token aware cashaddress of a wallet
66
+ * @param name user friendly wallet alias
67
+ * @param dbName name under which the wallet will be stored in the database
91
68
  *
92
69
  * @returns instantiated wallet
93
70
  */
94
- static fromTokenaddr<T extends typeof Wallet>(this: T, address: string): Promise<InstanceType<T>>;
71
+ static newRandom<T extends typeof Wallet>(this: T, name?: string, dbName?: string): Promise<InstanceType<T>>;
95
72
  protected generate(): Promise<this>;
96
73
  private _generateWif;
97
74
  private _generateMnemonic;
@@ -99,46 +76,25 @@ export declare class Wallet extends BaseWallet {
99
76
  getXPubKeys(paths?: any): Promise<any[]>;
100
77
  protected fromSeed(mnemonic: string, derivationPath?: string): Promise<this>;
101
78
  deriveHdPaths(hdPaths: string[]): Promise<any[]>;
102
- protected watchOnly(address: string): Promise<this>;
103
79
  protected fromWIF(secret: string): Promise<this>;
80
+ /**
81
+ * newRandom (internal) if the wallet is named, get or create it; otherwise create a random
82
+ * unnamed wallet
83
+ * @param {string} name name of the wallet
84
+ * @param {string} dbName database name the wallet is stored in
85
+ */
104
86
  protected newRandom(name: string, dbName?: string): Promise<this>;
105
- protected named(name: string, dbName?: string, forceNew?: boolean): Promise<this>;
106
- protected replaceNamed(name: string, walletId: string, dbName?: string): Promise<this>;
107
- protected namedExists(name: string, dbName?: string): Promise<boolean>;
108
87
  toString(): string;
109
- toDbString(): string;
110
- getAddressUtxos(address?: string): Promise<UtxoI[]>;
111
88
  /**
112
- * utxos Get unspent outputs for the wallet
89
+ * toDbString - store the serialized version of the wallet in the database, not just the name
113
90
  *
91
+ * @throws {Error} if called on BaseWallet
114
92
  */
115
- getUtxos(): Promise<UtxoI[]>;
116
- getBalance(rawUnit?: string, priceCache?: boolean): Promise<BalanceResponse | number>;
117
- getBalanceFromUtxos(): Promise<number>;
118
- getBalanceFromProvider(): Promise<number>;
119
- watchAddress(callback: (txHash: string) => void): CancelWatchFn;
120
- watchAddressTransactions(callback: (tx: ElectrumRawTransaction) => void): CancelWatchFn;
121
- watchAddressTokenTransactions(callback: (tx: ElectrumRawTransaction) => void): CancelWatchFn;
122
- watchBalance(callback: (balance: BalanceResponse) => void): CancelWatchFn;
123
- watchBalanceUsd(callback: (balance: BalanceResponse) => void, usdPriceRefreshInterval?: number): CancelWatchFn;
124
- waitForBalance(value: number, rawUnit?: UnitEnum): Promise<BalanceResponse>;
125
- watchTokenBalance(tokenId: string, callback: (balance: bigint) => void): CancelWatchFn;
126
- waitForTokenBalance(tokenId: string, amount: bigint): Promise<bigint>;
127
- getTokenInfo(tokenId: string): Promise<IdentitySnapshot | undefined>;
128
- private _getMaxAmountToSend;
93
+ toDbString(): string;
129
94
  getMaxAmountToSend(params?: {
130
95
  outputCount?: number;
131
96
  options?: SendRequestOptionsI;
132
97
  }): Promise<BalanceResponse>;
133
- /**
134
- * send Send some amount to an address
135
- * this function processes the send requests, encodes the transaction, sends it to the network
136
- * @returns (depending on the options parameter) the transaction id, new address balance and a link to the transaction on the blockchain explorer
137
- *
138
- * This is a first class function with REST analog, maintainers should strive to keep backward-compatibility
139
- *
140
- */
141
- send(requests: SendRequest | TokenSendRequest | OpReturnData | Array<SendRequest | TokenSendRequest | OpReturnData> | SendRequestArray[], options?: SendRequestOptionsI): Promise<SendResponse>;
142
98
  /**
143
99
  * sendMax Send all available funds to a destination cash address
144
100
  *
@@ -148,149 +104,20 @@ export declare class Wallet extends BaseWallet {
148
104
  * @returns (depending on the options parameter) the transaction id, new address balance and a link to the transaction on the blockchain explorer
149
105
  */
150
106
  sendMax(cashaddr: string, options?: SendRequestOptionsI): Promise<SendResponse>;
151
- /**
152
- * sendMaxRaw (internal) Send all available funds to a destination cash address
153
- *
154
- * @param {string} cashaddr destination cash address
155
- * @param {SendRequestOptionsI} options Options of the send requests
156
- *
157
- * @returns the transaction id sent to the network
158
- */
159
- private sendMaxRaw;
160
107
  /**
161
108
  * encodeTransaction Encode and sign a transaction given a list of sendRequests, options and estimate fees.
162
109
  * @param {SendRequest[]} sendRequests SendRequests
163
110
  * @param {boolean} discardChange=false
164
111
  * @param {SendRequestOptionsI} options Options of the send requests
165
112
  */
166
- encodeTransaction(requests: SendRequest | TokenSendRequest | OpReturnData | Array<SendRequest | TokenSendRequest | OpReturnData> | SendRequestArray[], discardChange?: boolean, options?: SendRequestOptionsI): Promise<{
113
+ encodeTransaction(requests: SendRequest | TokenSendRequest | OpReturnData | Array<SendRequest | TokenSendRequest | OpReturnData> | SendRequestArray[], discardChange?: boolean, options?: SendRequestOptionsI, privateKey?: Uint8Array): Promise<{
167
114
  encodedTransaction: Uint8Array;
168
115
  tokenIds: string[];
169
116
  sourceOutputs: any[];
170
117
  }>;
171
118
  signUnsignedTransaction(transaction: Uint8Array | string, sourceOutputs: SourceOutput[]): Promise<Uint8Array>;
172
- submitTransaction(transaction: Uint8Array, awaitPropagation?: boolean): Promise<string>;
173
- getRawHistory(fromHeight?: number, toHeight?: number): Promise<TxI[]>;
174
- /**
175
- * getHistory gets transaction history of this wallet with most data decoded and ready to present to user
176
- * @note balance calculations are valid only if querying to the blockchain tip (`toHeight` === -1, `count` === -1)
177
- * @note this method is heavy on network calls, if invoked in browser use of cache is advised, @see `Config.UseLocalStorageCache`
178
- * @note this method tries to recreate the history tab view of Electron Cash wallet, however, it may not be 100% accurate if the tnransaction value changes are the same in the same block (ordering)
179
- *
180
- * @param unit optional, BCH or currency unit to present balance and balance changes. If unit is currency like USD or EUR, balances will be subject to possible rounding errors. Default 0
181
- * @param fromHeight optional, if set, history will be limited. Default 0
182
- * @param toHeight optional, if set, history will be limited. Default -1, meaning that all history items will be returned, including mempool
183
- * @param start optional, if set, the result set will be paginated with offset `start`
184
- * @param count optional, if set, the result set will be paginated with `count`. Default -1, meaning that all history items will be returned
185
- *
186
- * @returns an array of transaction history items, with input values and addresses encoded in cashaddress format. @see `TransactionHistoryItem` type
187
- */
188
- getHistory({ unit, fromHeight, toHeight, start, count, }: {
189
- unit?: UnitEnum;
190
- fromHeight?: number;
191
- toHeight?: number;
192
- start?: number;
193
- count?: number;
194
- }): Promise<TransactionHistoryItem[]>;
195
- getLastTransaction(confirmedOnly?: boolean): Promise<ElectrumRawTransaction | null>;
196
- waitForTransaction(options?: WaitForTransactionOptions): Promise<WaitForTransactionResponse>;
197
- /**
198
- * watchBlocks Watch network blocks
199
- *
200
- * @param callback callback with a block header object
201
- * @param skipCurrentHeight if set, the notification about current block will not arrive
202
- *
203
- * @returns a function which will cancel watching upon evaluation
204
- */
205
- watchBlocks(callback: (header: HexHeaderI) => void, skipCurrentHeight?: boolean): CancelWatchFn;
206
- /**
207
- * waitForBlock Wait for a network block
208
- *
209
- * @param height if specified waits for this exact blockchain height, otherwise resolves with the next block
210
- *
211
- */
212
- waitForBlock(height?: number): Promise<HexHeaderI>;
213
119
  private deriveInfo;
214
120
  sign(message: string): Promise<import("../message/interface.js").SignedMessageResponseI>;
215
- verify(message: string, sig: string, publicKey?: Uint8Array): Promise<import("../message/interface.js").VerifyMessageResponseI>;
216
- /**
217
- * Create new cashtoken, both funglible and/or non-fungible (NFT)
218
- * Refer to spec https://github.com/bitjson/cashtokens
219
- * @param {number} genesisRequest.amount amount of *fungible* tokens to create
220
- * @param {NFTCapability?} genesisRequest.capability capability of new NFT
221
- * @param {string?} genesisRequest.commitment NFT commitment message
222
- * @param {string?} genesisRequest.cashaddr cash address to send the created token UTXO to; if undefined will default to your address
223
- * @param {number?} genesisRequest.value satoshi value to send alongside with tokens; if undefined will default to 1000 satoshi
224
- * @param {SendRequestType | SendRequestType[]} sendRequests single or an array of extra send requests (OP_RETURN, value transfer, etc.) to include in genesis transaction
225
- * @param {SendRequestOptionsI} options Options of the send requests
226
- */
227
- tokenGenesis(genesisRequest: TokenGenesisRequest, sendRequests?: SendRequestType | SendRequestType[], options?: SendRequestOptionsI): Promise<SendResponse>;
228
- /**
229
- * Mint new NFT cashtokens using an existing minting token
230
- * Refer to spec https://github.com/bitjson/cashtokens
231
- * @param {string} tokenId tokenId of an NFT to mint
232
- * @param {TokenMintRequest | TokenMintRequest[]} mintRequests mint requests with new token properties and recipients
233
- * @param {NFTCapability?} mintRequest.capability capability of new NFT
234
- * @param {string?} mintRequest.commitment NFT commitment message
235
- * @param {string?} mintRequest.cashaddr cash address to send the created token UTXO to; if undefined will default to your address
236
- * @param {number?} mintRequest.value satoshi value to send alongside with tokens; if undefined will default to 1000 satoshi
237
- * @param {boolean?} deductTokenAmount if minting token contains fungible amount, deduct from it by amount of minted tokens
238
- * @param {SendRequestOptionsI} options Options of the send requests
239
- */
240
- tokenMint(tokenId: string, mintRequests: TokenMintRequest | Array<TokenMintRequest>, deductTokenAmount?: boolean, options?: SendRequestOptionsI): Promise<SendResponse>;
241
- /**
242
- * Perform an explicit token burning by spending a token utxo to an OP_RETURN
243
- *
244
- * Behaves differently for fungible and non-fungible tokens:
245
- * * NFTs are always "destroyed"
246
- * * FTs' amount is reduced by the amount specified, if 0 FT amount is left and no NFT present, the token is "destroyed"
247
- *
248
- * Refer to spec https://github.com/bitjson/cashtokens
249
- * @param {string} burnRequest.tokenId tokenId of a token to burn
250
- * @param {NFTCapability} burnRequest.capability capability of the NFT token to select, optional
251
- * @param {string?} burnRequest.commitment commitment of the NFT token to select, optional
252
- * @param {number?} burnRequest.amount amount of fungible tokens to burn, optional
253
- * @param {string?} burnRequest.cashaddr address to return token and satoshi change to
254
- * @param {string?} message optional message to include in OP_RETURN
255
- * @param {SendRequestOptionsI} options Options of the send requests
256
- */
257
- tokenBurn(burnRequest: TokenBurnRequest, message?: string, options?: SendRequestOptionsI): Promise<SendResponse>;
258
- /**
259
- * getTokenUtxos Get unspent token outputs for the wallet
260
- * will return utxos only for the specified token if `tokenId` provided
261
- * @param {string?} tokenId tokenId (category) to filter utxos by, if not set will return utxos from all tokens
262
- * @returns {UtxoI[]} token utxos
263
- */
264
- getTokenUtxos(tokenId?: string): Promise<UtxoI[]>;
265
- /**
266
- * getTokenBalance Gets fungible token balance
267
- * for NFT token balance see @ref getNftTokenBalance
268
- * @param {string} tokenId tokenId to get balance for
269
- * @returns {bigint} fungible token balance
270
- */
271
- getTokenBalance(tokenId: string): Promise<bigint>;
272
- /**
273
- * getNftTokenBalance Gets non-fungible token (NFT) balance for a particular tokenId
274
- * disregards fungible token balances
275
- * for fungible token balance see @ref getTokenBalance
276
- * @param {string} tokenId tokenId to get balance for
277
- * @returns {number} non-fungible token balance
278
- */
279
- getNftTokenBalance(tokenId: string): Promise<number>;
280
- /**
281
- * getAllTokenBalances Gets all fungible token balances in this wallet
282
- * @returns {Object} a map [tokenId => balance] for all tokens in this wallet
283
- */
284
- getAllTokenBalances(): Promise<{
285
- [tokenId: string]: bigint;
286
- }>;
287
- /**
288
- * getAllNftTokenBalances Gets all non-fungible token (NFT) balances in this wallet
289
- * @returns {Object} a map [tokenId => balance] for all NFTs in this wallet
290
- */
291
- getAllNftTokenBalances(): Promise<{
292
- [tokenId: string]: number;
293
- }>;
294
121
  }
295
122
  /**
296
123
  * Class to manage a testnet wallet.
@@ -299,7 +126,6 @@ export declare class TestNetWallet extends Wallet {
299
126
  static networkPrefix: CashAddressNetworkPrefix;
300
127
  static faucetServer: string;
301
128
  constructor(name?: string);
302
- static get util(): typeof TestNetUtil;
303
129
  }
304
130
  /**
305
131
  * Class to manage a regtest wallet.
@@ -307,7 +133,6 @@ export declare class TestNetWallet extends Wallet {
307
133
  export declare class RegTestWallet extends Wallet {
308
134
  static networkPrefix: CashAddressNetworkPrefix;
309
135
  constructor(name?: string);
310
- static get util(): typeof RegTestUtil;
311
136
  }
312
137
  /**
313
138
  * Class to manage a bitcoin cash wif wallet.
@@ -316,7 +141,6 @@ export declare class WifWallet extends Wallet {
316
141
  static networkPrefix: CashAddressNetworkPrefix;
317
142
  static walletType: WalletTypeEnum;
318
143
  constructor(name?: string);
319
- static get util(): typeof WifUtil;
320
144
  }
321
145
  /**
322
146
  * Class to manage a testnet wif wallet.
@@ -325,7 +149,6 @@ export declare class TestNetWifWallet extends Wallet {
325
149
  static networkPrefix: CashAddressNetworkPrefix;
326
150
  static walletType: WalletTypeEnum;
327
151
  constructor(name?: string);
328
- static get util(): typeof TestNetWifUtil;
329
152
  }
330
153
  /**
331
154
  * Class to manage a regtest wif wallet.
@@ -334,33 +157,5 @@ export declare class RegTestWifWallet extends Wallet {
334
157
  static networkPrefix: CashAddressNetworkPrefix;
335
158
  static walletType: WalletTypeEnum;
336
159
  constructor(name?: string);
337
- static get util(): typeof RegTestWifUtil;
338
- }
339
- /**
340
- * Class to manage a bitcoin cash watch wallet.
341
- */
342
- export declare class WatchWallet extends Wallet {
343
- static networkPrefix: CashAddressNetworkPrefix;
344
- static walletType: WalletTypeEnum;
345
- constructor(name?: string);
346
- static get util(): typeof WatchUtil;
347
- }
348
- /**
349
- * Class to manage a testnet watch wallet.
350
- */
351
- export declare class TestNetWatchWallet extends Wallet {
352
- static networkPrefix: CashAddressNetworkPrefix;
353
- static walletType: WalletTypeEnum;
354
- constructor(name?: string);
355
- static get util(): typeof TestNetWatchUtil;
356
- }
357
- /**
358
- * Class to manage a regtest watch wallet.
359
- */
360
- export declare class RegTestWatchWallet extends Wallet {
361
- static networkPrefix: CashAddressNetworkPrefix;
362
- static walletType: WalletTypeEnum;
363
- constructor(name?: string);
364
- static get util(): typeof RegTestWatchUtil;
365
160
  }
366
161
  //# sourceMappingURL=Wif.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wif.d.ts","sourceRoot":"","sources":["../../../src/wallet/Wif.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Wif.d.ts","sourceRoot":"","sources":["../../../src/wallet/Wif.ts"],"names":[],"mappings":"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"}