@did-btcr2/kms 0.4.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,7 +1,54 @@
1
- # Method
1
+ # @did-btcr2/kms
2
2
 
3
- TypeScript implementation of [did:btcr2 DID Method](https://dcdpr.github.io/did-btcr2/).
3
+ > **DEPRECATED.** This package was renamed to [`@did-btcr2/key-manager`](https://www.npmjs.com/package/@did-btcr2/key-manager). The API is unchanged; only the import path moved.
4
4
 
5
- ## Documentation
5
+ This release (`0.5.0`) is a compatibility shim that re-exports the entire public surface of `@did-btcr2/key-manager`. Existing code that depends on `@did-btcr2/kms` will keep working unchanged. New code should depend on `@did-btcr2/key-manager` directly.
6
6
 
7
- Visit [btcr2.dev](https://btcr2.dev/impls/ts) to learn more about how to use [@did-btcr2/method](https://www.npmjs.com/package/@did-btcr2/method).
7
+ ## Migrate
8
+
9
+ Update your `package.json`:
10
+
11
+ ```diff
12
+ - "@did-btcr2/kms": "^0.4.2",
13
+ + "@did-btcr2/key-manager": "^0.6.0",
14
+ ```
15
+
16
+ Update your imports:
17
+
18
+ ```diff
19
+ - import { LocalKeyManager, KeyManagerSigner } from '@did-btcr2/kms';
20
+ + import { LocalKeyManager, KeyManagerSigner } from '@did-btcr2/key-manager';
21
+ ```
22
+
23
+ No other code changes are required.
24
+
25
+ ## Why the rename
26
+
27
+ The package name `@did-btcr2/kms` was ambiguous: it suggested a "Key Management Service" in the AWS/HSM sense, but the package actually provides a generic in-process key-manager interface plus a `KeyManagerSigner` adapter. The new name reflects what the package actually does.
28
+
29
+ See [ADR-033: Key Manager Package Rename](https://github.com/dcdpr/did-btcr2-js/blob/main/docs/adr/033-key-manager-package-rename.md) for the full rationale.
30
+
31
+ ## What's in this package
32
+
33
+ Everything in `@did-btcr2/key-manager` is re-exported from this package's root entry point. Key exports:
34
+
35
+ - `KeyManager` (interface), `LocalKeyManager` (reference implementation)
36
+ - `KeyManagerSigner` (adapter from `KeyManager` to the `Signer` interface from `@did-btcr2/keypair`)
37
+ - `KeyValueStore`, `MemoryStore`
38
+ - `KeyEntry`, `KeyIdentifier`, `SigningScheme`, `VerifyScheme`
39
+ - Lifecycle option types: `GenerateKeyOptions`, `ImportKeyOptions`, `SignOptions`, `VerifyOptions`
40
+
41
+ For full API documentation, see the [`@did-btcr2/key-manager` README](https://github.com/dcdpr/did-btcr2-js/tree/main/packages/key-manager) on GitHub.
42
+
43
+ ## Timeline
44
+
45
+ - `0.4.x` and earlier: standalone package under the old name.
46
+ - `0.5.0` (this release): compatibility shim re-exporting from `@did-btcr2/key-manager`. Marked deprecated on npm.
47
+ - Future: no further updates planned. Migrate to `@did-btcr2/key-manager` at your convenience.
48
+
49
+ ## Links
50
+
51
+ - [`@did-btcr2/key-manager` on npm](https://www.npmjs.com/package/@did-btcr2/key-manager)
52
+ - [ADR-033: Package Rename Rationale](https://github.com/dcdpr/did-btcr2-js/blob/main/docs/adr/033-key-manager-package-rename.md)
53
+ - [did-btcr2-js monorepo](https://github.com/dcdpr/did-btcr2-js)
54
+ - [did:btcr2 specification](https://dcdpr.github.io/did-btcr2/)
@@ -0,0 +1 @@
1
+ {"fileNames":["../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/@scure+bip32@1.7.0/node_modules/@scure/bip32/lib/esm/index.d.ts","../../common/dist/types/types.d.ts","../../common/dist/types/canonicalization.d.ts","../../common/dist/types/errors.d.ts","../../common/dist/types/json-patch.d.ts","../../common/dist/types/utils/date.d.ts","../../common/dist/types/utils/json.d.ts","../../common/dist/types/utils/string.d.ts","../../common/dist/types/index.d.ts","../../keypair/dist/types/secret.d.ts","../../keypair/dist/types/types.d.ts","../../keypair/dist/types/public.d.ts","../../keypair/dist/types/pair.d.ts","../../keypair/dist/types/signer.d.ts","../../keypair/dist/types/index.d.ts","../../key-manager/dist/types/interface.d.ts","../../key-manager/dist/types/store.d.ts","../../key-manager/dist/types/local-key-manager.d.ts","../../key-manager/dist/types/key-manager-signer.d.ts","../../key-manager/dist/types/index.d.ts","../src/index.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.18.4/node_modules/@types/node/index.d.ts"],"fileIdsList":[[84,133],[84,130,133],[84,132,133],[133],[84,133,138,167],[84,133,134,139,144,152,164,175],[84,133,134,135,144,152],[79,80,81,84,133],[84,133,136,176],[84,133,137,138,145,153],[84,133,138,164,172],[84,133,139,141,144,152],[84,132,133,140],[84,133,141,142],[84,133,143,144],[84,132,133,144],[84,133,144,145,146,164,175],[84,133,144,145,146,159,164,167],[84,126,133,141,144,147,152,164,175],[84,133,144,145,147,148,152,164,172,175],[84,133,147,149,164,172,175],[82,83,84,85,86,87,88,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],[84,133,144,150],[84,133,151,175],[84,133,141,144,152,164],[84,133,153],[84,133,154],[84,132,133,155],[84,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],[84,133,157],[84,133,158],[84,133,144,159,160],[84,133,159,161,176,178],[84,133,144,164,165,167],[84,133,166,167],[84,133,164,165],[84,133,167],[84,133,168],[84,130,133,164,169],[84,133,144,170,171],[84,133,170,171],[84,133,138,152,164,172],[84,133,173],[84,133,152,174],[84,133,147,158,175],[84,133,138,176],[84,133,164,177],[84,133,151,178],[84,133,179],[84,126,133],[84,133,144,146,155,164,167,175,177,178,180],[84,133,164,181],[84,98,102,133,175],[84,98,133,164,175],[84,93,133],[84,95,98,133,172,175],[84,133,152,172],[84,133,182],[84,93,133,182],[84,95,98,133,152,175],[84,90,91,94,97,133,144,164,175],[84,98,105,133],[84,90,96,133],[84,98,119,120,133],[84,94,98,133,167,175,182],[84,119,133,182],[84,92,93,133,182],[84,98,133],[84,92,93,94,95,96,97,98,99,100,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,120,121,122,123,124,125,133],[84,98,113,133],[84,98,105,106,133],[84,96,98,106,107,133],[84,97,133],[84,90,93,98,133],[84,98,102,106,107,133],[84,102,133],[84,96,98,101,133,175],[84,90,95,98,105,133],[84,133,164],[84,93,98,119,133,180,182],[59,84,133],[59,60,61,62,63,64,65,84,133],[58,84,133],[73,74,75,76,84,133],[66,72,84,133],[66,72,73,84,133],[66,72,73,74,84,133],[67,68,69,70,71,84,133],[66,67,68,69,84,133],[66,68,84,133],[66,68,69,84,133],[66,84,133],[66,67,69,84,133],[77,84,133]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ddd1ca692a6c656ade0a85c9a722b3679b3d0bf113b699908e0325cf3537dbe","impliedFormat":99},{"version":"1c45c0cd36427144bf788de5e5047825f4b33007ccf2842ba8f071f88c65745a","impliedFormat":99},{"version":"b5c4e5828cb4824e1ccb6cc77133f8978f1ff309f7432d47a8a9e0a475ce430f","impliedFormat":99},{"version":"6159a3d1c7db2441f95d9e81537af6d758beb3511797e0dfec46aadeb9df6f7f","impliedFormat":99},{"version":"893a3b3ac940daab19293ab7c263b0c9dab255d5a38e525c99876d089829514e","impliedFormat":99},{"version":"13b5d7c6770d510c0ce592f49e483dde921a581113d9b5ee72c04fdd213f9f3f","impliedFormat":99},{"version":"3f69d48f94aed50fa95537d3d6ef8ef209277e39473d084d6d8225d6d8a06343","impliedFormat":99},{"version":"4267e8deaca127eb366458660b2b02ea4bb7423a11b1fe4b602286f18a9c3e62","impliedFormat":99},{"version":"08fbbaf139bf1c22b44183f82578d25dfdd1b8f1b40040c67e24eec9e2d50e7b","impliedFormat":99},{"version":"bc48f4aac7bb9c17f01b23c84b41e8d566a601c00b954a832384c36b3dcd4429","impliedFormat":99},{"version":"2b9bbe9eaf1326d42bd5d87978d2960267c0b57920a3b6e76b1d39d160cc30d9","impliedFormat":99},{"version":"d8ad80754030785edda4893c444f452d0bc56a648c703e903db0dc9e3f2a7d42","impliedFormat":99},{"version":"b036de87d69a7caa8e6cc21bde0f671b1a3d76bf95cb7202b9ddf00124dd41a5","impliedFormat":99},{"version":"cb5c9fd34d16d35a4e7e75cf26987bb2b603a2160222903d30f91fd5de2470fc","impliedFormat":99},{"version":"5cd164924e9bf03d9cf45123526f9861dcc7a9096c8a74d50988c787d2f77c89","impliedFormat":99},{"version":"e57d6656432cc351df428d9d3baa6da4db98f4164a73a8cfea66b646b66c87a3","impliedFormat":99},{"version":"44b1a2e0485c682ffb210e46d483a30aab9db4313d57487af283ce11c7d1589a","impliedFormat":99},{"version":"9f588fc07974f08f4ff07334be8e0dd4031d465c266ab4a87f8a365301f2bbf0","impliedFormat":99},{"version":"21efdf96b618c686b19a3a4927597957660d27dbbd3cc86b4dd070e4370b4893","impliedFormat":99},{"version":"be68b809fa722e98ae7711b2e4dc56bbdd15f2cfeea8ee26df00e8ba8c3e94df","impliedFormat":99},{"version":"27e55981579b5918f4a916dca147cf4e0af4f82ef80e3135c6d402cd8d5daf14","impliedFormat":99},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"d802f0e6b5188646d307f070d83512e8eb94651858de8a82d1e47f60fb6da4e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb4105d0ea2ab2bfcb4f77ff8585691d5569c90ae15f4fa8d5ff9fb42b910b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"456fa0c0ab68731564917642b977c71c3b7682240685b118652fb9253c9a6429","affectsGlobalScope":true,"impliedFormat":1},{"version":"4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"a38efe83ff77c34e0f418a806a01ca3910c02ee7d64212a59d59bca6c2c38fa1","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"7b988bc259155186e6b09dd8b32856d9e45c8d261e63c19abaf590bb6550f922","affectsGlobalScope":true,"impliedFormat":1},{"version":"fe7b52f993f9336b595190f3c1fcc259bb2cf6dcb4ac8fdb1e0454cc5df7301e","impliedFormat":1},{"version":"e9b97d69510658d2f4199b7d384326b7c4053b9e6645f5c19e1c2a54ede427fc","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"81711af669f63d43ccb4c08e15beda796656dd46673d0def001c7055db53852d","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"bdba81959361810be44bcfdd283f4d601e406ab5ad1d2bdff0ed480cf983c9d7","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"b326f4813b90d230ec3950f66bd5b5ce3971aac5fac67cfafc54aa07b39fd07f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c8420c7c2b778b334587a4c0311833b5212ff2f684ea37b2f0e2b117f1d7210d","impliedFormat":1},{"version":"b6b08215821c9833b0e8e30ea1ed178009f2f3ff5d7fae3865ee42f97cc87784","impliedFormat":1},{"version":"9757d0daeeb72efec2c546ddcf6a237a821e57eb61c72e5bc8e6c22e968de63c","impliedFormat":1},{"version":"73cf6cc19f16c0191e4e9d497ab0c11c7b38f1ca3f01ad0f09a3a5a971aac4b8","impliedFormat":1},{"version":"528b62e4272e3ddfb50e8eed9e359dedea0a4d171c3eb8f337f4892aac37b24b","impliedFormat":1},{"version":"ed58b9974bb3114f39806c9c2c6258c4ffa6a255921976a7c53dfa94bf178f42","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"f72bc8fe16da67e4e3268599295797b202b95e54bd215a03f97e925dd1502a36","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"915e18c559321c0afaa8d34674d3eb77e1ded12c3e85bf2a9891ec48b07a1ca5","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9727a118ce60808e62457c89762fe5a4e2be8e9fd0112d12432d1bafdba942f","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"70b57b5529051497e9f6482b76d91c0dcbb103d9ead8a0549f5bab8f65e5d031","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"3a90b9beac4c2bfdf6517faae0940a042b81652badf747df0a7c7593456f6ebe","impliedFormat":1},{"version":"8302157cd431b3943eed09ad439b4441826c673d9f870dcb0e1f48e891a4211e","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"dba28a419aec76ed864ef43e5f577a5c99a010c32e5949fe4e17a4d57c58dd11","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"a5890565ed564c7b29eb1b1038d4e10c03a3f5231b0a8d48fea4b41ab19f4f46","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"98ffdf93dfdd206516971d28e3e473f417a5cfd41172e46b4ce45008f640588e","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"cee74f5970ffc01041e5bffc3f324c20450534af4054d2c043cb49dbbd4ec8f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a654e0d950353614ba4637a8de4f9d367903a0692b748e11fccf8c880c99735","affectsGlobalScope":true,"impliedFormat":1},{"version":"42da246c46ca3fd421b6fd88bb4466cda7137cf33e87ba5ceeded30219c428bd","impliedFormat":1},{"version":"3a051941721a7f905544732b0eb819c8d88333a96576b13af08b82c4f17581e4","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"3006130eae582d9bc732ab302ac25bbd86777dbac3a9eece81a2c77570f65e9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"db3d77167a7da6c5ba0c51c5b654820e3464093f21724ccd774c0b9bc3f81bc0","impliedFormat":1},{"version":"bdf1feb266c87edbee61f12ceaaef60ab0e2e5dba70ca19360b6448911c53d52","impliedFormat":1}],"root":[78],"options":{"composite":true,"declaration":true,"declarationDir":"./types","declarationMap":true,"esModuleInterop":true,"module":199,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"outDir":"./esm","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[58,1],[130,2],[131,2],[132,3],[84,4],[133,5],[134,6],[135,7],[79,1],[82,8],[80,1],[81,1],[136,9],[137,10],[138,11],[139,12],[140,13],[141,14],[142,14],[143,15],[144,16],[145,17],[146,18],[85,1],[83,1],[147,19],[148,20],[149,21],[182,22],[150,23],[151,24],[152,25],[153,26],[154,27],[155,28],[156,29],[157,30],[158,31],[159,32],[160,32],[161,33],[162,1],[163,1],[164,34],[166,35],[165,36],[167,37],[168,38],[169,39],[170,40],[171,41],[172,42],[173,43],[174,44],[175,45],[176,46],[177,47],[178,48],[179,49],[86,1],[87,1],[88,1],[127,50],[128,1],[129,1],[180,51],[181,52],[89,1],[56,1],[57,1],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[20,1],[21,1],[4,1],[22,1],[26,1],[23,1],[24,1],[25,1],[27,1],[28,1],[29,1],[5,1],[30,1],[31,1],[32,1],[33,1],[6,1],[37,1],[34,1],[35,1],[36,1],[38,1],[7,1],[39,1],[44,1],[45,1],[40,1],[41,1],[42,1],[43,1],[8,1],[49,1],[46,1],[47,1],[48,1],[50,1],[9,1],[51,1],[52,1],[53,1],[55,1],[54,1],[1,1],[105,53],[115,54],[104,53],[125,55],[96,56],[95,57],[124,58],[118,59],[123,60],[98,61],[112,62],[97,63],[121,64],[93,65],[92,58],[122,66],[94,67],[99,68],[100,1],[103,68],[90,1],[126,69],[116,70],[107,71],[108,72],[110,73],[106,74],[109,75],[119,58],[101,76],[102,77],[111,78],[91,79],[114,70],[113,68],[117,1],[120,80],[60,81],[61,1],[66,82],[62,81],[59,83],[63,1],[64,81],[65,1],[77,84],[73,85],[76,86],[75,87],[74,1],[72,88],[70,89],[69,90],[67,91],[71,92],[68,93],[78,94]],"latestChangedDtsFile":"./types/index.d.ts","version":"5.9.3"}
package/dist/cjs/index.js CHANGED
@@ -1,4 +1,31 @@
1
- export * from './interface.js';
2
- export * from './kms.js';
3
- export * from './store.js';
4
- //# sourceMappingURL=index.js.map
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * DEPRECATED. This package was renamed to `@did-btcr2/key-manager`.
19
+ *
20
+ * This module re-exports the entire public surface of `@did-btcr2/key-manager`
21
+ * so existing code that imports from `@did-btcr2/kms` keeps working without
22
+ * changes. The API is identical; only the import path moved.
23
+ *
24
+ * Update your imports at your convenience:
25
+ *
26
+ * - import { LocalKeyManager } from '@did-btcr2/kms';
27
+ * + import { LocalKeyManager } from '@did-btcr2/key-manager';
28
+ *
29
+ * See https://github.com/dcdpr/did-btcr2-js/blob/main/docs/adr/033-key-manager-package-rename.md
30
+ */
31
+ __exportStar(require("@did-btcr2/key-manager"), exports);
package/dist/esm/index.js CHANGED
@@ -1,4 +1,16 @@
1
- export * from './interface.js';
2
- export * from './kms.js';
3
- export * from './store.js';
1
+ /**
2
+ * DEPRECATED. This package was renamed to `@did-btcr2/key-manager`.
3
+ *
4
+ * This module re-exports the entire public surface of `@did-btcr2/key-manager`
5
+ * so existing code that imports from `@did-btcr2/kms` keeps working without
6
+ * changes. The API is identical; only the import path moved.
7
+ *
8
+ * Update your imports at your convenience:
9
+ *
10
+ * - import { LocalKeyManager } from '@did-btcr2/kms';
11
+ * + import { LocalKeyManager } from '@did-btcr2/key-manager';
12
+ *
13
+ * See https://github.com/dcdpr/did-btcr2-js/blob/main/docs/adr/033-key-manager-package-rename.md
14
+ */
15
+ export * from '@did-btcr2/key-manager';
4
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,cAAc,wBAAwB,CAAC"}
@@ -1,4 +1,16 @@
1
- export * from './interface.js';
2
- export * from './kms.js';
3
- export * from './store.js';
1
+ /**
2
+ * DEPRECATED. This package was renamed to `@did-btcr2/key-manager`.
3
+ *
4
+ * This module re-exports the entire public surface of `@did-btcr2/key-manager`
5
+ * so existing code that imports from `@did-btcr2/kms` keeps working without
6
+ * changes. The API is identical; only the import path moved.
7
+ *
8
+ * Update your imports at your convenience:
9
+ *
10
+ * - import { LocalKeyManager } from '@did-btcr2/kms';
11
+ * + import { LocalKeyManager } from '@did-btcr2/key-manager';
12
+ *
13
+ * See https://github.com/dcdpr/did-btcr2-js/blob/main/docs/adr/033-key-manager-package-rename.md
14
+ */
15
+ export * from '@did-btcr2/key-manager';
4
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,cAAc,wBAAwB,CAAC"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@did-btcr2/kms",
3
- "version": "0.4.1",
3
+ "version": "0.5.0",
4
4
  "type": "module",
5
- "description": "Key manager that can be used with the did:btcr2 DID method",
5
+ "description": "DEPRECATED: renamed to @did-btcr2/key-manager. This package re-exports the new one for backwards compatibility; update your import paths.",
6
6
  "main": "./dist/cjs/index.js",
7
7
  "module": "./dist/esm/index.js",
8
8
  "types": "./dist/types/index.d.ts",
@@ -43,63 +43,30 @@
43
43
  "node": ">=22.0.0"
44
44
  },
45
45
  "keywords": [
46
+ "deprecated",
46
47
  "did",
47
- "dids",
48
- "decentralized identity",
49
- "decentralized identifiers",
50
- "did method",
51
48
  "did:btcr2",
52
- "btcr2",
53
49
  "kms",
54
50
  "key management system",
55
51
  "key manager"
56
52
  ],
57
53
  "dependencies": {
58
- "@noble/hashes": "^2.0.1",
59
- "@did-btcr2/common": "^8.0.1",
60
- "@did-btcr2/keypair": "^0.11.3"
54
+ "@did-btcr2/key-manager": "^0.6.0"
61
55
  },
62
56
  "devDependencies": {
63
- "@eslint/js": "^9.22.0",
64
- "@types/chai": "^5.0.1",
65
- "@types/chai-as-promised": "^8.0.1",
66
- "@types/eslint": "^9.6.1",
67
- "@types/mocha": "^10.0.9",
68
57
  "@types/node": "^22.5.4",
69
- "@typescript-eslint/eslint-plugin": "^8.5.0",
70
- "@typescript-eslint/parser": "^8.5.0",
71
- "c8": "^10.1.2",
72
- "chai": "^5.1.2",
73
- "chai-as-promised": "^8.0.0",
74
- "esbuild": "^0.24.2",
75
- "eslint": "^9.14.0",
76
- "eslint-plugin-mocha": "^10.5.0",
77
- "globals": "^15.11.0",
78
- "mocha": "^10.8.2",
79
- "mocha-junit-reporter": "^2.2.1",
80
- "node-stdlib-browser": "^1.3.1",
81
58
  "rimraf": "^6.0.1",
82
- "typedoc-plugin-markdown": "^4.7.0",
83
- "typescript": "^5.6.2",
84
- "typescript-eslint": "^8.19.1"
59
+ "typescript": "^5.6.2"
85
60
  },
86
61
  "scripts": {
87
62
  "clean:build": "rimraf dist",
88
- "clean:tests": "rimraf coverage tests/compiled",
89
63
  "clean:deps": "rimraf node_modules pnpm-lock.json",
90
- "clean": "pnpm clean:build && pnpm clean:tests",
64
+ "clean": "pnpm clean:build",
91
65
  "wipe": "pnpm clean && pnpm clean:deps",
92
66
  "reinstall": "pnpm install --force",
93
67
  "build": "pnpm clean:build && pnpm build:esm && pnpm build:cjs",
94
68
  "build:esm": "rimraf dist/esm dist/types && pnpm tsc -p tsconfig.json",
95
69
  "build:cjs": "rimraf dist/cjs && tsc -p tsconfig.cjs.json && echo '{\"type\": \"commonjs\"}' > ./dist/cjs/package.json",
96
- "build:tests": "pnpm clean:tests && pnpm tsc -p tests/tsconfig.json",
97
- "build:all": "pnpm build && pnpm build:tests",
98
- "lint": "eslint . --max-warnings 0",
99
- "lint:fix": "eslint . --fix",
100
- "test": "pnpm c8 mocha",
101
- "build:test": "pnpm build && pnpm build:tests && pnpm c8 mocha",
102
- "build:lint": "pnpm build && pnpm build:tests && pnpm lint:fix",
103
70
  "prepublish": "pnpm build"
104
71
  }
105
72
  }
package/src/index.ts CHANGED
@@ -1,3 +1,15 @@
1
- export * from './interface.js';
2
- export * from './kms.js';
3
- export * from './store.js';
1
+ /**
2
+ * DEPRECATED. This package was renamed to `@did-btcr2/key-manager`.
3
+ *
4
+ * This module re-exports the entire public surface of `@did-btcr2/key-manager`
5
+ * so existing code that imports from `@did-btcr2/kms` keeps working without
6
+ * changes. The API is identical; only the import path moved.
7
+ *
8
+ * Update your imports at your convenience:
9
+ *
10
+ * - import { LocalKeyManager } from '@did-btcr2/kms';
11
+ * + import { LocalKeyManager } from '@did-btcr2/key-manager';
12
+ *
13
+ * See https://github.com/dcdpr/did-btcr2-js/blob/main/docs/adr/033-key-manager-package-rename.md
14
+ */
15
+ export * from '@did-btcr2/key-manager';
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/interface.ts"],"names":[],"mappings":""}
package/dist/cjs/kms.js DELETED
@@ -1,229 +0,0 @@
1
- import { KeyManagerError } from '@did-btcr2/common';
2
- import { SchnorrKeyPair } from '@did-btcr2/keypair';
3
- import { sha256 } from '@noble/hashes/sha2.js';
4
- import { MemoryStore } from './store.js';
5
- /**
6
- * Key Management System for the did:btcr2 DID method.
7
- *
8
- * Implements the {@link KeyManager} interface with a pluggable
9
- * {@link KeyValueStore} (defaults to {@link MemoryStore}).
10
- *
11
- * Supports both signing (secret key present) and watch-only
12
- * (public-key-only) key entries, and both Schnorr and ECDSA
13
- * signature schemes.
14
- *
15
- */
16
- export class Kms {
17
- #store;
18
- #activeKeyId;
19
- /**
20
- * Create a new KMS instance.
21
- *
22
- * @param {KeyValueStore<KeyIdentifier, KeyEntry>} [store] Optional key-value store.
23
- * Defaults to in-memory store if not provided.
24
- */
25
- constructor(store) {
26
- this.#store = store ?? new MemoryStore();
27
- }
28
- /**
29
- * Get the active key identifier.
30
- *
31
- * @returns {KeyIdentifier | undefined} The active key identifier, or undefined if none is set.
32
- */
33
- get activeKeyId() {
34
- return this.#activeKeyId;
35
- }
36
- /**
37
- * Generate a URN-style key identifier from compressed public key bytes.
38
- * Format: `urn:kms:secp256k1:<fingerprint>` where fingerprint is the
39
- * first 8 bytes of SHA-256(publicKey), hex-encoded.
40
- *
41
- * @param {KeyBytes} publicKeyBytes Compressed secp256k1 public key bytes.
42
- * @returns {KeyIdentifier} The generated key identifier.
43
- */
44
- #generateUrn(publicKeyBytes) {
45
- const hash = sha256(publicKeyBytes);
46
- const fingerprint = Array.from(hash.slice(0, 8))
47
- .map(b => b.toString(16).padStart(2, '0'))
48
- .join('');
49
- return `urn:kms:secp256k1:${fingerprint}`;
50
- }
51
- /**
52
- * Retrieve a key entry or throw if not found / no active key set.
53
- *
54
- * @param {KeyIdentifier} [id] Key identifier. Uses active key if omitted.
55
- * @returns {KeyEntry} The retrieved key entry.
56
- * @throws {KeyManagerError} If key not found or no active key set.
57
- */
58
- #getEntryOrThrow(id) {
59
- const keyId = id ?? this.#activeKeyId;
60
- if (!keyId) {
61
- throw new KeyManagerError('No active key set', 'ACTIVE_KEY_NOT_SET');
62
- }
63
- const entry = this.#store.get(keyId);
64
- if (!entry) {
65
- throw new KeyManagerError(`Key not found: ${keyId}`, 'KEY_NOT_FOUND');
66
- }
67
- return entry;
68
- }
69
- /**
70
- * Set the active key.
71
- *
72
- * @param id The key identifier to set as active.
73
- * @throws {KeyManagerError} If the key is not found.
74
- */
75
- setActiveKey(id) {
76
- this.#getEntryOrThrow(id);
77
- this.#activeKeyId = id;
78
- }
79
- /**
80
- * Get the compressed public key bytes for a key.
81
- *
82
- * @param id Key identifier. Uses active key if omitted.
83
- * @returns Compressed secp256k1 public key bytes.
84
- * @throws {KeyManagerError} If key not found or no active key set.
85
- */
86
- getPublicKey(id) {
87
- return this.#getEntryOrThrow(id).publicKey;
88
- }
89
- /**
90
- * Sign data using the specified key.
91
- *
92
- * @param {Bytes} data The data to sign.
93
- * @param {KeyIdentifier} [id] Key identifier. Uses active key if omitted.
94
- * @param {SignOptions} [options] Signing options (scheme defaults to 'schnorr').
95
- * @returns {SignatureBytes} The signature bytes.
96
- * @throws {KeyManagerError} If key not found, no active key, or key cannot sign.
97
- */
98
- sign(data, id, options = {}) {
99
- const entry = this.#getEntryOrThrow(id);
100
- if (!entry.secretKey) {
101
- const keyId = id ?? this.#activeKeyId;
102
- throw new KeyManagerError(`Key is not a signing key: ${keyId}`, 'KEY_NOT_SIGNER');
103
- }
104
- const kp = new SchnorrKeyPair({ secretKey: entry.secretKey });
105
- return kp.secretKey.sign(data, { scheme: options.scheme ?? 'schnorr' });
106
- }
107
- /**
108
- * Verify a signature using the specified key.
109
- *
110
- * @param {SignatureBytes} signature The signature bytes to verify.
111
- * @param {Bytes} data The data that was signed.
112
- * @param {KeyIdentifier} [id] Key identifier. Uses active key if omitted.
113
- * @param {SignOptions} [options] Verification options (scheme defaults to 'schnorr').
114
- * @returns {boolean} True if the signature is valid, false otherwise.
115
- * @throws {KeyManagerError} If key not found or no active key set.
116
- */
117
- verify(signature, data, id, options = {}) {
118
- const entry = this.#getEntryOrThrow(id);
119
- const kp = new SchnorrKeyPair({ publicKey: entry.publicKey });
120
- return kp.publicKey.verify(signature, data, { scheme: options.scheme ?? 'schnorr' });
121
- }
122
- /**
123
- * Import a key pair into the KMS.
124
- *
125
- * @param {SchnorrKeyPair} keyPair The key pair to import.
126
- * @param {ImportKeyOptions} [options] Import options (id, tags, setActive).
127
- * @returns {KeyIdentifier} The identifier of the imported key.
128
- * @throws {KeyManagerError} If a key with the same identifier already exists.
129
- */
130
- importKey(keyPair, options = {}) {
131
- const id = options.id ?? this.#generateUrn(keyPair.publicKey.compressed);
132
- if (this.#store.has(id)) {
133
- throw new KeyManagerError(`Key already exists: ${id}`, 'KEY_FOUND');
134
- }
135
- // Build key entry — secret key may not be available for watch-only pairs
136
- const entry = {
137
- publicKey: keyPair.publicKey.compressed,
138
- ...(options.tags && { tags: options.tags }),
139
- };
140
- try {
141
- if (keyPair.secretKey) {
142
- entry.secretKey = keyPair.secretKey.bytes;
143
- }
144
- }
145
- catch {
146
- // Public-key-only key pair — secretKey getter throws
147
- }
148
- this.#store.set(id, entry);
149
- if (options.setActive) {
150
- this.#activeKeyId = id;
151
- }
152
- return id;
153
- }
154
- /**
155
- * Remove a key from the KMS.
156
- *
157
- * @param {KeyIdentifier} id The key identifier to remove.
158
- * @param {Object} [options] Removal options.
159
- * @param {boolean} [options.force=false] Force removal of active key.
160
- * @throws {KeyManagerError} If key not found or attempting to remove active key without force.
161
- */
162
- removeKey(id, options = {}) {
163
- if (this.#activeKeyId === id && !options.force) {
164
- throw new KeyManagerError('Cannot remove active key (use "force": true or switch active key)', 'ACTIVE_KEY_DELETE');
165
- }
166
- if (!this.#store.has(id)) {
167
- throw new KeyManagerError(`Key not found: ${id}`, 'KEY_NOT_FOUND');
168
- }
169
- this.#store.delete(id);
170
- if (this.#activeKeyId === id) {
171
- this.#activeKeyId = undefined;
172
- }
173
- }
174
- /**
175
- * List all key identifiers in the KMS.
176
- *
177
- * @returns {KeyIdentifier[]} Array of key identifiers.
178
- */
179
- listKeys() {
180
- return this.#store.entries().map(([k]) => k);
181
- }
182
- /**
183
- * Compute the SHA-256 digest of the given data.
184
- *
185
- * @param {Uint8Array} data The data to digest.
186
- * @returns {HashBytes} The SHA-256 hash of the data.
187
- */
188
- digest(data) {
189
- return sha256(data);
190
- }
191
- /**
192
- * Generate a new secp256k1 key pair and store it in the KMS.
193
- *
194
- * @param {GenerateKeyOptions} [options] Generation options (tags, setActive).
195
- * @returns {KeyIdentifier} The identifier of the generated key.
196
- */
197
- generateKey(options = {}) {
198
- const kp = SchnorrKeyPair.generate();
199
- const id = this.#generateUrn(kp.publicKey.compressed);
200
- const entry = {
201
- secretKey: kp.secretKey.bytes,
202
- publicKey: kp.publicKey.compressed,
203
- ...(options.tags && { tags: options.tags }),
204
- };
205
- this.#store.set(id, entry);
206
- if (options.setActive) {
207
- this.#activeKeyId = id;
208
- }
209
- return id;
210
- }
211
- /**
212
- * Export the key pair for a stored key.
213
- *
214
- * Only available on the concrete {@link Kms} class, not on the
215
- * {@link KeyManager} interface. HSM or hardware-backed implementations
216
- * may not support key export.
217
- *
218
- * @param {KeyIdentifier} id The key identifier to export.
219
- * @returns {SchnorrKeyPair} The reconstructed SchnorrKeyPair.
220
- */
221
- exportKey(id) {
222
- const entry = this.#getEntryOrThrow(id);
223
- if (entry.secretKey) {
224
- return new SchnorrKeyPair({ secretKey: entry.secretKey });
225
- }
226
- return new SchnorrKeyPair({ publicKey: entry.publicKey });
227
- }
228
- }
229
- //# sourceMappingURL=kms.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kms.js","sourceRoot":"","sources":["../../src/kms.ts"],"names":[],"mappings":"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"}