@blockchaincommons/tags 1.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,186 @@
1
+ import { Tag, TagsStore } from "@blockchaincommons/dcbor";
2
+ //#region src/tags.d.ts
3
+ /** #6.32: URI (RFC 8949 §3.4.5.3), named `url` in this stack. */
4
+ export declare const TAG_URI: Tag;
5
+ /** #6.37: binary UUID (RFC 4122). */
6
+ export declare const TAG_UUID: Tag;
7
+ /** #6.24: encoded CBOR data item; the pre-#6.201 Envelope leaf header, accepted on decode only. */
8
+ export declare const TAG_ENCODED_CBOR: Tag;
9
+ /** #6.200: Gordian Envelope. */
10
+ export declare const TAG_ENVELOPE: Tag;
11
+ /** #6.201: dCBOR data item; the Envelope leaf case. */
12
+ export declare const TAG_LEAF: Tag;
13
+ /** #6.262: byte string holding UTF-8 JSON text. */
14
+ export declare const TAG_JSON: Tag;
15
+ /** #6.40000: known value, a registered unsigned integer with a fixed meaning. */
16
+ export declare const TAG_KNOWN_VALUE: Tag;
17
+ /** #6.40001: SHA-256 digest. */
18
+ export declare const TAG_DIGEST: Tag;
19
+ /** #6.40002: encrypted message (IETF ChaCha20-Poly1305). */
20
+ export declare const TAG_ENCRYPTED: Tag;
21
+ /** #6.40003: DEFLATE-compressed data with the digest of the original. */
22
+ export declare const TAG_COMPRESSED: Tag;
23
+ /** #6.40004: request. */
24
+ export declare const TAG_REQUEST: Tag;
25
+ /** #6.40005: response. */
26
+ export declare const TAG_RESPONSE: Tag;
27
+ /** #6.40006: function identifier. */
28
+ export declare const TAG_FUNCTION: Tag;
29
+ /** #6.40007: parameter identifier. */
30
+ export declare const TAG_PARAMETER: Tag;
31
+ /** #6.40008: placeholder. */
32
+ export declare const TAG_PLACEHOLDER: Tag;
33
+ /** #6.40009: replacement. */
34
+ export declare const TAG_REPLACEMENT: Tag;
35
+ /** #6.40010: X25519 key-agreement private key. */
36
+ export declare const TAG_X25519_PRIVATE_KEY: Tag;
37
+ /** #6.40011: X25519 key-agreement public key. */
38
+ export declare const TAG_X25519_PUBLIC_KEY: Tag;
39
+ /** #6.40012: apparently random identifier (32 bytes). */
40
+ export declare const TAG_ARID: Tag;
41
+ /** #6.40013: a signing and an encapsulation private key together. */
42
+ export declare const TAG_PRIVATE_KEYS: Tag;
43
+ /** #6.40014: nonce. */
44
+ export declare const TAG_NONCE: Tag;
45
+ /** #6.40015: password. */
46
+ export declare const TAG_PASSWORD: Tag;
47
+ /** #6.40016: private key base, the material every other key derives from. */
48
+ export declare const TAG_PRIVATE_KEY_BASE: Tag;
49
+ /** #6.40017: a signing and an encapsulation public key together. */
50
+ export declare const TAG_PUBLIC_KEYS: Tag;
51
+ /** #6.40018: salt. */
52
+ export declare const TAG_SALT: Tag;
53
+ /** #6.40019: sealed message, encrypted to a recipient's public keys. */
54
+ export declare const TAG_SEALED_MESSAGE: Tag;
55
+ /** #6.40020: signature. */
56
+ export declare const TAG_SIGNATURE: Tag;
57
+ /** #6.40021: signing private key. */
58
+ export declare const TAG_SIGNING_PRIVATE_KEY: Tag;
59
+ /** #6.40022: signing public key. */
60
+ export declare const TAG_SIGNING_PUBLIC_KEY: Tag;
61
+ /** #6.40023: symmetric encryption key. */
62
+ export declare const TAG_SYMMETRIC_KEY: Tag;
63
+ /** #6.40024: extensible identifier (XID). */
64
+ export declare const TAG_XID: Tag;
65
+ /** #6.40025: reference to an identifier by a prefix of it. */
66
+ export declare const TAG_REFERENCE: Tag;
67
+ /** #6.40026: distributed function call event. */
68
+ export declare const TAG_EVENT: Tag;
69
+ /** #6.40027: symmetric key wrapped for a recipient. */
70
+ export declare const TAG_ENCRYPTED_KEY: Tag;
71
+ /** #6.40100: ML-KEM (FIPS 203) private key. */
72
+ export declare const TAG_MLKEM_PRIVATE_KEY: Tag;
73
+ /** #6.40101: ML-KEM (FIPS 203) public key. */
74
+ export declare const TAG_MLKEM_PUBLIC_KEY: Tag;
75
+ /** #6.40102: ML-KEM (FIPS 203) encapsulated ciphertext. */
76
+ export declare const TAG_MLKEM_CIPHERTEXT: Tag;
77
+ /** #6.40103: ML-DSA (FIPS 204) private key. */
78
+ export declare const TAG_MLDSA_PRIVATE_KEY: Tag;
79
+ /** #6.40104: ML-DSA (FIPS 204) public key. */
80
+ export declare const TAG_MLDSA_PUBLIC_KEY: Tag;
81
+ /** #6.40105: ML-DSA (FIPS 204) signature. */
82
+ export declare const TAG_MLDSA_SIGNATURE: Tag;
83
+ /** #6.40300: cryptographic seed. */
84
+ export declare const TAG_SEED: Tag;
85
+ /** #6.40303: BIP-32 hierarchical deterministic key. */
86
+ export declare const TAG_HDKEY: Tag;
87
+ /** #6.40304: BIP-32 derivation path. */
88
+ export declare const TAG_DERIVATION_PATH: Tag;
89
+ /** #6.40305: coin type and network (`coin-info`). */
90
+ export declare const TAG_USE_INFO: Tag;
91
+ /** #6.40306: elliptic-curve key. */
92
+ export declare const TAG_EC_KEY: Tag;
93
+ /** #6.40307: address. */
94
+ export declare const TAG_ADDRESS: Tag;
95
+ /** #6.40308: output descriptor. */
96
+ export declare const TAG_OUTPUT_DESCRIPTOR: Tag;
97
+ /** #6.40309: SSKR share. */
98
+ export declare const TAG_SSKR_SHARE: Tag;
99
+ /** #6.40310: partially signed Bitcoin transaction. */
100
+ export declare const TAG_PSBT: Tag;
101
+ /** #6.40311: account descriptor. */
102
+ export declare const TAG_ACCOUNT_DESCRIPTOR: Tag;
103
+ /** #6.40800: OpenSSH text-format private key. */
104
+ export declare const TAG_SSH_TEXT_PRIVATE_KEY: Tag;
105
+ /** #6.40801: OpenSSH text-format public key. */
106
+ export declare const TAG_SSH_TEXT_PUBLIC_KEY: Tag;
107
+ /** #6.40802: OpenSSH text-format signature. */
108
+ export declare const TAG_SSH_TEXT_SIGNATURE: Tag;
109
+ /** #6.40803: OpenSSH text-format certificate. */
110
+ export declare const TAG_SSH_TEXT_CERTIFICATE: Tag;
111
+ /** #6.1347571542: provenance mark. */
112
+ export declare const TAG_PROVENANCE_MARK: Tag;
113
+ /** #6.400: output descriptor `sh` (script hash). */
114
+ export declare const TAG_OUTPUT_SCRIPT_HASH: Tag;
115
+ /** #6.401: output descriptor `wsh` (witness script hash). */
116
+ export declare const TAG_OUTPUT_WITNESS_SCRIPT_HASH: Tag;
117
+ /** #6.402: output descriptor `pk` (public key). */
118
+ export declare const TAG_OUTPUT_PUBLIC_KEY: Tag;
119
+ /** #6.403: output descriptor `pkh` (public key hash). */
120
+ export declare const TAG_OUTPUT_PUBLIC_KEY_HASH: Tag;
121
+ /** #6.404: output descriptor `wpkh` (witness public key hash). */
122
+ export declare const TAG_OUTPUT_WITNESS_PUBLIC_KEY_HASH: Tag;
123
+ /** #6.405: output descriptor `combo`. */
124
+ export declare const TAG_OUTPUT_COMBO: Tag;
125
+ /** #6.406: output descriptor `multi` (multisig). */
126
+ export declare const TAG_OUTPUT_MULTISIG: Tag;
127
+ /** #6.407: output descriptor `sortedmulti` (sorted multisig). */
128
+ export declare const TAG_OUTPUT_SORTED_MULTISIG: Tag;
129
+ /** #6.408: output descriptor `raw` (raw script). */
130
+ export declare const TAG_OUTPUT_RAW_SCRIPT: Tag;
131
+ /** #6.409: output descriptor `tr` (taproot). */
132
+ export declare const TAG_OUTPUT_TAPROOT: Tag;
133
+ /** #6.410: output descriptor cosigner. */
134
+ export declare const TAG_OUTPUT_COSIGNER: Tag;
135
+ /** The legacy tag set; see {@link LEGACY_TAGS}. */
136
+ interface LegacyTags {
137
+ /** #6.300: `crypto-seed`, superseded by {@link TAG_SEED}. */
138
+ readonly SEED_V1: Tag;
139
+ /** #6.306: `crypto-eckey`, superseded by {@link TAG_EC_KEY}. */
140
+ readonly EC_KEY_V1: Tag;
141
+ /** #6.309: `crypto-sskr`, superseded by {@link TAG_SSKR_SHARE}. */
142
+ readonly SSKR_SHARE_V1: Tag;
143
+ /** #6.303: `crypto-hdkey`, superseded by {@link TAG_HDKEY}. */
144
+ readonly HDKEY_V1: Tag;
145
+ /** #6.304: `crypto-keypath`, superseded by {@link TAG_DERIVATION_PATH}. */
146
+ readonly DERIVATION_PATH_V1: Tag;
147
+ /** #6.305: `crypto-coin-info`, superseded by {@link TAG_USE_INFO}. */
148
+ readonly USE_INFO_V1: Tag;
149
+ /** #6.307: `crypto-output`, superseded by {@link TAG_OUTPUT_DESCRIPTOR}. */
150
+ readonly OUTPUT_DESCRIPTOR_V1: Tag;
151
+ /** #6.310: `crypto-psbt`, superseded by {@link TAG_PSBT}. */
152
+ readonly PSBT_V1: Tag;
153
+ /** #6.311: `crypto-account`, superseded by {@link TAG_ACCOUNT_DESCRIPTOR}. */
154
+ readonly ACCOUNT_V1: Tag;
155
+ }
156
+ /**
157
+ * Superseded tags, accepted on decode only. They sit in IANA's
158
+ * "Specification Required" range (300–311) and were replaced by the
159
+ * first-come-first-served 40300+ tags above; existing data still uses them.
160
+ * Never emit these for new data. Frozen, like every entry in it.
161
+ */
162
+ export declare const LEGACY_TAGS: LegacyTags;
163
+ /**
164
+ * Every tag this package defines, in registration order (the order the
165
+ * Rust reference registers them). Iterate this rather than the constants.
166
+ * Frozen, like every entry in it.
167
+ */
168
+ export declare const ALL_TAGS: readonly Tag[];
169
+ //#endregion
170
+ //#region src/register.d.ts
171
+ /**
172
+ * Register dcbor's standard tags and every tag in {@link ALL_TAGS} into
173
+ * `store` (default: the global store).
174
+ *
175
+ * Idempotent: the store compares names, so a value already registered under
176
+ * the same name is a no-op, which is what makes repeated calls safe.
177
+ *
178
+ * @param store - The store to register into; defaults to dcbor's global store.
179
+ * @throws {Error} dcbor's store throws a bare `Error` when a value is
180
+ * already registered under a *different* name
181
+ * (`Attempt to register tag: 200 'foo' with different name: 'envelope'`).
182
+ */
183
+ export declare function registerTags(store?: TagsStore): void;
184
+ //#endregion
185
+ export type { LegacyTags };
186
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/tags.ts","../src/register.ts"],"mappings":";;;qBAgCa,SAAS;;qBAET,UAAU;;qBAQV,kBAAkB;;qBAElB,cAAc;;qBAEd,UAAU;;qBAEV,UAAU;;qBAKV,iBAAiB;;qBAEjB,YAAY;;qBAEZ,eAAe;;qBAEf,gBAAgB;;qBAKhB,aAAa;;qBAEb,cAAc;;qBAEd,cAAc;;qBAEd,eAAe;;qBAEf,iBAAiB;;qBAEjB,iBAAiB;;qBAKjB,wBAAwB;;qBAExB,uBAAuB;;qBAEvB,UAAU;;qBAEV,kBAAkB;;qBAElB,WAAW;;qBAEX,cAAc;;qBAEd,sBAAsB;;qBAEtB,iBAAiB;;qBAEjB,UAAU;;qBAEV,oBAAoB;;qBAEpB,eAAe;;qBAEf,yBAAyB;;qBAEzB,wBAAwB;;qBAExB,mBAAmB;;qBAEnB,SAAS;;qBAET,eAAe;;qBAEf,WAAW;;qBAEX,mBAAmB;;qBAKnB,uBAAuB;;qBAEvB,sBAAsB;;qBAEtB,sBAAsB;;qBAEtB,uBAAuB;;qBAEvB,sBAAsB;;qBAEtB,qBAAqB;;qBAKrB,UAAU;;qBAEV,WAAW;;qBAEX,qBAAqB;;qBAErB,cAAc;;qBAEd,YAAY;;qBAEZ,aAAa;;qBAEb,uBAAuB;;qBAEvB,gBAAgB;;qBAEhB,UAAU;;qBAEV,wBAAwB;;qBAKxB,0BAA0B;;qBAE1B,yBAAyB;;qBAEzB,wBAAwB;;qBAExB,0BAA0B;;qBAG1B,qBAAqB;;qBAKrB,wBAAwB;;qBAExB,gCAAgC;;qBAEhC,uBAAuB;;qBAEvB,4BAA4B;;qBAE5B,oCAAoC;;qBAEpC,kBAAkB;;qBAElB,qBAAqB;;qBAErB,4BAA4B;;qBAE5B,uBAAuB;;qBAEvB,oBAAoB;;qBAEpB,qBAAqB;;UAGjB;;WAEN,SAAS;;WAET,WAAW;;WAEX,eAAe;;WAEf,UAAU;;WAEV,oBAAoB;;WAEpB,aAAa;;WAEb,sBAAsB;;WAEtB,SAAS;;WAET,YAAY;;;;;;;;qBASV,aAAa;;;;;;qBAiBb,mBAAmB;;;;;;;;;;;;;;;wBCzNhB,aAAa,QAAO"}
@@ -0,0 +1,186 @@
1
+ import { Tag, TagsStore } from "@blockchaincommons/dcbor";
2
+ //#region src/tags.d.ts
3
+ /** #6.32: URI (RFC 8949 §3.4.5.3), named `url` in this stack. */
4
+ export declare const TAG_URI: Tag;
5
+ /** #6.37: binary UUID (RFC 4122). */
6
+ export declare const TAG_UUID: Tag;
7
+ /** #6.24: encoded CBOR data item; the pre-#6.201 Envelope leaf header, accepted on decode only. */
8
+ export declare const TAG_ENCODED_CBOR: Tag;
9
+ /** #6.200: Gordian Envelope. */
10
+ export declare const TAG_ENVELOPE: Tag;
11
+ /** #6.201: dCBOR data item; the Envelope leaf case. */
12
+ export declare const TAG_LEAF: Tag;
13
+ /** #6.262: byte string holding UTF-8 JSON text. */
14
+ export declare const TAG_JSON: Tag;
15
+ /** #6.40000: known value, a registered unsigned integer with a fixed meaning. */
16
+ export declare const TAG_KNOWN_VALUE: Tag;
17
+ /** #6.40001: SHA-256 digest. */
18
+ export declare const TAG_DIGEST: Tag;
19
+ /** #6.40002: encrypted message (IETF ChaCha20-Poly1305). */
20
+ export declare const TAG_ENCRYPTED: Tag;
21
+ /** #6.40003: DEFLATE-compressed data with the digest of the original. */
22
+ export declare const TAG_COMPRESSED: Tag;
23
+ /** #6.40004: request. */
24
+ export declare const TAG_REQUEST: Tag;
25
+ /** #6.40005: response. */
26
+ export declare const TAG_RESPONSE: Tag;
27
+ /** #6.40006: function identifier. */
28
+ export declare const TAG_FUNCTION: Tag;
29
+ /** #6.40007: parameter identifier. */
30
+ export declare const TAG_PARAMETER: Tag;
31
+ /** #6.40008: placeholder. */
32
+ export declare const TAG_PLACEHOLDER: Tag;
33
+ /** #6.40009: replacement. */
34
+ export declare const TAG_REPLACEMENT: Tag;
35
+ /** #6.40010: X25519 key-agreement private key. */
36
+ export declare const TAG_X25519_PRIVATE_KEY: Tag;
37
+ /** #6.40011: X25519 key-agreement public key. */
38
+ export declare const TAG_X25519_PUBLIC_KEY: Tag;
39
+ /** #6.40012: apparently random identifier (32 bytes). */
40
+ export declare const TAG_ARID: Tag;
41
+ /** #6.40013: a signing and an encapsulation private key together. */
42
+ export declare const TAG_PRIVATE_KEYS: Tag;
43
+ /** #6.40014: nonce. */
44
+ export declare const TAG_NONCE: Tag;
45
+ /** #6.40015: password. */
46
+ export declare const TAG_PASSWORD: Tag;
47
+ /** #6.40016: private key base, the material every other key derives from. */
48
+ export declare const TAG_PRIVATE_KEY_BASE: Tag;
49
+ /** #6.40017: a signing and an encapsulation public key together. */
50
+ export declare const TAG_PUBLIC_KEYS: Tag;
51
+ /** #6.40018: salt. */
52
+ export declare const TAG_SALT: Tag;
53
+ /** #6.40019: sealed message, encrypted to a recipient's public keys. */
54
+ export declare const TAG_SEALED_MESSAGE: Tag;
55
+ /** #6.40020: signature. */
56
+ export declare const TAG_SIGNATURE: Tag;
57
+ /** #6.40021: signing private key. */
58
+ export declare const TAG_SIGNING_PRIVATE_KEY: Tag;
59
+ /** #6.40022: signing public key. */
60
+ export declare const TAG_SIGNING_PUBLIC_KEY: Tag;
61
+ /** #6.40023: symmetric encryption key. */
62
+ export declare const TAG_SYMMETRIC_KEY: Tag;
63
+ /** #6.40024: extensible identifier (XID). */
64
+ export declare const TAG_XID: Tag;
65
+ /** #6.40025: reference to an identifier by a prefix of it. */
66
+ export declare const TAG_REFERENCE: Tag;
67
+ /** #6.40026: distributed function call event. */
68
+ export declare const TAG_EVENT: Tag;
69
+ /** #6.40027: symmetric key wrapped for a recipient. */
70
+ export declare const TAG_ENCRYPTED_KEY: Tag;
71
+ /** #6.40100: ML-KEM (FIPS 203) private key. */
72
+ export declare const TAG_MLKEM_PRIVATE_KEY: Tag;
73
+ /** #6.40101: ML-KEM (FIPS 203) public key. */
74
+ export declare const TAG_MLKEM_PUBLIC_KEY: Tag;
75
+ /** #6.40102: ML-KEM (FIPS 203) encapsulated ciphertext. */
76
+ export declare const TAG_MLKEM_CIPHERTEXT: Tag;
77
+ /** #6.40103: ML-DSA (FIPS 204) private key. */
78
+ export declare const TAG_MLDSA_PRIVATE_KEY: Tag;
79
+ /** #6.40104: ML-DSA (FIPS 204) public key. */
80
+ export declare const TAG_MLDSA_PUBLIC_KEY: Tag;
81
+ /** #6.40105: ML-DSA (FIPS 204) signature. */
82
+ export declare const TAG_MLDSA_SIGNATURE: Tag;
83
+ /** #6.40300: cryptographic seed. */
84
+ export declare const TAG_SEED: Tag;
85
+ /** #6.40303: BIP-32 hierarchical deterministic key. */
86
+ export declare const TAG_HDKEY: Tag;
87
+ /** #6.40304: BIP-32 derivation path. */
88
+ export declare const TAG_DERIVATION_PATH: Tag;
89
+ /** #6.40305: coin type and network (`coin-info`). */
90
+ export declare const TAG_USE_INFO: Tag;
91
+ /** #6.40306: elliptic-curve key. */
92
+ export declare const TAG_EC_KEY: Tag;
93
+ /** #6.40307: address. */
94
+ export declare const TAG_ADDRESS: Tag;
95
+ /** #6.40308: output descriptor. */
96
+ export declare const TAG_OUTPUT_DESCRIPTOR: Tag;
97
+ /** #6.40309: SSKR share. */
98
+ export declare const TAG_SSKR_SHARE: Tag;
99
+ /** #6.40310: partially signed Bitcoin transaction. */
100
+ export declare const TAG_PSBT: Tag;
101
+ /** #6.40311: account descriptor. */
102
+ export declare const TAG_ACCOUNT_DESCRIPTOR: Tag;
103
+ /** #6.40800: OpenSSH text-format private key. */
104
+ export declare const TAG_SSH_TEXT_PRIVATE_KEY: Tag;
105
+ /** #6.40801: OpenSSH text-format public key. */
106
+ export declare const TAG_SSH_TEXT_PUBLIC_KEY: Tag;
107
+ /** #6.40802: OpenSSH text-format signature. */
108
+ export declare const TAG_SSH_TEXT_SIGNATURE: Tag;
109
+ /** #6.40803: OpenSSH text-format certificate. */
110
+ export declare const TAG_SSH_TEXT_CERTIFICATE: Tag;
111
+ /** #6.1347571542: provenance mark. */
112
+ export declare const TAG_PROVENANCE_MARK: Tag;
113
+ /** #6.400: output descriptor `sh` (script hash). */
114
+ export declare const TAG_OUTPUT_SCRIPT_HASH: Tag;
115
+ /** #6.401: output descriptor `wsh` (witness script hash). */
116
+ export declare const TAG_OUTPUT_WITNESS_SCRIPT_HASH: Tag;
117
+ /** #6.402: output descriptor `pk` (public key). */
118
+ export declare const TAG_OUTPUT_PUBLIC_KEY: Tag;
119
+ /** #6.403: output descriptor `pkh` (public key hash). */
120
+ export declare const TAG_OUTPUT_PUBLIC_KEY_HASH: Tag;
121
+ /** #6.404: output descriptor `wpkh` (witness public key hash). */
122
+ export declare const TAG_OUTPUT_WITNESS_PUBLIC_KEY_HASH: Tag;
123
+ /** #6.405: output descriptor `combo`. */
124
+ export declare const TAG_OUTPUT_COMBO: Tag;
125
+ /** #6.406: output descriptor `multi` (multisig). */
126
+ export declare const TAG_OUTPUT_MULTISIG: Tag;
127
+ /** #6.407: output descriptor `sortedmulti` (sorted multisig). */
128
+ export declare const TAG_OUTPUT_SORTED_MULTISIG: Tag;
129
+ /** #6.408: output descriptor `raw` (raw script). */
130
+ export declare const TAG_OUTPUT_RAW_SCRIPT: Tag;
131
+ /** #6.409: output descriptor `tr` (taproot). */
132
+ export declare const TAG_OUTPUT_TAPROOT: Tag;
133
+ /** #6.410: output descriptor cosigner. */
134
+ export declare const TAG_OUTPUT_COSIGNER: Tag;
135
+ /** The legacy tag set; see {@link LEGACY_TAGS}. */
136
+ interface LegacyTags {
137
+ /** #6.300: `crypto-seed`, superseded by {@link TAG_SEED}. */
138
+ readonly SEED_V1: Tag;
139
+ /** #6.306: `crypto-eckey`, superseded by {@link TAG_EC_KEY}. */
140
+ readonly EC_KEY_V1: Tag;
141
+ /** #6.309: `crypto-sskr`, superseded by {@link TAG_SSKR_SHARE}. */
142
+ readonly SSKR_SHARE_V1: Tag;
143
+ /** #6.303: `crypto-hdkey`, superseded by {@link TAG_HDKEY}. */
144
+ readonly HDKEY_V1: Tag;
145
+ /** #6.304: `crypto-keypath`, superseded by {@link TAG_DERIVATION_PATH}. */
146
+ readonly DERIVATION_PATH_V1: Tag;
147
+ /** #6.305: `crypto-coin-info`, superseded by {@link TAG_USE_INFO}. */
148
+ readonly USE_INFO_V1: Tag;
149
+ /** #6.307: `crypto-output`, superseded by {@link TAG_OUTPUT_DESCRIPTOR}. */
150
+ readonly OUTPUT_DESCRIPTOR_V1: Tag;
151
+ /** #6.310: `crypto-psbt`, superseded by {@link TAG_PSBT}. */
152
+ readonly PSBT_V1: Tag;
153
+ /** #6.311: `crypto-account`, superseded by {@link TAG_ACCOUNT_DESCRIPTOR}. */
154
+ readonly ACCOUNT_V1: Tag;
155
+ }
156
+ /**
157
+ * Superseded tags, accepted on decode only. They sit in IANA's
158
+ * "Specification Required" range (300–311) and were replaced by the
159
+ * first-come-first-served 40300+ tags above; existing data still uses them.
160
+ * Never emit these for new data. Frozen, like every entry in it.
161
+ */
162
+ export declare const LEGACY_TAGS: LegacyTags;
163
+ /**
164
+ * Every tag this package defines, in registration order (the order the
165
+ * Rust reference registers them). Iterate this rather than the constants.
166
+ * Frozen, like every entry in it.
167
+ */
168
+ export declare const ALL_TAGS: readonly Tag[];
169
+ //#endregion
170
+ //#region src/register.d.ts
171
+ /**
172
+ * Register dcbor's standard tags and every tag in {@link ALL_TAGS} into
173
+ * `store` (default: the global store).
174
+ *
175
+ * Idempotent: the store compares names, so a value already registered under
176
+ * the same name is a no-op, which is what makes repeated calls safe.
177
+ *
178
+ * @param store - The store to register into; defaults to dcbor's global store.
179
+ * @throws {Error} dcbor's store throws a bare `Error` when a value is
180
+ * already registered under a *different* name
181
+ * (`Attempt to register tag: 200 'foo' with different name: 'envelope'`).
182
+ */
183
+ export declare function registerTags(store?: TagsStore): void;
184
+ //#endregion
185
+ export type { LegacyTags };
186
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/tags.ts","../src/register.ts"],"mappings":";;;qBAgCa,SAAS;;qBAET,UAAU;;qBAQV,kBAAkB;;qBAElB,cAAc;;qBAEd,UAAU;;qBAEV,UAAU;;qBAKV,iBAAiB;;qBAEjB,YAAY;;qBAEZ,eAAe;;qBAEf,gBAAgB;;qBAKhB,aAAa;;qBAEb,cAAc;;qBAEd,cAAc;;qBAEd,eAAe;;qBAEf,iBAAiB;;qBAEjB,iBAAiB;;qBAKjB,wBAAwB;;qBAExB,uBAAuB;;qBAEvB,UAAU;;qBAEV,kBAAkB;;qBAElB,WAAW;;qBAEX,cAAc;;qBAEd,sBAAsB;;qBAEtB,iBAAiB;;qBAEjB,UAAU;;qBAEV,oBAAoB;;qBAEpB,eAAe;;qBAEf,yBAAyB;;qBAEzB,wBAAwB;;qBAExB,mBAAmB;;qBAEnB,SAAS;;qBAET,eAAe;;qBAEf,WAAW;;qBAEX,mBAAmB;;qBAKnB,uBAAuB;;qBAEvB,sBAAsB;;qBAEtB,sBAAsB;;qBAEtB,uBAAuB;;qBAEvB,sBAAsB;;qBAEtB,qBAAqB;;qBAKrB,UAAU;;qBAEV,WAAW;;qBAEX,qBAAqB;;qBAErB,cAAc;;qBAEd,YAAY;;qBAEZ,aAAa;;qBAEb,uBAAuB;;qBAEvB,gBAAgB;;qBAEhB,UAAU;;qBAEV,wBAAwB;;qBAKxB,0BAA0B;;qBAE1B,yBAAyB;;qBAEzB,wBAAwB;;qBAExB,0BAA0B;;qBAG1B,qBAAqB;;qBAKrB,wBAAwB;;qBAExB,gCAAgC;;qBAEhC,uBAAuB;;qBAEvB,4BAA4B;;qBAE5B,oCAAoC;;qBAEpC,kBAAkB;;qBAElB,qBAAqB;;qBAErB,4BAA4B;;qBAE5B,uBAAuB;;qBAEvB,oBAAoB;;qBAEpB,qBAAqB;;UAGjB;;WAEN,SAAS;;WAET,WAAW;;WAEX,eAAe;;WAEf,UAAU;;WAEV,oBAAoB;;WAEpB,aAAa;;WAEb,sBAAsB;;WAEtB,SAAS;;WAET,YAAY;;;;;;;;qBASV,aAAa;;;;;;qBAiBb,mBAAmB;;;;;;;;;;;;;;;wBCzNhB,aAAa,QAAO"}
package/dist/index.mjs ADDED
@@ -0,0 +1,280 @@
1
+ import { TAG_ENCODED_CBOR as TAG_ENCODED_CBOR$1, TAG_URI as TAG_URI$1, TAG_UUID as TAG_UUID$1, Tag, getGlobalTagsStore, registerStandardTags } from "@blockchaincommons/dcbor";
2
+ //#region src/tags.ts
3
+ /**
4
+ * The Blockchain Commons CBOR tag registry.
5
+ *
6
+ * Values are the CBOR tag numbers on the wire; names are wire too, since
7
+ * `uniform-resources` derives UR types from them (`ur:envelope`). Neither
8
+ * may change without a specification change. Every constant is frozen.
9
+ *
10
+ * Tags compare by value: `TAG_ENVELOPE === Tag.from(200, "envelope")` is
11
+ * `false` (two objects), `Tag.equals(a, b)` and `a.value === b.value` are
12
+ * the comparisons to write.
13
+ *
14
+ * @see https://github.com/BlockchainCommons/Research/blob/master/papers/bcr-2020-006-urtypes.md
15
+ * @module tags
16
+ */
17
+ /**
18
+ * One immutable tag. dcbor's `Tag.from` returns a plain object whose
19
+ * `readonly` is a compile-time promise only; the names here are wire,
20
+ * so nothing may rewrite them process-wide.
21
+ */
22
+ const tag = (value, name) => Object.freeze(Tag.from(value, name));
23
+ /** #6.32: URI (RFC 8949 §3.4.5.3), named `url` in this stack. */
24
+ const TAG_URI = tag(TAG_URI$1, "url");
25
+ /** #6.37: binary UUID (RFC 4122). */
26
+ const TAG_UUID = tag(TAG_UUID$1, "uuid");
27
+ /** #6.24: encoded CBOR data item; the pre-#6.201 Envelope leaf header, accepted on decode only. */
28
+ const TAG_ENCODED_CBOR = tag(TAG_ENCODED_CBOR$1, "encoded-cbor");
29
+ /** #6.200: Gordian Envelope. */
30
+ const TAG_ENVELOPE = tag(200, "envelope");
31
+ /** #6.201: dCBOR data item; the Envelope leaf case. */
32
+ const TAG_LEAF = tag(201, "leaf");
33
+ /** #6.262: byte string holding UTF-8 JSON text. */
34
+ const TAG_JSON = tag(262, "json");
35
+ /** #6.40000: known value, a registered unsigned integer with a fixed meaning. */
36
+ const TAG_KNOWN_VALUE = tag(4e4, "known-value");
37
+ /** #6.40001: SHA-256 digest. */
38
+ const TAG_DIGEST = tag(40001, "digest");
39
+ /** #6.40002: encrypted message (IETF ChaCha20-Poly1305). */
40
+ const TAG_ENCRYPTED = tag(40002, "encrypted");
41
+ /** #6.40003: DEFLATE-compressed data with the digest of the original. */
42
+ const TAG_COMPRESSED = tag(40003, "compressed");
43
+ /** #6.40004: request. */
44
+ const TAG_REQUEST = tag(40004, "request");
45
+ /** #6.40005: response. */
46
+ const TAG_RESPONSE = tag(40005, "response");
47
+ /** #6.40006: function identifier. */
48
+ const TAG_FUNCTION = tag(40006, "function");
49
+ /** #6.40007: parameter identifier. */
50
+ const TAG_PARAMETER = tag(40007, "parameter");
51
+ /** #6.40008: placeholder. */
52
+ const TAG_PLACEHOLDER = tag(40008, "placeholder");
53
+ /** #6.40009: replacement. */
54
+ const TAG_REPLACEMENT = tag(40009, "replacement");
55
+ /** #6.40010: X25519 key-agreement private key. */
56
+ const TAG_X25519_PRIVATE_KEY = tag(40010, "agreement-private-key");
57
+ /** #6.40011: X25519 key-agreement public key. */
58
+ const TAG_X25519_PUBLIC_KEY = tag(40011, "agreement-public-key");
59
+ /** #6.40012: apparently random identifier (32 bytes). */
60
+ const TAG_ARID = tag(40012, "arid");
61
+ /** #6.40013: a signing and an encapsulation private key together. */
62
+ const TAG_PRIVATE_KEYS = tag(40013, "crypto-prvkeys");
63
+ /** #6.40014: nonce. */
64
+ const TAG_NONCE = tag(40014, "nonce");
65
+ /** #6.40015: password. */
66
+ const TAG_PASSWORD = tag(40015, "password");
67
+ /** #6.40016: private key base, the material every other key derives from. */
68
+ const TAG_PRIVATE_KEY_BASE = tag(40016, "crypto-prvkey-base");
69
+ /** #6.40017: a signing and an encapsulation public key together. */
70
+ const TAG_PUBLIC_KEYS = tag(40017, "crypto-pubkeys");
71
+ /** #6.40018: salt. */
72
+ const TAG_SALT = tag(40018, "salt");
73
+ /** #6.40019: sealed message, encrypted to a recipient's public keys. */
74
+ const TAG_SEALED_MESSAGE = tag(40019, "crypto-sealed");
75
+ /** #6.40020: signature. */
76
+ const TAG_SIGNATURE = tag(40020, "signature");
77
+ /** #6.40021: signing private key. */
78
+ const TAG_SIGNING_PRIVATE_KEY = tag(40021, "signing-private-key");
79
+ /** #6.40022: signing public key. */
80
+ const TAG_SIGNING_PUBLIC_KEY = tag(40022, "signing-public-key");
81
+ /** #6.40023: symmetric encryption key. */
82
+ const TAG_SYMMETRIC_KEY = tag(40023, "crypto-key");
83
+ /** #6.40024: extensible identifier (XID). */
84
+ const TAG_XID = tag(40024, "xid");
85
+ /** #6.40025: reference to an identifier by a prefix of it. */
86
+ const TAG_REFERENCE = tag(40025, "reference");
87
+ /** #6.40026: distributed function call event. */
88
+ const TAG_EVENT = tag(40026, "event");
89
+ /** #6.40027: symmetric key wrapped for a recipient. */
90
+ const TAG_ENCRYPTED_KEY = tag(40027, "encrypted-key");
91
+ /** #6.40100: ML-KEM (FIPS 203) private key. */
92
+ const TAG_MLKEM_PRIVATE_KEY = tag(40100, "mlkem-private-key");
93
+ /** #6.40101: ML-KEM (FIPS 203) public key. */
94
+ const TAG_MLKEM_PUBLIC_KEY = tag(40101, "mlkem-public-key");
95
+ /** #6.40102: ML-KEM (FIPS 203) encapsulated ciphertext. */
96
+ const TAG_MLKEM_CIPHERTEXT = tag(40102, "mlkem-ciphertext");
97
+ /** #6.40103: ML-DSA (FIPS 204) private key. */
98
+ const TAG_MLDSA_PRIVATE_KEY = tag(40103, "mldsa-private-key");
99
+ /** #6.40104: ML-DSA (FIPS 204) public key. */
100
+ const TAG_MLDSA_PUBLIC_KEY = tag(40104, "mldsa-public-key");
101
+ /** #6.40105: ML-DSA (FIPS 204) signature. */
102
+ const TAG_MLDSA_SIGNATURE = tag(40105, "mldsa-signature");
103
+ /** #6.40300: cryptographic seed. */
104
+ const TAG_SEED = tag(40300, "seed");
105
+ /** #6.40303: BIP-32 hierarchical deterministic key. */
106
+ const TAG_HDKEY = tag(40303, "hdkey");
107
+ /** #6.40304: BIP-32 derivation path. */
108
+ const TAG_DERIVATION_PATH = tag(40304, "keypath");
109
+ /** #6.40305: coin type and network (`coin-info`). */
110
+ const TAG_USE_INFO = tag(40305, "coin-info");
111
+ /** #6.40306: elliptic-curve key. */
112
+ const TAG_EC_KEY = tag(40306, "eckey");
113
+ /** #6.40307: address. */
114
+ const TAG_ADDRESS = tag(40307, "address");
115
+ /** #6.40308: output descriptor. */
116
+ const TAG_OUTPUT_DESCRIPTOR = tag(40308, "output-descriptor");
117
+ /** #6.40309: SSKR share. */
118
+ const TAG_SSKR_SHARE = tag(40309, "sskr");
119
+ /** #6.40310: partially signed Bitcoin transaction. */
120
+ const TAG_PSBT = tag(40310, "psbt");
121
+ /** #6.40311: account descriptor. */
122
+ const TAG_ACCOUNT_DESCRIPTOR = tag(40311, "account-descriptor");
123
+ /** #6.40800: OpenSSH text-format private key. */
124
+ const TAG_SSH_TEXT_PRIVATE_KEY = tag(40800, "ssh-private");
125
+ /** #6.40801: OpenSSH text-format public key. */
126
+ const TAG_SSH_TEXT_PUBLIC_KEY = tag(40801, "ssh-public");
127
+ /** #6.40802: OpenSSH text-format signature. */
128
+ const TAG_SSH_TEXT_SIGNATURE = tag(40802, "ssh-signature");
129
+ /** #6.40803: OpenSSH text-format certificate. */
130
+ const TAG_SSH_TEXT_CERTIFICATE = tag(40803, "ssh-certificate");
131
+ /** #6.1347571542: provenance mark. */
132
+ const TAG_PROVENANCE_MARK = tag(1347571542, "provenance");
133
+ /** #6.400: output descriptor `sh` (script hash). */
134
+ const TAG_OUTPUT_SCRIPT_HASH = tag(400, "output-script-hash");
135
+ /** #6.401: output descriptor `wsh` (witness script hash). */
136
+ const TAG_OUTPUT_WITNESS_SCRIPT_HASH = tag(401, "output-witness-script-hash");
137
+ /** #6.402: output descriptor `pk` (public key). */
138
+ const TAG_OUTPUT_PUBLIC_KEY = tag(402, "output-public-key");
139
+ /** #6.403: output descriptor `pkh` (public key hash). */
140
+ const TAG_OUTPUT_PUBLIC_KEY_HASH = tag(403, "output-public-key-hash");
141
+ /** #6.404: output descriptor `wpkh` (witness public key hash). */
142
+ const TAG_OUTPUT_WITNESS_PUBLIC_KEY_HASH = tag(404, "output-witness-public-key-hash");
143
+ /** #6.405: output descriptor `combo`. */
144
+ const TAG_OUTPUT_COMBO = tag(405, "output-combo");
145
+ /** #6.406: output descriptor `multi` (multisig). */
146
+ const TAG_OUTPUT_MULTISIG = tag(406, "output-multisig");
147
+ /** #6.407: output descriptor `sortedmulti` (sorted multisig). */
148
+ const TAG_OUTPUT_SORTED_MULTISIG = tag(407, "output-sorted-multisig");
149
+ /** #6.408: output descriptor `raw` (raw script). */
150
+ const TAG_OUTPUT_RAW_SCRIPT = tag(408, "output-raw-script");
151
+ /** #6.409: output descriptor `tr` (taproot). */
152
+ const TAG_OUTPUT_TAPROOT = tag(409, "output-taproot");
153
+ /** #6.410: output descriptor cosigner. */
154
+ const TAG_OUTPUT_COSIGNER = tag(410, "output-cosigner");
155
+ /**
156
+ * Superseded tags, accepted on decode only. They sit in IANA's
157
+ * "Specification Required" range (300–311) and were replaced by the
158
+ * first-come-first-served 40300+ tags above; existing data still uses them.
159
+ * Never emit these for new data. Frozen, like every entry in it.
160
+ */
161
+ const LEGACY_TAGS = Object.freeze({
162
+ SEED_V1: tag(300, "crypto-seed"),
163
+ EC_KEY_V1: tag(306, "crypto-eckey"),
164
+ SSKR_SHARE_V1: tag(309, "crypto-sskr"),
165
+ HDKEY_V1: tag(303, "crypto-hdkey"),
166
+ DERIVATION_PATH_V1: tag(304, "crypto-keypath"),
167
+ USE_INFO_V1: tag(305, "crypto-coin-info"),
168
+ OUTPUT_DESCRIPTOR_V1: tag(307, "crypto-output"),
169
+ PSBT_V1: tag(310, "crypto-psbt"),
170
+ ACCOUNT_V1: tag(311, "crypto-account")
171
+ });
172
+ /**
173
+ * Every tag this package defines, in registration order (the order the
174
+ * Rust reference registers them). Iterate this rather than the constants.
175
+ * Frozen, like every entry in it.
176
+ */
177
+ const ALL_TAGS = Object.freeze([
178
+ TAG_URI,
179
+ TAG_UUID,
180
+ TAG_ENCODED_CBOR,
181
+ TAG_ENVELOPE,
182
+ TAG_LEAF,
183
+ TAG_JSON,
184
+ TAG_KNOWN_VALUE,
185
+ TAG_DIGEST,
186
+ TAG_ENCRYPTED,
187
+ TAG_COMPRESSED,
188
+ TAG_REQUEST,
189
+ TAG_RESPONSE,
190
+ TAG_FUNCTION,
191
+ TAG_PARAMETER,
192
+ TAG_PLACEHOLDER,
193
+ TAG_REPLACEMENT,
194
+ TAG_EVENT,
195
+ LEGACY_TAGS.SEED_V1,
196
+ LEGACY_TAGS.EC_KEY_V1,
197
+ LEGACY_TAGS.SSKR_SHARE_V1,
198
+ TAG_SEED,
199
+ TAG_EC_KEY,
200
+ TAG_SSKR_SHARE,
201
+ TAG_X25519_PRIVATE_KEY,
202
+ TAG_X25519_PUBLIC_KEY,
203
+ TAG_ARID,
204
+ TAG_PRIVATE_KEYS,
205
+ TAG_NONCE,
206
+ TAG_PASSWORD,
207
+ TAG_PRIVATE_KEY_BASE,
208
+ TAG_PUBLIC_KEYS,
209
+ TAG_SALT,
210
+ TAG_SEALED_MESSAGE,
211
+ TAG_SIGNATURE,
212
+ TAG_SIGNING_PRIVATE_KEY,
213
+ TAG_SIGNING_PUBLIC_KEY,
214
+ TAG_SYMMETRIC_KEY,
215
+ TAG_XID,
216
+ TAG_REFERENCE,
217
+ TAG_ENCRYPTED_KEY,
218
+ TAG_MLKEM_PRIVATE_KEY,
219
+ TAG_MLKEM_PUBLIC_KEY,
220
+ TAG_MLKEM_CIPHERTEXT,
221
+ TAG_MLDSA_PRIVATE_KEY,
222
+ TAG_MLDSA_PUBLIC_KEY,
223
+ TAG_MLDSA_SIGNATURE,
224
+ LEGACY_TAGS.HDKEY_V1,
225
+ LEGACY_TAGS.DERIVATION_PATH_V1,
226
+ LEGACY_TAGS.USE_INFO_V1,
227
+ LEGACY_TAGS.OUTPUT_DESCRIPTOR_V1,
228
+ LEGACY_TAGS.PSBT_V1,
229
+ LEGACY_TAGS.ACCOUNT_V1,
230
+ TAG_HDKEY,
231
+ TAG_DERIVATION_PATH,
232
+ TAG_USE_INFO,
233
+ TAG_ADDRESS,
234
+ TAG_OUTPUT_DESCRIPTOR,
235
+ TAG_PSBT,
236
+ TAG_ACCOUNT_DESCRIPTOR,
237
+ TAG_SSH_TEXT_PRIVATE_KEY,
238
+ TAG_SSH_TEXT_PUBLIC_KEY,
239
+ TAG_SSH_TEXT_SIGNATURE,
240
+ TAG_SSH_TEXT_CERTIFICATE,
241
+ TAG_OUTPUT_SCRIPT_HASH,
242
+ TAG_OUTPUT_WITNESS_SCRIPT_HASH,
243
+ TAG_OUTPUT_PUBLIC_KEY,
244
+ TAG_OUTPUT_PUBLIC_KEY_HASH,
245
+ TAG_OUTPUT_WITNESS_PUBLIC_KEY_HASH,
246
+ TAG_OUTPUT_COMBO,
247
+ TAG_OUTPUT_MULTISIG,
248
+ TAG_OUTPUT_SORTED_MULTISIG,
249
+ TAG_OUTPUT_RAW_SCRIPT,
250
+ TAG_OUTPUT_TAPROOT,
251
+ TAG_OUTPUT_COSIGNER,
252
+ TAG_PROVENANCE_MARK
253
+ ]);
254
+ //#endregion
255
+ //#region src/register.ts
256
+ /**
257
+ * Registration into a dCBOR tags store.
258
+ *
259
+ * @module register
260
+ */
261
+ /**
262
+ * Register dcbor's standard tags and every tag in {@link ALL_TAGS} into
263
+ * `store` (default: the global store).
264
+ *
265
+ * Idempotent: the store compares names, so a value already registered under
266
+ * the same name is a no-op, which is what makes repeated calls safe.
267
+ *
268
+ * @param store - The store to register into; defaults to dcbor's global store.
269
+ * @throws {Error} dcbor's store throws a bare `Error` when a value is
270
+ * already registered under a *different* name
271
+ * (`Attempt to register tag: 200 'foo' with different name: 'envelope'`).
272
+ */
273
+ function registerTags(store = getGlobalTagsStore()) {
274
+ registerStandardTags(store);
275
+ store.registerAll([...ALL_TAGS]);
276
+ }
277
+ //#endregion
278
+ export { ALL_TAGS, LEGACY_TAGS, TAG_ACCOUNT_DESCRIPTOR, TAG_ADDRESS, TAG_ARID, TAG_COMPRESSED, TAG_DERIVATION_PATH, TAG_DIGEST, TAG_EC_KEY, TAG_ENCODED_CBOR, TAG_ENCRYPTED, TAG_ENCRYPTED_KEY, TAG_ENVELOPE, TAG_EVENT, TAG_FUNCTION, TAG_HDKEY, TAG_JSON, TAG_KNOWN_VALUE, TAG_LEAF, TAG_MLDSA_PRIVATE_KEY, TAG_MLDSA_PUBLIC_KEY, TAG_MLDSA_SIGNATURE, TAG_MLKEM_CIPHERTEXT, TAG_MLKEM_PRIVATE_KEY, TAG_MLKEM_PUBLIC_KEY, TAG_NONCE, TAG_OUTPUT_COMBO, TAG_OUTPUT_COSIGNER, TAG_OUTPUT_DESCRIPTOR, TAG_OUTPUT_MULTISIG, TAG_OUTPUT_PUBLIC_KEY, TAG_OUTPUT_PUBLIC_KEY_HASH, TAG_OUTPUT_RAW_SCRIPT, TAG_OUTPUT_SCRIPT_HASH, TAG_OUTPUT_SORTED_MULTISIG, TAG_OUTPUT_TAPROOT, TAG_OUTPUT_WITNESS_PUBLIC_KEY_HASH, TAG_OUTPUT_WITNESS_SCRIPT_HASH, TAG_PARAMETER, TAG_PASSWORD, TAG_PLACEHOLDER, TAG_PRIVATE_KEYS, TAG_PRIVATE_KEY_BASE, TAG_PROVENANCE_MARK, TAG_PSBT, TAG_PUBLIC_KEYS, TAG_REFERENCE, TAG_REPLACEMENT, TAG_REQUEST, TAG_RESPONSE, TAG_SALT, TAG_SEALED_MESSAGE, TAG_SEED, TAG_SIGNATURE, TAG_SIGNING_PRIVATE_KEY, TAG_SIGNING_PUBLIC_KEY, TAG_SSH_TEXT_CERTIFICATE, TAG_SSH_TEXT_PRIVATE_KEY, TAG_SSH_TEXT_PUBLIC_KEY, TAG_SSH_TEXT_SIGNATURE, TAG_SSKR_SHARE, TAG_SYMMETRIC_KEY, TAG_URI, TAG_USE_INFO, TAG_UUID, TAG_X25519_PRIVATE_KEY, TAG_X25519_PUBLIC_KEY, TAG_XID, registerTags };
279
+
280
+ //# sourceMappingURL=index.mjs.map