@openwallet-foundation/askar-nodejs 0.4.1 → 0.4.2-alpha-20250919145219

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,5 +1,6 @@
1
1
  import type { Askar, AskarErrorObject, EncryptedBuffer, EntryListCountOptions, EntryListFreeOptions, EntryListGetCategoryOptions, EntryListGetNameOptions, EntryListGetTagsOptions, EntryListGetValueOptions, KeyAeadDecryptOptions, KeyAeadEncryptOptions, KeyAeadGetPaddingOptions, KeyAeadGetParamsOptions, KeyAeadRandomNonceOptions, KeyConvertOptions, KeyCryptoBoxOpenOptions, KeyCryptoBoxOptions, KeyCryptoBoxSealOpenOptions, KeyCryptoBoxSealOptions, KeyDeriveEcdh1puOptions, KeyDeriveEcdhEsOptions, KeyEntryListCountOptions, KeyEntryListFreeOptions, KeyEntryListGetAlgorithmOptions, KeyEntryListGetMetadataOptions, KeyEntryListGetNameOptions, KeyEntryListGetTagsOptions, KeyEntryListLoadLocalOptions, KeyFreeOptions, KeyFromJwkOptions, KeyFromKeyExchangeOptions, KeyFromPublicBytesOptions, KeyFromSecretBytesOptions, KeyFromSeedOptions, KeyGenerateOptions, KeyGetAlgorithmOptions, KeyGetEphemeralOptions, KeyGetJwkPublicOptions, KeyGetJwkSecretOptions, KeyGetJwkThumbprintOptions, KeyGetPublicBytesOptions, KeyGetSecretBytesOptions, KeySignMessageOptions, KeyUnwrapKeyOptions, KeyVerifySignatureOptions, KeyWrapKeyOptions, MigrateIndySdkOptions, ScanFreeOptions, ScanNextOptions, ScanStartOptions, SessionCloseOptions, SessionCountOptions, SessionFetchAllKeysOptions, SessionFetchAllOptions, SessionFetchKeyOptions, SessionFetchOptions, SessionInsertKeyOptions, SessionRemoveAllOptions, SessionRemoveKeyOptions, SessionStartOptions, SessionUpdateKeyOptions, SessionUpdateOptions, SetCustomLoggerOptions, SetMaxLogLevelOptions, StoreCloseOptions, StoreCopyProfileOptions, StoreCopyToOptions, StoreCreateProfileOptions, StoreGenerateRawKeyOptions, StoreGetDefaultProfileOptions, StoreGetProfileNameOptions, StoreListProfilesOptions, StoreOpenOptions, StoreProvisionOptions, StoreRekeyOptions, StoreRemoveOptions, StoreRemoveProfileOptions, StoreRenameProfileOptions, StoreSetDefaultProfileOptions } from '@openwallet-foundation/askar-shared';
2
2
  import { AeadParams, EntryListHandle, KeyEntryListHandle, LocalKeyHandle, ScanHandle, SessionHandle, StoreHandle } from '@openwallet-foundation/askar-shared';
3
+ import { type ByteBufferType } from './ffi';
3
4
  export declare class NodeJSAskar implements Askar {
4
5
  private promisify;
5
6
  private promisifyWithResponse;
@@ -18,7 +19,7 @@ export declare class NodeJSAskar implements Askar {
18
19
  get nativeAskar(): {
19
20
  askar_version: () => string;
20
21
  askar_get_current_error: (args_0: Buffer) => number;
21
- askar_buffer_free: (args_0: Buffer) => unknown;
22
+ askar_buffer_free: (args_0: Buffer | ByteBufferType) => unknown;
22
23
  askar_clear_custom_logger: () => unknown;
23
24
  askar_set_custom_logger: (args_0: number, args_1: Buffer, args_2: number, args_3: number, args_4: number) => number;
24
25
  askar_set_default_logger: () => number;
@@ -32,19 +33,19 @@ export declare class NodeJSAskar implements Askar {
32
33
  askar_string_list_count: (args_0: Buffer, args_1: Buffer) => number;
33
34
  askar_string_list_free: (args_0: Buffer) => unknown;
34
35
  askar_string_list_get_item: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
35
- askar_key_aead_decrypt: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer) => number;
36
- askar_key_aead_encrypt: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer) => number;
36
+ askar_key_aead_decrypt: (args_0: Buffer, args_1: Buffer | ByteBufferType, args_2: Buffer | ByteBufferType, args_3: Buffer | ByteBufferType, args_4: Buffer | ByteBufferType, args_5: Buffer) => number;
37
+ askar_key_aead_encrypt: (args_0: Buffer, args_1: Buffer | ByteBufferType, args_2: Buffer | ByteBufferType, args_3: Buffer | ByteBufferType, args_4: Buffer) => number;
37
38
  askar_key_aead_get_padding: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
38
39
  askar_key_aead_get_params: (args_0: Buffer, args_1: Buffer) => number;
39
40
  askar_key_aead_random_nonce: (args_0: Buffer, args_1: Buffer) => number;
40
41
  askar_key_convert: (args_0: Buffer, args_1: string, args_2: Buffer) => number;
41
- askar_key_crypto_box: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer) => number;
42
- askar_key_crypto_box_open: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer) => number;
42
+ askar_key_crypto_box: (args_0: Buffer, args_1: Buffer, args_2: Buffer | ByteBufferType, args_3: Buffer | ByteBufferType, args_4: Buffer) => number;
43
+ askar_key_crypto_box_open: (args_0: Buffer, args_1: Buffer, args_2: Buffer | ByteBufferType, args_3: Buffer | ByteBufferType, args_4: Buffer) => number;
43
44
  askar_key_crypto_box_random_nonce: (args_0: Buffer) => number;
44
- askar_key_crypto_box_seal: (args_0: Buffer, args_1: Buffer, args_2: Buffer) => number;
45
- askar_key_crypto_box_seal_open: (args_0: Buffer, args_1: Buffer, args_2: Buffer) => number;
46
- askar_key_derive_ecdh_1pu: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer, args_6: Buffer, args_7: Buffer, args_8: number, args_9: Buffer) => number;
47
- askar_key_derive_ecdh_es: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer, args_6: number, args_7: Buffer) => number;
45
+ askar_key_crypto_box_seal: (args_0: Buffer, args_1: Buffer | ByteBufferType, args_2: Buffer) => number;
46
+ askar_key_crypto_box_seal_open: (args_0: Buffer, args_1: Buffer | ByteBufferType, args_2: Buffer) => number;
47
+ askar_key_derive_ecdh_1pu: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer | ByteBufferType, args_5: Buffer | ByteBufferType, args_6: Buffer | ByteBufferType, args_7: Buffer | ByteBufferType, args_8: number, args_9: Buffer) => number;
48
+ askar_key_derive_ecdh_es: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer | ByteBufferType, args_4: Buffer | ByteBufferType, args_5: Buffer | ByteBufferType, args_6: number, args_7: Buffer) => number;
48
49
  askar_key_entry_list_count: (args_0: Buffer, args_1: Buffer) => number;
49
50
  askar_key_entry_list_free: (args_0: Buffer) => unknown;
50
51
  askar_key_entry_list_get_algorithm: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
@@ -53,11 +54,11 @@ export declare class NodeJSAskar implements Askar {
53
54
  askar_key_entry_list_get_tags: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
54
55
  askar_key_entry_list_load_local: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
55
56
  askar_key_free: (args_0: Buffer) => unknown;
56
- askar_key_from_jwk: (args_0: Buffer, args_1: Buffer) => number;
57
+ askar_key_from_jwk: (args_0: Buffer | ByteBufferType, args_1: Buffer) => number;
57
58
  askar_key_from_key_exchange: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer) => number;
58
- askar_key_from_public_bytes: (args_0: string, args_1: Buffer, args_2: Buffer) => number;
59
- askar_key_from_secret_bytes: (args_0: string, args_1: Buffer, args_2: Buffer) => number;
60
- askar_key_from_seed: (args_0: string, args_1: Buffer, args_2: string, args_3: Buffer) => number;
59
+ askar_key_from_public_bytes: (args_0: string, args_1: Buffer | ByteBufferType, args_2: Buffer) => number;
60
+ askar_key_from_secret_bytes: (args_0: string, args_1: Buffer | ByteBufferType, args_2: Buffer) => number;
61
+ askar_key_from_seed: (args_0: string, args_1: Buffer | ByteBufferType, args_2: string, args_3: Buffer) => number;
61
62
  askar_key_generate: (args_0: string, args_1: string, args_2: number, args_3: Buffer) => number;
62
63
  askar_key_get_algorithm: (args_0: Buffer, args_1: Buffer) => number;
63
64
  askar_key_get_ephemeral: (args_0: Buffer, args_1: Buffer) => number;
@@ -66,10 +67,10 @@ export declare class NodeJSAskar implements Askar {
66
67
  askar_key_get_jwk_thumbprint: (args_0: Buffer, args_1: string, args_2: Buffer) => number;
67
68
  askar_key_get_public_bytes: (args_0: Buffer, args_1: Buffer) => number;
68
69
  askar_key_get_secret_bytes: (args_0: Buffer, args_1: Buffer) => number;
69
- askar_key_sign_message: (args_0: Buffer, args_1: Buffer, args_2: string, args_3: Buffer) => number;
70
- askar_key_unwrap_key: (args_0: Buffer, args_1: string, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer) => number;
71
- askar_key_verify_signature: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: string, args_4: Buffer) => number;
72
- askar_key_wrap_key: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer) => number;
70
+ askar_key_sign_message: (args_0: Buffer, args_1: Buffer | ByteBufferType, args_2: string, args_3: Buffer) => number;
71
+ askar_key_unwrap_key: (args_0: Buffer, args_1: string, args_2: Buffer | ByteBufferType, args_3: Buffer | ByteBufferType, args_4: Buffer | ByteBufferType, args_5: Buffer) => number;
72
+ askar_key_verify_signature: (args_0: Buffer, args_1: Buffer | ByteBufferType, args_2: Buffer | ByteBufferType, args_3: string, args_4: Buffer) => number;
73
+ askar_key_wrap_key: (args_0: Buffer, args_1: Buffer, args_2: Buffer | ByteBufferType, args_3: Buffer) => number;
73
74
  askar_key_get_supported_backends: (args_0: Buffer) => number;
74
75
  askar_scan_free: (args_0: number) => number;
75
76
  askar_scan_next: (args_0: number, args_1: Buffer, args_2: number) => number;
@@ -84,12 +85,12 @@ export declare class NodeJSAskar implements Askar {
84
85
  askar_session_remove_all: (args_0: number, args_1: string, args_2: string, args_3: Buffer, args_4: number) => number;
85
86
  askar_session_remove_key: (args_0: number, args_1: string, args_2: Buffer, args_3: number) => number;
86
87
  askar_session_start: (args_0: number, args_1: string, args_2: number, args_3: Buffer, args_4: number) => number;
87
- askar_session_update: (args_0: number, args_1: number, args_2: string, args_3: string, args_4: Buffer, args_5: string, args_6: number, args_7: Buffer, args_8: number) => number;
88
+ askar_session_update: (args_0: number, args_1: number, args_2: string, args_3: string, args_4: Buffer | ByteBufferType, args_5: string, args_6: number, args_7: Buffer, args_8: number) => number;
88
89
  askar_session_update_key: (args_0: number, args_1: string, args_2: string, args_3: string, args_4: number, args_5: Buffer, args_6: number) => number;
89
90
  askar_store_close: (args_0: number, args_1: Buffer, args_2: number) => number;
90
91
  askar_store_copy: (args_0: number, args_1: string, args_2: string, args_3: string, args_4: number, args_5: Buffer, args_6: number) => number;
91
92
  askar_store_create_profile: (args_0: number, args_1: string, args_2: Buffer, args_3: number) => number;
92
- askar_store_generate_raw_key: (args_0: Buffer, args_1: Buffer) => number;
93
+ askar_store_generate_raw_key: (args_0: Buffer | ByteBufferType, args_1: Buffer) => number;
93
94
  askar_store_get_profile_name: (args_0: number, args_1: Buffer, args_2: number) => number;
94
95
  askar_store_get_default_profile: (args_0: number, args_1: Buffer, args_2: number) => number;
95
96
  askar_store_list_profiles: (args_0: number, args_1: Buffer, args_2: number) => number;
@@ -164,7 +164,9 @@ class NodeJSAskar {
164
164
  const errorCode = this.nativeAskar.askar_entry_list_get_value(entryListHandle, index, ret);
165
165
  this.handleError(errorCode);
166
166
  const byteBuffer = handleReturnPointer(ret);
167
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(byteBuffer));
167
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
168
+ this.nativeAskar.askar_buffer_free(byteBuffer);
169
+ return bufferArray;
168
170
  }
169
171
  keyAeadDecrypt(options) {
170
172
  const { aad, ciphertext, localKeyHandle, nonce, tag } = (0, ffi_1.serializeArguments)(options);
@@ -172,7 +174,9 @@ class NodeJSAskar {
172
174
  const errorCode = this.nativeAskar.askar_key_aead_decrypt(localKeyHandle, ciphertext, nonce, tag, aad, ret);
173
175
  this.handleError(errorCode);
174
176
  const byteBuffer = handleReturnPointer(ret);
175
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(byteBuffer));
177
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
178
+ this.nativeAskar.askar_buffer_free(byteBuffer);
179
+ return bufferArray;
176
180
  }
177
181
  keyAeadEncrypt(options) {
178
182
  const { localKeyHandle, aad, nonce, message } = (0, ffi_1.serializeArguments)(options);
@@ -180,7 +184,9 @@ class NodeJSAskar {
180
184
  const errorCode = this.nativeAskar.askar_key_aead_encrypt(localKeyHandle, message, nonce, aad, ret);
181
185
  this.handleError(errorCode);
182
186
  const encryptedBuffer = handleReturnPointer(ret);
183
- return (0, ffi_1.encryptedBufferStructToClass)(encryptedBuffer);
187
+ const encryptedBufferClass = (0, ffi_1.encryptedBufferStructToClass)(encryptedBuffer);
188
+ this.nativeAskar.askar_buffer_free(encryptedBuffer.secretBuffer);
189
+ return encryptedBufferClass;
184
190
  }
185
191
  keyAeadGetPadding(options) {
186
192
  const { localKeyHandle, msgLen } = (0, ffi_1.serializeArguments)(options);
@@ -201,8 +207,10 @@ class NodeJSAskar {
201
207
  const ret = (0, ffi_1.allocateSecretBuffer)();
202
208
  const errorCode = this.nativeAskar.askar_key_aead_random_nonce(localKeyHandle, ret);
203
209
  this.handleError(errorCode);
204
- const secretBuffer = handleReturnPointer(ret);
205
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
210
+ const byteBuffer = handleReturnPointer(ret);
211
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
212
+ this.nativeAskar.askar_buffer_free(byteBuffer);
213
+ return bufferArray;
206
214
  }
207
215
  keyConvert(options) {
208
216
  const { localKeyHandle, algorithm } = (0, ffi_1.serializeArguments)(options);
@@ -217,39 +225,49 @@ class NodeJSAskar {
217
225
  const ret = (0, ffi_1.allocateSecretBuffer)();
218
226
  const errorCode = this.nativeAskar.askar_key_crypto_box(recipientKey, senderKey, message, nonce, ret);
219
227
  this.handleError(errorCode);
220
- const secretBuffer = handleReturnPointer(ret);
221
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
228
+ const byteBuffer = handleReturnPointer(ret);
229
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
230
+ this.nativeAskar.askar_buffer_free(byteBuffer);
231
+ return bufferArray;
222
232
  }
223
233
  keyCryptoBoxOpen(options) {
224
234
  const { nonce, message, senderKey, recipientKey } = (0, ffi_1.serializeArguments)(options);
225
235
  const ret = (0, ffi_1.allocateSecretBuffer)();
226
236
  const errorCode = this.nativeAskar.askar_key_crypto_box_open(recipientKey, senderKey, message, nonce, ret);
227
237
  this.handleError(errorCode);
228
- const secretBuffer = handleReturnPointer(ret);
229
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
238
+ const byteBuffer = handleReturnPointer(ret);
239
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
240
+ this.nativeAskar.askar_buffer_free(byteBuffer);
241
+ return bufferArray;
230
242
  }
231
243
  keyCryptoBoxRandomNonce() {
232
244
  const ret = (0, ffi_1.allocateSecretBuffer)();
233
245
  const errorCode = this.nativeAskar.askar_key_crypto_box_random_nonce(ret);
234
246
  this.handleError(errorCode);
235
- const secretBuffer = handleReturnPointer(ret);
236
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
247
+ const byteBuffer = handleReturnPointer(ret);
248
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
249
+ this.nativeAskar.askar_buffer_free(byteBuffer);
250
+ return bufferArray;
237
251
  }
238
252
  keyCryptoBoxSeal(options) {
239
253
  const { message, localKeyHandle } = (0, ffi_1.serializeArguments)(options);
240
254
  const ret = (0, ffi_1.allocateSecretBuffer)();
241
255
  const errorCode = this.nativeAskar.askar_key_crypto_box_seal(localKeyHandle, message, ret);
242
256
  this.handleError(errorCode);
243
- const secretBuffer = handleReturnPointer(ret);
244
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
257
+ const byteBuffer = handleReturnPointer(ret);
258
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
259
+ this.nativeAskar.askar_buffer_free(byteBuffer);
260
+ return bufferArray;
245
261
  }
246
262
  keyCryptoBoxSealOpen(options) {
247
263
  const { ciphertext, localKeyHandle } = (0, ffi_1.serializeArguments)(options);
248
264
  const ret = (0, ffi_1.allocateSecretBuffer)();
249
265
  const errorCode = this.nativeAskar.askar_key_crypto_box_seal_open(localKeyHandle, ciphertext, ret);
250
266
  this.handleError(errorCode);
251
- const secretBuffer = handleReturnPointer(ret);
252
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
267
+ const byteBuffer = handleReturnPointer(ret);
268
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
269
+ this.nativeAskar.askar_buffer_free(byteBuffer);
270
+ return bufferArray;
253
271
  }
254
272
  keyDeriveEcdh1pu(options) {
255
273
  const { senderKey, recipientKey, algorithm, algId, apu, apv, ccTag, ephemeralKey, receive } = (0, ffi_1.serializeArguments)(options);
@@ -392,8 +410,10 @@ class NodeJSAskar {
392
410
  const ret = (0, ffi_1.allocateSecretBuffer)();
393
411
  const errorCode = this.nativeAskar.askar_key_get_jwk_secret(localKeyHandle, ret);
394
412
  this.handleError(errorCode);
395
- const secretBuffer = handleReturnPointer(ret);
396
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
413
+ const byteBuffer = handleReturnPointer(ret);
414
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
415
+ this.nativeAskar.askar_buffer_free(byteBuffer);
416
+ return bufferArray;
397
417
  }
398
418
  keyGetJwkThumbprint(options) {
399
419
  const { localKeyHandle, algorithm } = (0, ffi_1.serializeArguments)(options);
@@ -407,24 +427,30 @@ class NodeJSAskar {
407
427
  const ret = (0, ffi_1.allocateSecretBuffer)();
408
428
  const errorCode = this.nativeAskar.askar_key_get_public_bytes(localKeyHandle, ret);
409
429
  this.handleError(errorCode);
410
- const secretBuffer = handleReturnPointer(ret);
411
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
430
+ const byteBuffer = handleReturnPointer(ret);
431
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
432
+ this.nativeAskar.askar_buffer_free(byteBuffer);
433
+ return bufferArray;
412
434
  }
413
435
  keyGetSecretBytes(options) {
414
436
  const { localKeyHandle } = (0, ffi_1.serializeArguments)(options);
415
437
  const ret = (0, ffi_1.allocateSecretBuffer)();
416
438
  const errorCode = this.nativeAskar.askar_key_get_secret_bytes(localKeyHandle, ret);
417
439
  this.handleError(errorCode);
418
- const secretBuffer = handleReturnPointer(ret);
419
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
440
+ const byteBuffer = handleReturnPointer(ret);
441
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
442
+ this.nativeAskar.askar_buffer_free(byteBuffer);
443
+ return bufferArray;
420
444
  }
421
445
  keySignMessage(options) {
422
446
  const { localKeyHandle, message, sigType } = (0, ffi_1.serializeArguments)(options);
423
447
  const ret = (0, ffi_1.allocateSecretBuffer)();
424
448
  const errorCode = this.nativeAskar.askar_key_sign_message(localKeyHandle, message, sigType, ret);
425
449
  this.handleError(errorCode);
426
- const secretBuffer = handleReturnPointer(ret);
427
- return new Uint8Array((0, ffi_1.secretBufferToBuffer)(secretBuffer));
450
+ const byteBuffer = handleReturnPointer(ret);
451
+ const bufferArray = new Uint8Array(Buffer.from((0, ffi_1.secretBufferToBuffer)(byteBuffer)));
452
+ this.nativeAskar.askar_buffer_free(byteBuffer);
453
+ return bufferArray;
428
454
  }
429
455
  keyUnwrapKey(options) {
430
456
  const { localKeyHandle, algorithm, ciphertext, nonce, tag } = (0, ffi_1.serializeArguments)(options);
@@ -447,7 +473,9 @@ class NodeJSAskar {
447
473
  const errorCode = this.nativeAskar.askar_key_wrap_key(localKeyHandle, other, nonce, ret);
448
474
  this.handleError(errorCode);
449
475
  const encryptedBuffer = handleReturnPointer(ret);
450
- return (0, ffi_1.encryptedBufferStructToClass)(encryptedBuffer);
476
+ const encryptedBufferClass = (0, ffi_1.encryptedBufferStructToClass)(encryptedBuffer);
477
+ this.nativeAskar.askar_buffer_free(encryptedBuffer.secretBuffer);
478
+ return encryptedBufferClass;
451
479
  }
452
480
  keyGetSupportedBackends() {
453
481
  const stringListHandlePtr = (0, ffi_1.allocateStringListHandle)();
@@ -1 +1 @@
1
- {"version":3,"file":"NodeJSAskar.js","sourceRoot":"","sources":["../src/NodeJSAskar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeJSAskar.js","sourceRoot":"","sources":["../src/NodeJSAskar.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { nativeBindings } from './bindings';
2
+ import type { ByteBufferType, SecretBufferStruct } from '../ffi';
2
3
  interface StringTypeMapping {
3
4
  pointer: Buffer;
4
5
  'char*': Buffer;
@@ -13,7 +14,7 @@ type ShapeOf<T> = {
13
14
  [Property in keyof T]: T[Property];
14
15
  };
15
16
  type StringTypeArrayToTypes<List extends (keyof StringTypeMapping)[]> = {
16
- [Item in keyof List]: List[Item] extends keyof StringTypeMapping ? StringTypeMapping[List[Item]] : Buffer;
17
+ [Item in keyof List]: List[Item] extends keyof StringTypeMapping ? StringTypeMapping[List[Item]] : List[Item] extends Mutable<typeof SecretBufferStruct> ? ByteBufferType | Buffer : Buffer;
17
18
  };
18
19
  type TypedMethods<Base extends Record<string | number | symbol, [any, any[]]>> = {
19
20
  [Property in keyof Base]: (...args: StringTypeArrayToTypes<Base[Property][1]> extends any[] ? StringTypeArrayToTypes<Base[Property][1]> : []) => StringTypeMapping[Base[Property][0]];
@@ -1,7 +1,7 @@
1
1
  export declare const getNativeAskar: () => {
2
2
  askar_version: () => string;
3
3
  askar_get_current_error: (args_0: Buffer) => number;
4
- askar_buffer_free: (args_0: Buffer) => unknown;
4
+ askar_buffer_free: (args_0: Buffer | import("../ffi").ByteBufferType) => unknown;
5
5
  askar_clear_custom_logger: () => unknown;
6
6
  askar_set_custom_logger: (args_0: number, args_1: Buffer, args_2: number, args_3: number, args_4: number) => number;
7
7
  askar_set_default_logger: () => number;
@@ -15,19 +15,19 @@ export declare const getNativeAskar: () => {
15
15
  askar_string_list_count: (args_0: Buffer, args_1: Buffer) => number;
16
16
  askar_string_list_free: (args_0: Buffer) => unknown;
17
17
  askar_string_list_get_item: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
18
- askar_key_aead_decrypt: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer) => number;
19
- askar_key_aead_encrypt: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer) => number;
18
+ askar_key_aead_decrypt: (args_0: Buffer, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer | import("../ffi").ByteBufferType, args_3: Buffer | import("../ffi").ByteBufferType, args_4: Buffer | import("../ffi").ByteBufferType, args_5: Buffer) => number;
19
+ askar_key_aead_encrypt: (args_0: Buffer, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer | import("../ffi").ByteBufferType, args_3: Buffer | import("../ffi").ByteBufferType, args_4: Buffer) => number;
20
20
  askar_key_aead_get_padding: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
21
21
  askar_key_aead_get_params: (args_0: Buffer, args_1: Buffer) => number;
22
22
  askar_key_aead_random_nonce: (args_0: Buffer, args_1: Buffer) => number;
23
23
  askar_key_convert: (args_0: Buffer, args_1: string, args_2: Buffer) => number;
24
- askar_key_crypto_box: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer) => number;
25
- askar_key_crypto_box_open: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer) => number;
24
+ askar_key_crypto_box: (args_0: Buffer, args_1: Buffer, args_2: Buffer | import("../ffi").ByteBufferType, args_3: Buffer | import("../ffi").ByteBufferType, args_4: Buffer) => number;
25
+ askar_key_crypto_box_open: (args_0: Buffer, args_1: Buffer, args_2: Buffer | import("../ffi").ByteBufferType, args_3: Buffer | import("../ffi").ByteBufferType, args_4: Buffer) => number;
26
26
  askar_key_crypto_box_random_nonce: (args_0: Buffer) => number;
27
- askar_key_crypto_box_seal: (args_0: Buffer, args_1: Buffer, args_2: Buffer) => number;
28
- askar_key_crypto_box_seal_open: (args_0: Buffer, args_1: Buffer, args_2: Buffer) => number;
29
- askar_key_derive_ecdh_1pu: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer, args_6: Buffer, args_7: Buffer, args_8: number, args_9: Buffer) => number;
30
- askar_key_derive_ecdh_es: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer, args_6: number, args_7: Buffer) => number;
27
+ askar_key_crypto_box_seal: (args_0: Buffer, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer) => number;
28
+ askar_key_crypto_box_seal_open: (args_0: Buffer, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer) => number;
29
+ askar_key_derive_ecdh_1pu: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer, args_4: Buffer | import("../ffi").ByteBufferType, args_5: Buffer | import("../ffi").ByteBufferType, args_6: Buffer | import("../ffi").ByteBufferType, args_7: Buffer | import("../ffi").ByteBufferType, args_8: number, args_9: Buffer) => number;
30
+ askar_key_derive_ecdh_es: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer | import("../ffi").ByteBufferType, args_4: Buffer | import("../ffi").ByteBufferType, args_5: Buffer | import("../ffi").ByteBufferType, args_6: number, args_7: Buffer) => number;
31
31
  askar_key_entry_list_count: (args_0: Buffer, args_1: Buffer) => number;
32
32
  askar_key_entry_list_free: (args_0: Buffer) => unknown;
33
33
  askar_key_entry_list_get_algorithm: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
@@ -36,11 +36,11 @@ export declare const getNativeAskar: () => {
36
36
  askar_key_entry_list_get_tags: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
37
37
  askar_key_entry_list_load_local: (args_0: Buffer, args_1: number, args_2: Buffer) => number;
38
38
  askar_key_free: (args_0: Buffer) => unknown;
39
- askar_key_from_jwk: (args_0: Buffer, args_1: Buffer) => number;
39
+ askar_key_from_jwk: (args_0: Buffer | import("../ffi").ByteBufferType, args_1: Buffer) => number;
40
40
  askar_key_from_key_exchange: (args_0: string, args_1: Buffer, args_2: Buffer, args_3: Buffer) => number;
41
- askar_key_from_public_bytes: (args_0: string, args_1: Buffer, args_2: Buffer) => number;
42
- askar_key_from_secret_bytes: (args_0: string, args_1: Buffer, args_2: Buffer) => number;
43
- askar_key_from_seed: (args_0: string, args_1: Buffer, args_2: string, args_3: Buffer) => number;
41
+ askar_key_from_public_bytes: (args_0: string, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer) => number;
42
+ askar_key_from_secret_bytes: (args_0: string, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer) => number;
43
+ askar_key_from_seed: (args_0: string, args_1: Buffer | import("../ffi").ByteBufferType, args_2: string, args_3: Buffer) => number;
44
44
  askar_key_generate: (args_0: string, args_1: string, args_2: number, args_3: Buffer) => number;
45
45
  askar_key_get_algorithm: (args_0: Buffer, args_1: Buffer) => number;
46
46
  askar_key_get_ephemeral: (args_0: Buffer, args_1: Buffer) => number;
@@ -49,10 +49,10 @@ export declare const getNativeAskar: () => {
49
49
  askar_key_get_jwk_thumbprint: (args_0: Buffer, args_1: string, args_2: Buffer) => number;
50
50
  askar_key_get_public_bytes: (args_0: Buffer, args_1: Buffer) => number;
51
51
  askar_key_get_secret_bytes: (args_0: Buffer, args_1: Buffer) => number;
52
- askar_key_sign_message: (args_0: Buffer, args_1: Buffer, args_2: string, args_3: Buffer) => number;
53
- askar_key_unwrap_key: (args_0: Buffer, args_1: string, args_2: Buffer, args_3: Buffer, args_4: Buffer, args_5: Buffer) => number;
54
- askar_key_verify_signature: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: string, args_4: Buffer) => number;
55
- askar_key_wrap_key: (args_0: Buffer, args_1: Buffer, args_2: Buffer, args_3: Buffer) => number;
52
+ askar_key_sign_message: (args_0: Buffer, args_1: Buffer | import("../ffi").ByteBufferType, args_2: string, args_3: Buffer) => number;
53
+ askar_key_unwrap_key: (args_0: Buffer, args_1: string, args_2: Buffer | import("../ffi").ByteBufferType, args_3: Buffer | import("../ffi").ByteBufferType, args_4: Buffer | import("../ffi").ByteBufferType, args_5: Buffer) => number;
54
+ askar_key_verify_signature: (args_0: Buffer, args_1: Buffer | import("../ffi").ByteBufferType, args_2: Buffer | import("../ffi").ByteBufferType, args_3: string, args_4: Buffer) => number;
55
+ askar_key_wrap_key: (args_0: Buffer, args_1: Buffer, args_2: Buffer | import("../ffi").ByteBufferType, args_3: Buffer) => number;
56
56
  askar_key_get_supported_backends: (args_0: Buffer) => number;
57
57
  askar_scan_free: (args_0: number) => number;
58
58
  askar_scan_next: (args_0: number, args_1: Buffer, args_2: number) => number;
@@ -67,12 +67,12 @@ export declare const getNativeAskar: () => {
67
67
  askar_session_remove_all: (args_0: number, args_1: string, args_2: string, args_3: Buffer, args_4: number) => number;
68
68
  askar_session_remove_key: (args_0: number, args_1: string, args_2: Buffer, args_3: number) => number;
69
69
  askar_session_start: (args_0: number, args_1: string, args_2: number, args_3: Buffer, args_4: number) => number;
70
- askar_session_update: (args_0: number, args_1: number, args_2: string, args_3: string, args_4: Buffer, args_5: string, args_6: number, args_7: Buffer, args_8: number) => number;
70
+ askar_session_update: (args_0: number, args_1: number, args_2: string, args_3: string, args_4: Buffer | import("../ffi").ByteBufferType, args_5: string, args_6: number, args_7: Buffer, args_8: number) => number;
71
71
  askar_session_update_key: (args_0: number, args_1: string, args_2: string, args_3: string, args_4: number, args_5: Buffer, args_6: number) => number;
72
72
  askar_store_close: (args_0: number, args_1: Buffer, args_2: number) => number;
73
73
  askar_store_copy: (args_0: number, args_1: string, args_2: string, args_3: string, args_4: number, args_5: Buffer, args_6: number) => number;
74
74
  askar_store_create_profile: (args_0: number, args_1: string, args_2: Buffer, args_3: number) => number;
75
- askar_store_generate_raw_key: (args_0: Buffer, args_1: Buffer) => number;
75
+ askar_store_generate_raw_key: (args_0: Buffer | import("../ffi").ByteBufferType, args_1: Buffer) => number;
76
76
  askar_store_get_profile_name: (args_0: number, args_1: Buffer, args_2: number) => number;
77
77
  askar_store_get_default_profile: (args_0: number, args_1: Buffer, args_2: number) => number;
78
78
  askar_store_list_profiles: (args_0: number, args_1: Buffer, args_2: number) => number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openwallet-foundation/askar-nodejs",
3
- "version": "0.4.1",
3
+ "version": "0.4.2-alpha-20250919145219",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Nodejs wrapper for Askar",
6
6
  "main": "build/index",
@@ -24,7 +24,7 @@
24
24
  "@2060.io/ref-napi": "^3.0.6",
25
25
  "ref-array-di": "^1.2.2",
26
26
  "ref-struct-di": "^1.1.1",
27
- "@openwallet-foundation/askar-shared": "0.4.1"
27
+ "@openwallet-foundation/askar-shared": "0.4.2-alpha-20250919145219"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/node": "^20.12.11",