react-native-nitro-ark 0.0.44 → 0.0.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cpp/NitroArk.hpp CHANGED
@@ -48,7 +48,7 @@ public:
48
48
  }
49
49
 
50
50
  std::shared_ptr<Promise<void>>
51
- loadWallet(const std::string &datadir, const BarkCreateOpts &opts) override {
51
+ createWallet(const std::string &datadir, const BarkCreateOpts &opts) override {
52
52
  return Promise<void>::async([datadir, opts]() {
53
53
  try {
54
54
  bark_cxx::ConfigOpts config_opts;
@@ -81,7 +81,18 @@ public:
81
81
  }
82
82
  create_opts.config = config_opts;
83
83
 
84
- bark_cxx::load_wallet(datadir, create_opts);
84
+ bark_cxx::create_wallet(datadir, create_opts);
85
+ } catch (const rust::Error &e) {
86
+ throw std::runtime_error(e.what());
87
+ }
88
+ });
89
+ }
90
+
91
+ std::shared_ptr<Promise<void>>
92
+ loadWallet(const std::string &datadir, const std::string &mnemonic) override {
93
+ return Promise<void>::async([datadir, mnemonic]() {
94
+ try {
95
+ bark_cxx::load_wallet(datadir, mnemonic);
85
96
  } catch (const rust::Error &e) {
86
97
  throw std::runtime_error(e.what());
87
98
  }
@@ -261,6 +272,31 @@ public:
261
272
  });
262
273
  }
263
274
 
275
+ std::shared_ptr<Promise<std::string>>
276
+ signMessage(const std::string &message, double index) override {
277
+ return Promise<std::string>::async([message, index]() {
278
+ try {
279
+ uint32_t index_val = static_cast<uint32_t>(index);
280
+ rust::String signature_rs = bark_cxx::sign_message(message, index_val);
281
+ return std::string(signature_rs.data(), signature_rs.length());
282
+ } catch (const rust::Error &e) {
283
+ throw std::runtime_error(e.what());
284
+ }
285
+ });
286
+ }
287
+
288
+ std::shared_ptr<Promise<bool>>
289
+ verifyMessage(const std::string &message, const std::string &signature,
290
+ const std::string &publicKey) override {
291
+ return Promise<bool>::async([message, signature, publicKey]() {
292
+ try {
293
+ return bark_cxx::verify_message(message, signature, publicKey);
294
+ } catch (const rust::Error &e) {
295
+ throw std::runtime_error(e.what());
296
+ }
297
+ });
298
+ }
299
+
264
300
  std::shared_ptr<Promise<std::vector<BarkVtxo>>> getVtxos() override {
265
301
  return Promise<std::vector<BarkVtxo>>::async([]() {
266
302
  try {
@@ -1022,6 +1022,10 @@ void persist_config(::bark_cxx::ConfigOpts opts);
1022
1022
 
1023
1023
  ::bark_cxx::NewAddressResult new_address();
1024
1024
 
1025
+ ::rust::String sign_message(::rust::Str message, ::std::uint32_t index);
1026
+
1027
+ bool verify_message(::rust::Str message, ::rust::Str signature, ::rust::Str public_key);
1028
+
1025
1029
  ::rust::Vec<::bark_cxx::BarkVtxo> get_vtxos();
1026
1030
 
1027
1031
  ::rust::String bolt11_invoice(::std::uint64_t amount_msat);
@@ -1032,7 +1036,9 @@ void sync();
1032
1036
 
1033
1037
  void sync_rounds();
1034
1038
 
1035
- void load_wallet(::rust::Str datadir, ::bark_cxx::CreateOpts opts);
1039
+ void create_wallet(::rust::Str datadir, ::bark_cxx::CreateOpts opts);
1040
+
1041
+ void load_wallet(::rust::Str datadir, ::rust::Str mnemonic);
1036
1042
 
1037
1043
  ::rust::String board_amount(::std::uint64_t amount_sat);
1038
1044
 
@@ -14,15 +14,25 @@ export function createMnemonic() {
14
14
  return NitroArkHybridObject.createMnemonic();
15
15
  }
16
16
 
17
+ /**
18
+ * Creates a new wallet at the specified directory.
19
+ * @param datadir Path to the data directory.
20
+ * @param opts The options for wallet creation.
21
+ * @returns A promise that resolves on success or rejects on error.
22
+ */
23
+ export function createWallet(datadir, opts) {
24
+ return NitroArkHybridObject.createWallet(datadir, opts);
25
+ }
26
+
17
27
  /**
18
28
  * Loads an existing wallet or creates a new one at the specified directory.
19
29
  * Once loaded, the wallet state is managed internally.
20
30
  * @param datadir Path to the data directory.
21
- * @param opts Creation and configuration options.
31
+ * @param mnemonic The BIP39 mnemonic phrase for the wallet.
22
32
  * @returns A promise that resolves on success or rejects on error.
23
33
  */
24
- export function loadWallet(datadir, opts) {
25
- return NitroArkHybridObject.loadWallet(datadir, opts);
34
+ export function loadWallet(datadir, mnemonic) {
35
+ return NitroArkHybridObject.loadWallet(datadir, mnemonic);
26
36
  }
27
37
 
28
38
  /**
@@ -125,6 +135,27 @@ export function newAddress() {
125
135
  return NitroArkHybridObject.newAddress();
126
136
  }
127
137
 
138
+ /**
139
+ * Signs a message with the private key at the specified index.
140
+ * @param message The message to sign.
141
+ * @param index The index of the keypair to use for signing.
142
+ * @returns A promise resolving to the signature string.
143
+ */
144
+ export function signMessage(message, index) {
145
+ return NitroArkHybridObject.signMessage(message, index);
146
+ }
147
+
148
+ /**
149
+ * Verifies a signed message.
150
+ * @param message The original message.
151
+ * @param signature The signature to verify.
152
+ * @param publicKey The public key corresponding to the private key used for signing.
153
+ * @returns A promise resolving to true if the signature is valid, false otherwise.
154
+ */
155
+ export function verifyMessage(message, signature, publicKey) {
156
+ return NitroArkHybridObject.verifyMessage(message, signature, publicKey);
157
+ }
158
+
128
159
  /**
129
160
  * Gets the list of VTXOs as a JSON string for the loaded wallet.
130
161
  * @param no_sync If true, skips synchronization with the blockchain. Defaults to false.
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","NitroArkHybridObject","createHybridObject","createMnemonic","loadWallet","datadir","opts","closeWallet","isWalletLoaded","persistConfig","maintenance","sync","syncExits","syncRounds","getArkInfo","offchainBalance","deriveStoreNextKeypair","peakKeyPair","index","newAddress","getVtxos","onchainBalance","onchainSync","onchainListUnspent","onchainUtxos","onchainAddress","onchainSend","destination","amountSat","onchainDrain","onchainSendMany","outputs","bolt11Invoice","amountMsat","finishLightningReceive","bolt11","sendLightningPayment","sendLnaddr","addr","comment","boardAmount","boardAll","sendArkoorPayment","sendRoundOnchainPayment","offboardSpecific","vtxoIds","destinationAddress","offboardAll"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAkBzD;AACA,OAAO,MAAMC,oBAAoB,GAC/BD,YAAY,CAACE,kBAAkB,CAAW,UAAU,CAAC;;AAEvD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAoB;EAChD,OAAOF,oBAAoB,CAACE,cAAc,CAAC,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CACxBC,OAAe,EACfC,IAAoB,EACL;EACf,OAAOL,oBAAoB,CAACG,UAAU,CAACC,OAAO,EAAEC,IAAI,CAAC;AACvD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAA,EAAkB;EAC3C,OAAON,oBAAoB,CAACM,WAAW,CAAC,CAAC;AAC3C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAqB;EACjD,OAAOP,oBAAoB,CAACO,cAAc,CAAC,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACH,IAAoB,EAAiB;EACjE,OAAOL,oBAAoB,CAACQ,aAAa,CAACH,IAAI,CAAC;AACjD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,WAAWA,CAAA,EAAkB;EAC3C,OAAOT,oBAAoB,CAACS,WAAW,CAAC,CAAC;AAC3C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,IAAIA,CAAA,EAAkB;EACpC,OAAOV,oBAAoB,CAACU,IAAI,CAAC,CAAC;AACpC;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,SAASA,CAAA,EAAkB;EACzC,OAAOX,oBAAoB,CAACW,SAAS,CAAC,CAAC;AACzC;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CAAA,EAAkB;EAC1C,OAAOZ,oBAAoB,CAACY,UAAU,CAAC,CAAC;AAC1C;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CAAA,EAAyB;EACjD,OAAOb,oBAAoB,CAACa,UAAU,CAAC,CAAC;AAC1C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAAA,EAAmC;EAChE,OAAOd,oBAAoB,CAACc,eAAe,CAAC,CAAC;AAC/C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAAA,EAA2B;EAC/D,OAAOf,oBAAoB,CAACe,sBAAsB,CAAC,CAAC;AACtD;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,KAAa,EAA0B;EACjE,OAAOjB,oBAAoB,CAACgB,WAAW,CAACC,KAAK,CAAC;AAChD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CAAA,EAA8B;EACtD,OAAOlB,oBAAoB,CAACkB,UAAU,CAAC,CAAC;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,QAAQA,CAAA,EAAwB;EAC9C,OAAOnB,oBAAoB,CAACmB,QAAQ,CAAC,CAAC;AACxC;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAkC;EAC9D,OAAOpB,oBAAoB,CAACoB,cAAc,CAAC,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAA,EAAkB;EAC3C,OAAOrB,oBAAoB,CAACqB,WAAW,CAAC,CAAC;AAC3C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAA,EAAoB;EACpD,OAAOtB,oBAAoB,CAACsB,kBAAkB,CAAC,CAAC;AAClD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAAA,EAAoB;EAC9C,OAAOvB,oBAAoB,CAACuB,YAAY,CAAC,CAAC;AAC5C;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAA,EAAoB;EAChD,OAAOxB,oBAAoB,CAACwB,cAAc,CAAC,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CACzBC,WAAmB,EACnBC,SAAiB,EACc;EAC/B,OAAO3B,oBAAoB,CAACyB,WAAW,CAACC,WAAW,EAAEC,SAAS,CAAC;AACjE;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAACF,WAAmB,EAAmB;EACjE,OAAO1B,oBAAoB,CAAC4B,YAAY,CAACF,WAAW,CAAC;AACvD;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,eAAeA,CAC7BC,OAA6B,EACZ;EACjB,OAAO9B,oBAAoB,CAAC6B,eAAe,CAACC,OAAO,CAAC;AACtD;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,UAAkB,EAAmB;EACjE,OAAOhC,oBAAoB,CAAC+B,aAAa,CAACC,UAAU,CAAC;AACvD;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAACC,MAAc,EAAiB;EACpE,OAAOlC,oBAAoB,CAACiC,sBAAsB,CAACC,MAAM,CAAC;AAC5D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAClCT,WAAmB,EACnBC,SAAkB,EACe;EACjC,OAAO3B,oBAAoB,CAACmC,oBAAoB,CAACT,WAAW,EAAEC,SAAS,CAAC;AAC1E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASS,UAAUA,CACxBC,IAAY,EACZV,SAAiB,EACjBW,OAAe,EACc;EAC7B,OAAOtC,oBAAoB,CAACoC,UAAU,CAACC,IAAI,EAAEV,SAAS,EAAEW,OAAO,CAAC;AAClE;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACZ,SAAiB,EAAmB;EAC9D,OAAO3B,oBAAoB,CAACuC,WAAW,CAACZ,SAAS,CAAC;AACpD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASa,QAAQA,CAAA,EAAoB;EAC1C,OAAOxC,oBAAoB,CAACwC,QAAQ,CAAC,CAAC;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAC/Bf,WAAmB,EACnBC,SAAiB,EACa;EAC9B,OAAO3B,oBAAoB,CAACyC,iBAAiB,CAACf,WAAW,EAAEC,SAAS,CAAC;AACvE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASe,uBAAuBA,CACrChB,WAAmB,EACnBC,SAAiB,EACA;EACjB,OAAO3B,oBAAoB,CAAC0C,uBAAuB,CAAChB,WAAW,EAAEC,SAAS,CAAC;AAC7E;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASgB,gBAAgBA,CAC9BC,OAAiB,EACjBC,kBAA0B,EACT;EACjB,OAAO7C,oBAAoB,CAAC2C,gBAAgB,CAACC,OAAO,EAAEC,kBAAkB,CAAC;AAC3E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACD,kBAA0B,EAAmB;EACvE,OAAO7C,oBAAoB,CAAC8C,WAAW,CAACD,kBAAkB,CAAC;AAC7D;;AAEA","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","NitroArkHybridObject","createHybridObject","createMnemonic","createWallet","datadir","opts","loadWallet","mnemonic","closeWallet","isWalletLoaded","persistConfig","maintenance","sync","syncExits","syncRounds","getArkInfo","offchainBalance","deriveStoreNextKeypair","peakKeyPair","index","newAddress","signMessage","message","verifyMessage","signature","publicKey","getVtxos","onchainBalance","onchainSync","onchainListUnspent","onchainUtxos","onchainAddress","onchainSend","destination","amountSat","onchainDrain","onchainSendMany","outputs","bolt11Invoice","amountMsat","finishLightningReceive","bolt11","sendLightningPayment","sendLnaddr","addr","comment","boardAmount","boardAll","sendArkoorPayment","sendRoundOnchainPayment","offboardSpecific","vtxoIds","destinationAddress","offboardAll"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -85,7 +85,8 @@ export interface NitroArk extends HybridObject<{
85
85
  android: 'c++';
86
86
  }> {
87
87
  createMnemonic(): Promise<string>;
88
- loadWallet(datadir: string, opts: BarkCreateOpts): Promise<void>;
88
+ createWallet(datadir: string, opts: BarkCreateOpts): Promise<void>;
89
+ loadWallet(datadir: string, mnemonic: string): Promise<void>;
89
90
  isWalletLoaded(): Promise<boolean>;
90
91
  closeWallet(): Promise<void>;
91
92
  persistConfig(opts: BarkConfigOpts): Promise<void>;
@@ -98,6 +99,8 @@ export interface NitroArk extends HybridObject<{
98
99
  deriveStoreNextKeypair(): Promise<KeyPairResult>;
99
100
  peakKeyPair(index: number): Promise<KeyPairResult>;
100
101
  newAddress(): Promise<NewAddressResult>;
102
+ signMessage(message: string, index: number): Promise<string>;
103
+ verifyMessage(message: string, signature: string, publicKey: string): Promise<boolean>;
101
104
  getVtxos(): Promise<BarkVtxo[]>;
102
105
  onchainBalance(): Promise<OnchainBalanceResult>;
103
106
  onchainSync(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"NitroArk.nitro.d.ts","sourceRoot":"","sources":["../../../src/NitroArk.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM/D,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAGD,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,EAAE,MAAM,CAAC;IAEjB,eAAe,EAAE,MAAM,CAAC;IAExB,iBAAiB,EAAE,MAAM,CAAC;IAE1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,MAAM,WAAW,QAAS,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAE,CAAC;IAE5E,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAG5B,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACnC,eAAe,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClD,sBAAsB,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACjD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACnD,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,QAAQ,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAGhC,cAAc,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,CACT,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAEjC,YAAY,CACV,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,eAAe,CACb,OAAO,EAAE,kBAAkB,EAAE,EAC7B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAAC;IAInB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,iBAAiB,CACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAChC,oBAAoB,CAClB,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,uBAAuB,CACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAAC;IAGnB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtD,gBAAgB,CACd,OAAO,EAAE,MAAM,EAAE,EACjB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,WAAW,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1D"}
1
+ {"version":3,"file":"NitroArk.nitro.d.ts","sourceRoot":"","sources":["../../../src/NitroArk.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM/D,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAGD,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,EAAE,MAAM,CAAC;IAEjB,eAAe,EAAE,MAAM,CAAC;IAExB,iBAAiB,EAAE,MAAM,CAAC;IAE1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,MAAM,WAAW,QAAS,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAE,CAAC;IAE5E,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAG5B,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACnC,eAAe,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClD,sBAAsB,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACjD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACnD,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,aAAa,CACX,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,QAAQ,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAGhC,cAAc,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,CACT,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAEjC,YAAY,CACV,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,eAAe,CACb,OAAO,EAAE,kBAAkB,EAAE,EAC7B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAAC;IAInB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,iBAAiB,CACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAChC,oBAAoB,CAClB,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,uBAAuB,CACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAAC;IAGnB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtD,gBAAgB,CACd,OAAO,EAAE,MAAM,EAAE,EACjB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,WAAW,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1D"}
@@ -5,14 +5,21 @@ export declare const NitroArkHybridObject: NitroArk;
5
5
  * @returns A promise resolving to the mnemonic string.
6
6
  */
7
7
  export declare function createMnemonic(): Promise<string>;
8
+ /**
9
+ * Creates a new wallet at the specified directory.
10
+ * @param datadir Path to the data directory.
11
+ * @param opts The options for wallet creation.
12
+ * @returns A promise that resolves on success or rejects on error.
13
+ */
14
+ export declare function createWallet(datadir: string, opts: BarkCreateOpts): Promise<void>;
8
15
  /**
9
16
  * Loads an existing wallet or creates a new one at the specified directory.
10
17
  * Once loaded, the wallet state is managed internally.
11
18
  * @param datadir Path to the data directory.
12
- * @param opts Creation and configuration options.
19
+ * @param mnemonic The BIP39 mnemonic phrase for the wallet.
13
20
  * @returns A promise that resolves on success or rejects on error.
14
21
  */
15
- export declare function loadWallet(datadir: string, opts: BarkCreateOpts): Promise<void>;
22
+ export declare function loadWallet(datadir: string, mnemonic: string): Promise<void>;
16
23
  /**
17
24
  * Closes the currently loaded wallet, clearing its state from memory.
18
25
  * @returns A promise that resolves on success or rejects on error.
@@ -75,6 +82,21 @@ export declare function peakKeyPair(index: number): Promise<KeyPairResult>;
75
82
  * @returns A promise resolving to NewAddressResult object.
76
83
  */
77
84
  export declare function newAddress(): Promise<NewAddressResult>;
85
+ /**
86
+ * Signs a message with the private key at the specified index.
87
+ * @param message The message to sign.
88
+ * @param index The index of the keypair to use for signing.
89
+ * @returns A promise resolving to the signature string.
90
+ */
91
+ export declare function signMessage(message: string, index: number): Promise<string>;
92
+ /**
93
+ * Verifies a signed message.
94
+ * @param message The original message.
95
+ * @param signature The signature to verify.
96
+ * @param publicKey The public key corresponding to the private key used for signing.
97
+ * @returns A promise resolving to true if the signature is valid, false otherwise.
98
+ */
99
+ export declare function verifyMessage(message: string, signature: string, publicKey: string): Promise<boolean>;
78
100
  /**
79
101
  * Gets the list of VTXOs as a JSON string for the loaded wallet.
80
102
  * @param no_sync If true, skips synchronization with the blockchain. Defaults to false.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ namespace margelo::nitro::nitroark {
15
15
  // load custom methods/properties
16
16
  registerHybrids(this, [](Prototype& prototype) {
17
17
  prototype.registerHybridMethod("createMnemonic", &HybridNitroArkSpec::createMnemonic);
18
+ prototype.registerHybridMethod("createWallet", &HybridNitroArkSpec::createWallet);
18
19
  prototype.registerHybridMethod("loadWallet", &HybridNitroArkSpec::loadWallet);
19
20
  prototype.registerHybridMethod("isWalletLoaded", &HybridNitroArkSpec::isWalletLoaded);
20
21
  prototype.registerHybridMethod("closeWallet", &HybridNitroArkSpec::closeWallet);
@@ -28,6 +29,8 @@ namespace margelo::nitro::nitroark {
28
29
  prototype.registerHybridMethod("deriveStoreNextKeypair", &HybridNitroArkSpec::deriveStoreNextKeypair);
29
30
  prototype.registerHybridMethod("peakKeyPair", &HybridNitroArkSpec::peakKeyPair);
30
31
  prototype.registerHybridMethod("newAddress", &HybridNitroArkSpec::newAddress);
32
+ prototype.registerHybridMethod("signMessage", &HybridNitroArkSpec::signMessage);
33
+ prototype.registerHybridMethod("verifyMessage", &HybridNitroArkSpec::verifyMessage);
31
34
  prototype.registerHybridMethod("getVtxos", &HybridNitroArkSpec::getVtxos);
32
35
  prototype.registerHybridMethod("onchainBalance", &HybridNitroArkSpec::onchainBalance);
33
36
  prototype.registerHybridMethod("onchainSync", &HybridNitroArkSpec::onchainSync);
@@ -90,7 +90,8 @@ namespace margelo::nitro::nitroark {
90
90
  public:
91
91
  // Methods
92
92
  virtual std::shared_ptr<Promise<std::string>> createMnemonic() = 0;
93
- virtual std::shared_ptr<Promise<void>> loadWallet(const std::string& datadir, const BarkCreateOpts& opts) = 0;
93
+ virtual std::shared_ptr<Promise<void>> createWallet(const std::string& datadir, const BarkCreateOpts& opts) = 0;
94
+ virtual std::shared_ptr<Promise<void>> loadWallet(const std::string& datadir, const std::string& mnemonic) = 0;
94
95
  virtual std::shared_ptr<Promise<bool>> isWalletLoaded() = 0;
95
96
  virtual std::shared_ptr<Promise<void>> closeWallet() = 0;
96
97
  virtual std::shared_ptr<Promise<void>> persistConfig(const BarkConfigOpts& opts) = 0;
@@ -103,6 +104,8 @@ namespace margelo::nitro::nitroark {
103
104
  virtual std::shared_ptr<Promise<KeyPairResult>> deriveStoreNextKeypair() = 0;
104
105
  virtual std::shared_ptr<Promise<KeyPairResult>> peakKeyPair(double index) = 0;
105
106
  virtual std::shared_ptr<Promise<NewAddressResult>> newAddress() = 0;
107
+ virtual std::shared_ptr<Promise<std::string>> signMessage(const std::string& message, double index) = 0;
108
+ virtual std::shared_ptr<Promise<bool>> verifyMessage(const std::string& message, const std::string& signature, const std::string& publicKey) = 0;
106
109
  virtual std::shared_ptr<Promise<std::vector<BarkVtxo>>> getVtxos() = 0;
107
110
  virtual std::shared_ptr<Promise<OnchainBalanceResult>> onchainBalance() = 0;
108
111
  virtual std::shared_ptr<Promise<void>> onchainSync() = 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-nitro-ark",
3
- "version": "0.0.44",
3
+ "version": "0.0.46",
4
4
  "description": "Pure C++ Nitro Modules for Ark client",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/module/index.js",
@@ -109,7 +109,8 @@ export interface KeyPairResult {
109
109
  export interface NitroArk extends HybridObject<{ ios: 'c++'; android: 'c++' }> {
110
110
  // --- Management ---
111
111
  createMnemonic(): Promise<string>;
112
- loadWallet(datadir: string, opts: BarkCreateOpts): Promise<void>;
112
+ createWallet(datadir: string, opts: BarkCreateOpts): Promise<void>;
113
+ loadWallet(datadir: string, mnemonic: string): Promise<void>;
113
114
  isWalletLoaded(): Promise<boolean>;
114
115
  closeWallet(): Promise<void>;
115
116
  persistConfig(opts: BarkConfigOpts): Promise<void>;
@@ -124,6 +125,12 @@ export interface NitroArk extends HybridObject<{ ios: 'c++'; android: 'c++' }> {
124
125
  deriveStoreNextKeypair(): Promise<KeyPairResult>;
125
126
  peakKeyPair(index: number): Promise<KeyPairResult>;
126
127
  newAddress(): Promise<NewAddressResult>;
128
+ signMessage(message: string, index: number): Promise<string>;
129
+ verifyMessage(
130
+ message: string,
131
+ signature: string,
132
+ publicKey: string
133
+ ): Promise<boolean>;
127
134
  getVtxos(): Promise<BarkVtxo[]>; // Returns JSON string
128
135
 
129
136
  // --- Onchain Operations ---
package/src/index.tsx CHANGED
@@ -31,17 +31,27 @@ export function createMnemonic(): Promise<string> {
31
31
  }
32
32
 
33
33
  /**
34
- * Loads an existing wallet or creates a new one at the specified directory.
35
- * Once loaded, the wallet state is managed internally.
34
+ * Creates a new wallet at the specified directory.
36
35
  * @param datadir Path to the data directory.
37
- * @param opts Creation and configuration options.
36
+ * @param opts The options for wallet creation.
38
37
  * @returns A promise that resolves on success or rejects on error.
39
38
  */
40
- export function loadWallet(
39
+ export function createWallet(
41
40
  datadir: string,
42
41
  opts: BarkCreateOpts
43
42
  ): Promise<void> {
44
- return NitroArkHybridObject.loadWallet(datadir, opts);
43
+ return NitroArkHybridObject.createWallet(datadir, opts);
44
+ }
45
+
46
+ /**
47
+ * Loads an existing wallet or creates a new one at the specified directory.
48
+ * Once loaded, the wallet state is managed internally.
49
+ * @param datadir Path to the data directory.
50
+ * @param mnemonic The BIP39 mnemonic phrase for the wallet.
51
+ * @returns A promise that resolves on success or rejects on error.
52
+ */
53
+ export function loadWallet(datadir: string, mnemonic: string): Promise<void> {
54
+ return NitroArkHybridObject.loadWallet(datadir, mnemonic);
45
55
  }
46
56
 
47
57
  /**
@@ -144,6 +154,31 @@ export function newAddress(): Promise<NewAddressResult> {
144
154
  return NitroArkHybridObject.newAddress();
145
155
  }
146
156
 
157
+ /**
158
+ * Signs a message with the private key at the specified index.
159
+ * @param message The message to sign.
160
+ * @param index The index of the keypair to use for signing.
161
+ * @returns A promise resolving to the signature string.
162
+ */
163
+ export function signMessage(message: string, index: number): Promise<string> {
164
+ return NitroArkHybridObject.signMessage(message, index);
165
+ }
166
+
167
+ /**
168
+ * Verifies a signed message.
169
+ * @param message The original message.
170
+ * @param signature The signature to verify.
171
+ * @param publicKey The public key corresponding to the private key used for signing.
172
+ * @returns A promise resolving to true if the signature is valid, false otherwise.
173
+ */
174
+ export function verifyMessage(
175
+ message: string,
176
+ signature: string,
177
+ publicKey: string
178
+ ): Promise<boolean> {
179
+ return NitroArkHybridObject.verifyMessage(message, signature, publicKey);
180
+ }
181
+
147
182
  /**
148
183
  * Gets the list of VTXOs as a JSON string for the loaded wallet.
149
184
  * @param no_sync If true, skips synchronization with the blockchain. Defaults to false.