@heossi/qnsi 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/LICENSE.md +8 -0
  3. package/README.md +200 -0
  4. package/dist/_activation/activation-client.d.ts +65 -0
  5. package/dist/_activation/activation-client.d.ts.map +1 -0
  6. package/dist/_activation/activation-client.js +164 -0
  7. package/dist/_activation/activation-client.js.map +1 -0
  8. package/dist/_activation/index.d.ts +10 -0
  9. package/dist/_activation/index.d.ts.map +1 -0
  10. package/dist/_activation/index.js +10 -0
  11. package/dist/_activation/index.js.map +1 -0
  12. package/dist/_activation/types.d.ts +128 -0
  13. package/dist/_activation/types.d.ts.map +1 -0
  14. package/dist/_activation/types.js +94 -0
  15. package/dist/_activation/types.js.map +1 -0
  16. package/dist/_internal.d.ts +52 -0
  17. package/dist/_internal.d.ts.map +1 -0
  18. package/dist/_internal.js +235 -0
  19. package/dist/_internal.js.map +1 -0
  20. package/dist/access.d.ts +32 -0
  21. package/dist/access.d.ts.map +1 -0
  22. package/dist/access.js +33 -0
  23. package/dist/access.js.map +1 -0
  24. package/dist/ai.d.ts +51 -0
  25. package/dist/ai.d.ts.map +1 -0
  26. package/dist/ai.js +53 -0
  27. package/dist/ai.js.map +1 -0
  28. package/dist/audit.d.ts +18 -0
  29. package/dist/audit.d.ts.map +1 -0
  30. package/dist/audit.js +21 -0
  31. package/dist/audit.js.map +1 -0
  32. package/dist/auth.d.ts +31 -0
  33. package/dist/auth.d.ts.map +1 -0
  34. package/dist/auth.js +69 -0
  35. package/dist/auth.js.map +1 -0
  36. package/dist/autogen/executor.d.ts +200 -0
  37. package/dist/autogen/executor.d.ts.map +1 -0
  38. package/dist/autogen/executor.js +277 -0
  39. package/dist/autogen/executor.js.map +1 -0
  40. package/dist/autogen/index.d.ts +18 -0
  41. package/dist/autogen/index.d.ts.map +1 -0
  42. package/dist/autogen/index.js +17 -0
  43. package/dist/autogen/index.js.map +1 -0
  44. package/dist/billing.d.ts +22 -0
  45. package/dist/billing.d.ts.map +1 -0
  46. package/dist/billing.js +33 -0
  47. package/dist/billing.js.map +1 -0
  48. package/dist/browser/encrypt.d.ts +68 -0
  49. package/dist/browser/encrypt.d.ts.map +1 -0
  50. package/dist/browser/encrypt.js +191 -0
  51. package/dist/browser/encrypt.js.map +1 -0
  52. package/dist/browser/index.d.ts +39 -0
  53. package/dist/browser/index.d.ts.map +1 -0
  54. package/dist/browser/index.js +41 -0
  55. package/dist/browser/index.js.map +1 -0
  56. package/dist/browser/noble-provider.d.ts +10 -0
  57. package/dist/browser/noble-provider.d.ts.map +1 -0
  58. package/dist/browser/noble-provider.js +130 -0
  59. package/dist/browser/noble-provider.js.map +1 -0
  60. package/dist/browser/pqc-types.d.ts +40 -0
  61. package/dist/browser/pqc-types.d.ts.map +1 -0
  62. package/dist/browser/pqc-types.js +2 -0
  63. package/dist/browser/pqc-types.js.map +1 -0
  64. package/dist/browser/provider-setup.d.ts +70 -0
  65. package/dist/browser/provider-setup.d.ts.map +1 -0
  66. package/dist/browser/provider-setup.js +101 -0
  67. package/dist/browser/provider-setup.js.map +1 -0
  68. package/dist/browser/sdk-package-version.d.ts +12 -0
  69. package/dist/browser/sdk-package-version.d.ts.map +1 -0
  70. package/dist/browser/sdk-package-version.js +12 -0
  71. package/dist/browser/sdk-package-version.js.map +1 -0
  72. package/dist/browser/sign.d.ts +65 -0
  73. package/dist/browser/sign.d.ts.map +1 -0
  74. package/dist/browser/sign.js +124 -0
  75. package/dist/browser/sign.js.map +1 -0
  76. package/dist/browser/telemetry.d.ts +98 -0
  77. package/dist/browser/telemetry.d.ts.map +1 -0
  78. package/dist/browser/telemetry.js +93 -0
  79. package/dist/browser/telemetry.js.map +1 -0
  80. package/dist/cli/commands/access-control.d.ts +4 -0
  81. package/dist/cli/commands/access-control.d.ts.map +1 -0
  82. package/dist/cli/commands/access-control.js +183 -0
  83. package/dist/cli/commands/access-control.js.map +1 -0
  84. package/dist/cli/commands/audit.d.ts +4 -0
  85. package/dist/cli/commands/audit.d.ts.map +1 -0
  86. package/dist/cli/commands/audit.js +70 -0
  87. package/dist/cli/commands/audit.js.map +1 -0
  88. package/dist/cli/commands/auth.d.ts +4 -0
  89. package/dist/cli/commands/auth.d.ts.map +1 -0
  90. package/dist/cli/commands/auth.js +46 -0
  91. package/dist/cli/commands/auth.js.map +1 -0
  92. package/dist/cli/commands/billing.d.ts +4 -0
  93. package/dist/cli/commands/billing.d.ts.map +1 -0
  94. package/dist/cli/commands/billing.js +179 -0
  95. package/dist/cli/commands/billing.js.map +1 -0
  96. package/dist/cli/commands/crypto-policy.d.ts +4 -0
  97. package/dist/cli/commands/crypto-policy.d.ts.map +1 -0
  98. package/dist/cli/commands/crypto-policy.js +130 -0
  99. package/dist/cli/commands/crypto-policy.js.map +1 -0
  100. package/dist/cli/commands/kms.d.ts +4 -0
  101. package/dist/cli/commands/kms.d.ts.map +1 -0
  102. package/dist/cli/commands/kms.js +153 -0
  103. package/dist/cli/commands/kms.js.map +1 -0
  104. package/dist/cli/commands/observability.d.ts +4 -0
  105. package/dist/cli/commands/observability.d.ts.map +1 -0
  106. package/dist/cli/commands/observability.js +97 -0
  107. package/dist/cli/commands/observability.js.map +1 -0
  108. package/dist/cli/commands/search.d.ts +4 -0
  109. package/dist/cli/commands/search.d.ts.map +1 -0
  110. package/dist/cli/commands/search.js +66 -0
  111. package/dist/cli/commands/search.js.map +1 -0
  112. package/dist/cli/commands/security.d.ts +4 -0
  113. package/dist/cli/commands/security.d.ts.map +1 -0
  114. package/dist/cli/commands/security.js +136 -0
  115. package/dist/cli/commands/security.js.map +1 -0
  116. package/dist/cli/commands/storage.d.ts +4 -0
  117. package/dist/cli/commands/storage.d.ts.map +1 -0
  118. package/dist/cli/commands/storage.js +85 -0
  119. package/dist/cli/commands/storage.js.map +1 -0
  120. package/dist/cli/commands/tenant.d.ts +4 -0
  121. package/dist/cli/commands/tenant.d.ts.map +1 -0
  122. package/dist/cli/commands/tenant.js +82 -0
  123. package/dist/cli/commands/tenant.js.map +1 -0
  124. package/dist/cli/commands/test-utils.d.ts +15 -0
  125. package/dist/cli/commands/test-utils.d.ts.map +1 -0
  126. package/dist/cli/commands/test-utils.js +72 -0
  127. package/dist/cli/commands/test-utils.js.map +1 -0
  128. package/dist/cli/commands/vault.d.ts +4 -0
  129. package/dist/cli/commands/vault.d.ts.map +1 -0
  130. package/dist/cli/commands/vault.js +111 -0
  131. package/dist/cli/commands/vault.js.map +1 -0
  132. package/dist/cli/config.d.ts +32 -0
  133. package/dist/cli/config.d.ts.map +1 -0
  134. package/dist/cli/config.js +105 -0
  135. package/dist/cli/config.js.map +1 -0
  136. package/dist/cli/index.d.ts +3 -0
  137. package/dist/cli/index.d.ts.map +1 -0
  138. package/dist/cli/index.js +54 -0
  139. package/dist/cli/index.js.map +1 -0
  140. package/dist/cli/utils/audit-logger.d.ts +17 -0
  141. package/dist/cli/utils/audit-logger.d.ts.map +1 -0
  142. package/dist/cli/utils/audit-logger.js +52 -0
  143. package/dist/cli/utils/audit-logger.js.map +1 -0
  144. package/dist/cli/utils/auth.d.ts +4 -0
  145. package/dist/cli/utils/auth.d.ts.map +1 -0
  146. package/dist/cli/utils/auth.js +100 -0
  147. package/dist/cli/utils/auth.js.map +1 -0
  148. package/dist/cli/utils/backend-validator.d.ts +19 -0
  149. package/dist/cli/utils/backend-validator.d.ts.map +1 -0
  150. package/dist/cli/utils/backend-validator.js +72 -0
  151. package/dist/cli/utils/backend-validator.js.map +1 -0
  152. package/dist/cli/utils/command-config.d.ts +4 -0
  153. package/dist/cli/utils/command-config.d.ts.map +1 -0
  154. package/dist/cli/utils/command-config.js +29 -0
  155. package/dist/cli/utils/command-config.js.map +1 -0
  156. package/dist/cli/utils/fetcher.d.ts +3 -0
  157. package/dist/cli/utils/fetcher.d.ts.map +1 -0
  158. package/dist/cli/utils/fetcher.js +30 -0
  159. package/dist/cli/utils/fetcher.js.map +1 -0
  160. package/dist/cli/utils/https-validator.d.ts +9 -0
  161. package/dist/cli/utils/https-validator.d.ts.map +1 -0
  162. package/dist/cli/utils/https-validator.js +35 -0
  163. package/dist/cli/utils/https-validator.js.map +1 -0
  164. package/dist/cli/utils/output.d.ts +6 -0
  165. package/dist/cli/utils/output.d.ts.map +1 -0
  166. package/dist/cli/utils/output.js +29 -0
  167. package/dist/cli/utils/output.js.map +1 -0
  168. package/dist/cli/utils/pqc-validator.d.ts +17 -0
  169. package/dist/cli/utils/pqc-validator.d.ts.map +1 -0
  170. package/dist/cli/utils/pqc-validator.js +62 -0
  171. package/dist/cli/utils/pqc-validator.js.map +1 -0
  172. package/dist/cli/utils/prompt.d.ts +4 -0
  173. package/dist/cli/utils/prompt.d.ts.map +1 -0
  174. package/dist/cli/utils/prompt.js +30 -0
  175. package/dist/cli/utils/prompt.js.map +1 -0
  176. package/dist/cli/utils/rate-limiter.d.ts +15 -0
  177. package/dist/cli/utils/rate-limiter.d.ts.map +1 -0
  178. package/dist/cli/utils/rate-limiter.js +46 -0
  179. package/dist/cli/utils/rate-limiter.js.map +1 -0
  180. package/dist/cli/utils/sanitize.d.ts +3 -0
  181. package/dist/cli/utils/sanitize.d.ts.map +1 -0
  182. package/dist/cli/utils/sanitize.js +44 -0
  183. package/dist/cli/utils/sanitize.js.map +1 -0
  184. package/dist/cli/utils/security-headers.d.ts +18 -0
  185. package/dist/cli/utils/security-headers.d.ts.map +1 -0
  186. package/dist/cli/utils/security-headers.js +32 -0
  187. package/dist/cli/utils/security-headers.js.map +1 -0
  188. package/dist/cli/utils/token-cache.d.ts +4 -0
  189. package/dist/cli/utils/token-cache.d.ts.map +1 -0
  190. package/dist/cli/utils/token-cache.js +22 -0
  191. package/dist/cli/utils/token-cache.js.map +1 -0
  192. package/dist/client.d.ts +52 -0
  193. package/dist/client.d.ts.map +1 -0
  194. package/dist/client.js +78 -0
  195. package/dist/client.js.map +1 -0
  196. package/dist/crypto-inventory.d.ts +21 -0
  197. package/dist/crypto-inventory.d.ts.map +1 -0
  198. package/dist/crypto-inventory.js +28 -0
  199. package/dist/crypto-inventory.js.map +1 -0
  200. package/dist/errors.d.ts +35 -0
  201. package/dist/errors.d.ts.map +1 -0
  202. package/dist/errors.js +64 -0
  203. package/dist/errors.js.map +1 -0
  204. package/dist/index.d.ts +50 -0
  205. package/dist/index.d.ts.map +1 -0
  206. package/dist/index.js +51 -0
  207. package/dist/index.js.map +1 -0
  208. package/dist/kms.d.ts +30 -0
  209. package/dist/kms.d.ts.map +1 -0
  210. package/dist/kms.js +92 -0
  211. package/dist/kms.js.map +1 -0
  212. package/dist/langchain/index.d.ts +22 -0
  213. package/dist/langchain/index.d.ts.map +1 -0
  214. package/dist/langchain/index.js +23 -0
  215. package/dist/langchain/index.js.map +1 -0
  216. package/dist/langchain/toolkit.d.ts +85 -0
  217. package/dist/langchain/toolkit.d.ts.map +1 -0
  218. package/dist/langchain/toolkit.js +146 -0
  219. package/dist/langchain/toolkit.js.map +1 -0
  220. package/dist/langchain/tools/audit.d.ts +43 -0
  221. package/dist/langchain/tools/audit.d.ts.map +1 -0
  222. package/dist/langchain/tools/audit.js +78 -0
  223. package/dist/langchain/tools/audit.js.map +1 -0
  224. package/dist/langchain/tools/kms.d.ts +62 -0
  225. package/dist/langchain/tools/kms.d.ts.map +1 -0
  226. package/dist/langchain/tools/kms.js +120 -0
  227. package/dist/langchain/tools/kms.js.map +1 -0
  228. package/dist/langchain/tools/vault.d.ts +69 -0
  229. package/dist/langchain/tools/vault.d.ts.map +1 -0
  230. package/dist/langchain/tools/vault.js +107 -0
  231. package/dist/langchain/tools/vault.js.map +1 -0
  232. package/dist/langchain/vault-client.d.ts +82 -0
  233. package/dist/langchain/vault-client.d.ts.map +1 -0
  234. package/dist/langchain/vault-client.js +133 -0
  235. package/dist/langchain/vault-client.js.map +1 -0
  236. package/dist/llamaindex/index.d.ts +16 -0
  237. package/dist/llamaindex/index.d.ts.map +1 -0
  238. package/dist/llamaindex/index.js +15 -0
  239. package/dist/llamaindex/index.js.map +1 -0
  240. package/dist/llamaindex/sse.d.ts +36 -0
  241. package/dist/llamaindex/sse.d.ts.map +1 -0
  242. package/dist/llamaindex/sse.js +151 -0
  243. package/dist/llamaindex/sse.js.map +1 -0
  244. package/dist/llamaindex/vector-store.d.ts +101 -0
  245. package/dist/llamaindex/vector-store.d.ts.map +1 -0
  246. package/dist/llamaindex/vector-store.js +348 -0
  247. package/dist/llamaindex/vector-store.js.map +1 -0
  248. package/dist/search.d.ts +32 -0
  249. package/dist/search.d.ts.map +1 -0
  250. package/dist/search.js +27 -0
  251. package/dist/search.js.map +1 -0
  252. package/dist/storage.d.ts +32 -0
  253. package/dist/storage.d.ts.map +1 -0
  254. package/dist/storage.js +58 -0
  255. package/dist/storage.js.map +1 -0
  256. package/dist/tenant.d.ts +25 -0
  257. package/dist/tenant.d.ts.map +1 -0
  258. package/dist/tenant.js +36 -0
  259. package/dist/tenant.js.map +1 -0
  260. package/dist/vault.d.ts +22 -0
  261. package/dist/vault.d.ts.map +1 -0
  262. package/dist/vault.js +43 -0
  263. package/dist/vault.js.map +1 -0
  264. package/dist/webhooks.d.ts +32 -0
  265. package/dist/webhooks.d.ts.map +1 -0
  266. package/dist/webhooks.js +77 -0
  267. package/dist/webhooks.js.map +1 -0
  268. package/package.json +118 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encrypt.js","sourceRoot":"","sources":["../../src/browser/encrypt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * `@heossi/qnsi/browser` — browser-compatible PQC encryption subpath.
3
+ *
4
+ * Client-side encryption (CSE), digital signatures, and key management
5
+ * using NIST FIPS 203/204/205 standards via @noble/post-quantum.
6
+ *
7
+ * No native dependencies. No `node:` imports. Works in browsers, Deno,
8
+ * Bun, and Node.js. Folded in from the former standalone
9
+ * `@heossi/qnsi-browser` package (2026-05-16) so there is one install.
10
+ *
11
+ * Supported algorithms:
12
+ * - ML-KEM (FIPS 203): kyber-512, kyber-768, kyber-1024 — key encapsulation
13
+ * - ML-DSA (FIPS 204): dilithium-2, dilithium-3, dilithium-5 — digital signatures
14
+ * - SLH-DSA (FIPS 205): 12 parameter sets — hash-based signatures
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * import {
19
+ * initializePqcProvider,
20
+ * encryptBeforeUpload,
21
+ * decryptAfterDownload,
22
+ * } from "@heossi/qnsi/browser";
23
+ *
24
+ * await initializePqcProvider();
25
+ * const { publicKey, privateKey } = await generateEncryptionKeyPair("kyber-768");
26
+ * const envelope = await encryptBeforeUpload(plaintext, publicKey, "kyber-768");
27
+ * const decrypted = await decryptAfterDownload(envelope, privateKey);
28
+ * ```
29
+ *
30
+ * @module
31
+ */
32
+ export type { SdkActivationConfig, SdkActivationLimits, SdkActivationResponse, SdkIdentifier, } from "../_activation/index.js";
33
+ export { SdkActivationError_ } from "../_activation/index.js";
34
+ export { type CseEnvelope, decryptAfterDownload, deserializeCseEnvelope, encryptBeforeUpload, serializeCseEnvelope, } from "./encrypt.js";
35
+ export type { PqcAlgorithm, PqcKeyPair, PqcProvider } from "./pqc-types.js";
36
+ export { detectRuntime, getActiveProvider, getLastActivation, getSupportedAlgorithms, type InitializePqcProviderOptions, initializePqcProvider, isProviderInitialized, NOBLE_SUPPORTED_ALGORITHMS, type RuntimeEnvironment, resetProvider, } from "./provider-setup.js";
37
+ export { generateEncryptionKeyPair, generateSigningKeyPair, type SignedEnvelope, signData, verifySignature, } from "./sign.js";
38
+ export { type BrowserSdkTelemetryConfig, type BrowserSdkTelemetryEvent, configureTelemetry, flushTelemetry, getTelemetryConfig, isTelemetryEnabled, recordTelemetryEvent, resetTelemetry, } from "./telemetry.js";
39
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAIH,YAAY,EACX,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,GACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EACN,KAAK,WAAW,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,GACpB,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE5E,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,4BAA4B,EACjC,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,aAAa,GACb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACN,yBAAyB,EACzB,sBAAsB,EACtB,KAAK,cAAc,EACnB,QAAQ,EACR,eAAe,GACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EACN,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,GACd,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * `@heossi/qnsi/browser` — browser-compatible PQC encryption subpath.
3
+ *
4
+ * Client-side encryption (CSE), digital signatures, and key management
5
+ * using NIST FIPS 203/204/205 standards via @noble/post-quantum.
6
+ *
7
+ * No native dependencies. No `node:` imports. Works in browsers, Deno,
8
+ * Bun, and Node.js. Folded in from the former standalone
9
+ * `@heossi/qnsi-browser` package (2026-05-16) so there is one install.
10
+ *
11
+ * Supported algorithms:
12
+ * - ML-KEM (FIPS 203): kyber-512, kyber-768, kyber-1024 — key encapsulation
13
+ * - ML-DSA (FIPS 204): dilithium-2, dilithium-3, dilithium-5 — digital signatures
14
+ * - SLH-DSA (FIPS 205): 12 parameter sets — hash-based signatures
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * import {
19
+ * initializePqcProvider,
20
+ * encryptBeforeUpload,
21
+ * decryptAfterDownload,
22
+ * } from "@heossi/qnsi/browser";
23
+ *
24
+ * await initializePqcProvider();
25
+ * const { publicKey, privateKey } = await generateEncryptionKeyPair("kyber-768");
26
+ * const envelope = await encryptBeforeUpload(plaintext, publicKey, "kyber-768");
27
+ * const decrypted = await decryptAfterDownload(envelope, privateKey);
28
+ * ```
29
+ *
30
+ * @module
31
+ */
32
+ export { SdkActivationError_ } from "../_activation/index.js";
33
+ // Client-side encryption (CSE) helpers
34
+ export { decryptAfterDownload, deserializeCseEnvelope, encryptBeforeUpload, serializeCseEnvelope, } from "./encrypt.js";
35
+ // Provider setup and auto-detection
36
+ export { detectRuntime, getActiveProvider, getLastActivation, getSupportedAlgorithms, initializePqcProvider, isProviderInitialized, NOBLE_SUPPORTED_ALGORITHMS, resetProvider, } from "./provider-setup.js";
37
+ // Digital signature helpers
38
+ export { generateEncryptionKeyPair, generateSigningKeyPair, signData, verifySignature, } from "./sign.js";
39
+ // Telemetry hooks (opt-in, no PII)
40
+ export { configureTelemetry, flushTelemetry, getTelemetryConfig, isTelemetryEnabled, recordTelemetryEvent, resetTelemetry, } from "./telemetry.js";
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAUH,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,uCAAuC;AACvC,OAAO,EAEN,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,GACpB,MAAM,cAAc,CAAC;AAGtB,oCAAoC;AACpC,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EAEtB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAE1B,aAAa,GACb,MAAM,qBAAqB,CAAC;AAC7B,4BAA4B;AAC5B,OAAO,EACN,yBAAyB,EACzB,sBAAsB,EAEtB,QAAQ,EACR,eAAe,GACf,MAAM,WAAW,CAAC;AACnB,mCAAmC;AACnC,OAAO,EAGN,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,GACd,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { PqcAlgorithm, PqcProvider } from "./pqc-types.js";
2
+ export declare const NOBLE_SUPPORTED_ALGORITHMS: readonly PqcAlgorithm[];
3
+ export declare function createNobleProvider(options?: {
4
+ readonly algorithms?: readonly PqcAlgorithm[];
5
+ }): PqcProvider;
6
+ export declare function createNobleProviderFactory(): (options?: {
7
+ readonly algorithms?: readonly PqcAlgorithm[];
8
+ }) => Promise<PqcProvider>;
9
+ export declare function registerNobleProvider(): void;
10
+ //# sourceMappingURL=noble-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noble-provider.d.ts","sourceRoot":"","sources":["../../src/browser/noble-provider.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,YAAY,EAAc,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE5E,eAAO,MAAM,0BAA0B,EAAE,SAAS,YAAY,EAmB7D,CAAC;AA6CF,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE;IAC7C,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC9C,GAAG,WAAW,CAoEd;AAED,wBAAgB,0BAA0B,KAC3B,UAAU;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC9C,KAAG,OAAO,CAAC,WAAW,CAAC,CAGxB;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
@@ -0,0 +1,130 @@
1
+ import { ml_dsa44, ml_dsa65, ml_dsa87 } from "@noble/post-quantum/ml-dsa.js";
2
+ import { ml_kem512, ml_kem768, ml_kem1024 } from "@noble/post-quantum/ml-kem.js";
3
+ import { slh_dsa_sha2_128f, slh_dsa_sha2_128s, slh_dsa_sha2_192f, slh_dsa_sha2_192s, slh_dsa_sha2_256f, slh_dsa_sha2_256s, slh_dsa_shake_128f, slh_dsa_shake_128s, slh_dsa_shake_192f, slh_dsa_shake_192s, slh_dsa_shake_256f, slh_dsa_shake_256s, } from "@noble/post-quantum/slh-dsa.js";
4
+ export const NOBLE_SUPPORTED_ALGORITHMS = [
5
+ "kyber-512",
6
+ "kyber-768",
7
+ "kyber-1024",
8
+ "dilithium-2",
9
+ "dilithium-3",
10
+ "dilithium-5",
11
+ "sphincs-sha2-128f-simple",
12
+ "sphincs-sha2-128s-simple",
13
+ "sphincs-sha2-192f-simple",
14
+ "sphincs-sha2-192s-simple",
15
+ "sphincs-sha2-256f-simple",
16
+ "sphincs-sha2-256s-simple",
17
+ "sphincs-shake-128f-simple",
18
+ "sphincs-shake-128s-simple",
19
+ "sphincs-shake-192f-simple",
20
+ "sphincs-shake-192s-simple",
21
+ "sphincs-shake-256f-simple",
22
+ "sphincs-shake-256s-simple",
23
+ ];
24
+ const KEM_BY_ALG = {
25
+ "kyber-512": ml_kem512,
26
+ "kyber-768": ml_kem768,
27
+ "kyber-1024": ml_kem1024,
28
+ };
29
+ const SIGNER_BY_ALG = {
30
+ "dilithium-2": ml_dsa44,
31
+ "dilithium-3": ml_dsa65,
32
+ "dilithium-5": ml_dsa87,
33
+ "sphincs-sha2-128f-simple": slh_dsa_sha2_128f,
34
+ "sphincs-sha2-128s-simple": slh_dsa_sha2_128s,
35
+ "sphincs-sha2-192f-simple": slh_dsa_sha2_192f,
36
+ "sphincs-sha2-192s-simple": slh_dsa_sha2_192s,
37
+ "sphincs-sha2-256f-simple": slh_dsa_sha2_256f,
38
+ "sphincs-sha2-256s-simple": slh_dsa_sha2_256s,
39
+ "sphincs-shake-128f-simple": slh_dsa_shake_128f,
40
+ "sphincs-shake-128s-simple": slh_dsa_shake_128s,
41
+ "sphincs-shake-192f-simple": slh_dsa_shake_192f,
42
+ "sphincs-shake-192s-simple": slh_dsa_shake_192s,
43
+ "sphincs-shake-256f-simple": slh_dsa_shake_256f,
44
+ "sphincs-shake-256s-simple": slh_dsa_shake_256s,
45
+ };
46
+ function assertSupportedAlgorithm(algorithm, enabled) {
47
+ if (!enabled.has(algorithm)) {
48
+ throw new Error(`Algorithm '${algorithm}' is not enabled in this provider instance. Enabled: ${[...enabled].join(", ")}`);
49
+ }
50
+ }
51
+ function getKem(algorithm) {
52
+ return KEM_BY_ALG[algorithm];
53
+ }
54
+ function getSigner(algorithm) {
55
+ return SIGNER_BY_ALG[algorithm];
56
+ }
57
+ export function createNobleProvider(options) {
58
+ const enabled = new Set(options?.algorithms ?? NOBLE_SUPPORTED_ALGORITHMS);
59
+ return {
60
+ name: "noble",
61
+ async generateKeyPair({ algorithm }) {
62
+ assertSupportedAlgorithm(algorithm, enabled);
63
+ const kem = getKem(algorithm);
64
+ if (kem) {
65
+ const kp = kem.keygen();
66
+ return {
67
+ keyPair: {
68
+ algorithm,
69
+ publicKey: kp.publicKey,
70
+ privateKey: kp.secretKey,
71
+ },
72
+ };
73
+ }
74
+ const signer = getSigner(algorithm);
75
+ if (!signer) {
76
+ throw new Error(`Unsupported algorithm '${algorithm}'`);
77
+ }
78
+ const kp = signer.keygen();
79
+ return {
80
+ keyPair: {
81
+ algorithm,
82
+ publicKey: kp.publicKey,
83
+ privateKey: kp.secretKey,
84
+ },
85
+ };
86
+ },
87
+ async encapsulate({ algorithm, publicKey, }) {
88
+ assertSupportedAlgorithm(algorithm, enabled);
89
+ const kem = getKem(algorithm);
90
+ if (!kem) {
91
+ throw new Error(`Algorithm '${algorithm}' is not a KEM algorithm`);
92
+ }
93
+ const { cipherText, sharedSecret } = kem.encapsulate(publicKey);
94
+ return { ciphertext: cipherText, sharedSecret };
95
+ },
96
+ async decapsulate({ algorithm, ciphertext, privateKey }) {
97
+ assertSupportedAlgorithm(algorithm, enabled);
98
+ const kem = getKem(algorithm);
99
+ if (!kem) {
100
+ throw new Error(`Algorithm '${algorithm}' is not a KEM algorithm`);
101
+ }
102
+ return kem.decapsulate(ciphertext, privateKey);
103
+ },
104
+ async sign({ algorithm, data, privateKey }) {
105
+ assertSupportedAlgorithm(algorithm, enabled);
106
+ const signer = getSigner(algorithm);
107
+ if (!signer) {
108
+ throw new Error(`Algorithm '${algorithm}' is not a signature algorithm`);
109
+ }
110
+ return { signature: signer.sign(data, privateKey) };
111
+ },
112
+ async verify({ algorithm, data, signature, publicKey }) {
113
+ assertSupportedAlgorithm(algorithm, enabled);
114
+ const signer = getSigner(algorithm);
115
+ if (!signer) {
116
+ throw new Error(`Algorithm '${algorithm}' is not a signature algorithm`);
117
+ }
118
+ return signer.verify(signature, data, publicKey);
119
+ },
120
+ };
121
+ }
122
+ export function createNobleProviderFactory() {
123
+ return async (options) => {
124
+ return createNobleProvider(options);
125
+ };
126
+ }
127
+ export function registerNobleProvider() {
128
+ // no-op; kept for backwards compatibility
129
+ }
130
+ //# sourceMappingURL=noble-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noble-provider.js","sourceRoot":"","sources":["../../src/browser/noble-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ export type PqcAlgorithm = "kyber-512" | "kyber-768" | "kyber-1024" | "dilithium-2" | "dilithium-3" | "dilithium-5" | "sphincs-sha2-128f-simple" | "sphincs-sha2-128s-simple" | "sphincs-sha2-192f-simple" | "sphincs-sha2-192s-simple" | "sphincs-sha2-256f-simple" | "sphincs-sha2-256s-simple" | "sphincs-shake-128f-simple" | "sphincs-shake-128s-simple" | "sphincs-shake-192f-simple" | "sphincs-shake-192s-simple" | "sphincs-shake-256f-simple" | "sphincs-shake-256s-simple";
2
+ export interface PqcKeyPair {
3
+ readonly algorithm: PqcAlgorithm;
4
+ readonly publicKey: Uint8Array;
5
+ readonly privateKey: Uint8Array;
6
+ }
7
+ export interface PqcProvider {
8
+ readonly name: string;
9
+ generateKeyPair(input: {
10
+ readonly algorithm: PqcAlgorithm;
11
+ }): Promise<{
12
+ readonly keyPair: PqcKeyPair;
13
+ }>;
14
+ encapsulate(input: {
15
+ readonly algorithm: PqcAlgorithm;
16
+ readonly publicKey: Uint8Array;
17
+ }): Promise<{
18
+ readonly ciphertext: Uint8Array;
19
+ readonly sharedSecret: Uint8Array;
20
+ }>;
21
+ decapsulate(input: {
22
+ readonly algorithm: PqcAlgorithm;
23
+ readonly ciphertext: Uint8Array;
24
+ readonly privateKey: Uint8Array;
25
+ }): Promise<Uint8Array>;
26
+ sign(input: {
27
+ readonly algorithm: PqcAlgorithm;
28
+ readonly data: Uint8Array;
29
+ readonly privateKey: Uint8Array;
30
+ }): Promise<{
31
+ readonly signature: Uint8Array;
32
+ }>;
33
+ verify(input: {
34
+ readonly algorithm: PqcAlgorithm;
35
+ readonly data: Uint8Array;
36
+ readonly signature: Uint8Array;
37
+ readonly publicKey: Uint8Array;
38
+ }): Promise<boolean>;
39
+ }
40
+ //# sourceMappingURL=pqc-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pqc-types.d.ts","sourceRoot":"","sources":["../../src/browser/pqc-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACrB,WAAW,GACX,WAAW,GACX,YAAY,GACZ,aAAa,GACb,aAAa,GACb,aAAa,GACb,0BAA0B,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B,2BAA2B,GAC3B,2BAA2B,GAC3B,2BAA2B,GAC3B,2BAA2B,GAC3B,2BAA2B,GAC3B,2BAA2B,CAAC;AAE/B,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,KAAK,EAAE;QACtB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;KACjC,GAAG,OAAO,CAAC;QAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IAC9C,WAAW,CAAC,KAAK,EAAE;QAClB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;QACjC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;KAC/B,GAAG,OAAO,CAAC;QAAE,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;QAAC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACpF,WAAW,CAAC,KAAK,EAAE;QAClB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;QACjC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;QAChC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;KAChC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxB,IAAI,CAAC,KAAK,EAAE;QACX,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;QACjC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;QAC1B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;KAChC,GAAG,OAAO,CAAC;QAAE,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IAChD,MAAM,CAAC,KAAK,EAAE;QACb,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;QACjC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;QAC1B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;QAC/B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;KAC/B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pqc-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pqc-types.js","sourceRoot":"","sources":["../../src/browser/pqc-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Provider auto-detection and registration for browser-sdk.
3
+ *
4
+ * In browser environments, uses a noble-backed provider (pure JS, 18 FIPS algorithms).
5
+ * In Node.js environments, uses the same noble-backed provider for deterministic behavior.
6
+ *
7
+ * @module
8
+ */
9
+ import { type SdkActivationResponse } from "../_activation/index.js";
10
+ import { createNobleProviderFactory, NOBLE_SUPPORTED_ALGORITHMS } from "./noble-provider.js";
11
+ import type { PqcAlgorithm, PqcProvider } from "./pqc-types.js";
12
+ /** Runtime environment detection result. */
13
+ export type RuntimeEnvironment = "browser" | "node" | "edge";
14
+ /** Options for initializing the PQC provider. */
15
+ export interface InitializePqcProviderOptions {
16
+ /** QNSP API key — required. Get one at https://cloud.qnsp.cuilabs.io/signup */
17
+ readonly apiKey: string;
18
+ /** Optional subset of algorithms to enable. Defaults to all noble-supported. */
19
+ readonly algorithms?: readonly PqcAlgorithm[] | undefined;
20
+ /** Override platform URL (defaults to https://api.qnsp.cuilabs.io) */
21
+ readonly platformUrl?: string | undefined;
22
+ }
23
+ /**
24
+ * Detect the current runtime environment.
25
+ *
26
+ * - "browser": window/document available (standard browser)
27
+ * - "edge": no window but no process.versions.node (Cloudflare Workers, Deno Deploy, Vercel Edge)
28
+ * - "node": process.versions.node available (Node.js, Bun with node compat)
29
+ */
30
+ export declare function detectRuntime(): RuntimeEnvironment;
31
+ /**
32
+ * Initialize the PQC provider for the current runtime.
33
+ *
34
+ * Requires a valid QNSP API key. The SDK activates against the QNSP platform
35
+ * to validate the key and retrieve tier limits before enabling PQC operations.
36
+ *
37
+ * In browser/edge: always uses noble (pure JS, no native deps).
38
+ * In Node.js: uses noble for deterministic behavior.
39
+ *
40
+ * @param options - Configuration including apiKey (required) and optional algorithm subset.
41
+ * @returns The initialized PqcProvider instance.
42
+ * @throws {SdkActivationError_} if the API key is invalid or activation fails.
43
+ */
44
+ export declare function initializePqcProvider(options: InitializePqcProviderOptions): Promise<PqcProvider>;
45
+ /**
46
+ * Get the last SDK activation response (tier, limits, token).
47
+ * Returns null if not yet activated.
48
+ */
49
+ export declare function getLastActivation(): SdkActivationResponse | null;
50
+ /**
51
+ * Get the currently active PQC provider.
52
+ * Throws if initializePqcProvider() has not been called.
53
+ */
54
+ export declare function getActiveProvider(): PqcProvider;
55
+ /**
56
+ * Check if the PQC provider has been initialized.
57
+ */
58
+ export declare function isProviderInitialized(): boolean;
59
+ /**
60
+ * Reset the provider state. Primarily for testing.
61
+ */
62
+ export declare function resetProvider(): void;
63
+ /**
64
+ * Get the list of algorithms supported in the current environment.
65
+ * In browser/edge: noble's 18 FIPS algorithms.
66
+ * In Node.js: noble's 18 FIPS algorithms.
67
+ */
68
+ export declare function getSupportedAlgorithms(): readonly PqcAlgorithm[];
69
+ export { createNobleProviderFactory, NOBLE_SUPPORTED_ALGORITHMS };
70
+ //# sourceMappingURL=provider-setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-setup.d.ts","sourceRoot":"","sources":["../../src/browser/provider-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAe,KAAK,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAEN,0BAA0B,EAC1B,0BAA0B,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGhE,4CAA4C;AAC5C,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7D,iDAAiD;AACjD,MAAM,WAAW,4BAA4B;IAC5C,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,gFAAgF;IAChF,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;IAC1D,sEAAsE;IACtE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,kBAAkB,CASlD;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,4BAA4B,GACnC,OAAO,CAAC,WAAW,CAAC,CAoBtB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,qBAAqB,GAAG,IAAI,CAEhE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAK/C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAGpC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,SAAS,YAAY,EAAE,CAEhE;AAED,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,CAAC"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Provider auto-detection and registration for browser-sdk.
3
+ *
4
+ * In browser environments, uses a noble-backed provider (pure JS, 18 FIPS algorithms).
5
+ * In Node.js environments, uses the same noble-backed provider for deterministic behavior.
6
+ *
7
+ * @module
8
+ */
9
+ import { activateSdk } from "../_activation/index.js";
10
+ import { createNobleProvider, createNobleProviderFactory, NOBLE_SUPPORTED_ALGORITHMS, } from "./noble-provider.js";
11
+ import { SDK_PACKAGE_VERSION } from "./sdk-package-version.js";
12
+ /**
13
+ * Detect the current runtime environment.
14
+ *
15
+ * - "browser": window/document available (standard browser)
16
+ * - "edge": no window but no process.versions.node (Cloudflare Workers, Deno Deploy, Vercel Edge)
17
+ * - "node": process.versions.node available (Node.js, Bun with node compat)
18
+ */
19
+ export function detectRuntime() {
20
+ if (typeof globalThis.process !== "undefined" && globalThis.process.versions?.node) {
21
+ return "node";
22
+ }
23
+ // Use string-based property check to avoid needing DOM lib types
24
+ if ("window" in globalThis && "document" in globalThis) {
25
+ return "browser";
26
+ }
27
+ return "edge";
28
+ }
29
+ let initialized = false;
30
+ let activeProvider = null;
31
+ let lastActivation = null;
32
+ /**
33
+ * Initialize the PQC provider for the current runtime.
34
+ *
35
+ * Requires a valid QNSP API key. The SDK activates against the QNSP platform
36
+ * to validate the key and retrieve tier limits before enabling PQC operations.
37
+ *
38
+ * In browser/edge: always uses noble (pure JS, no native deps).
39
+ * In Node.js: uses noble for deterministic behavior.
40
+ *
41
+ * @param options - Configuration including apiKey (required) and optional algorithm subset.
42
+ * @returns The initialized PqcProvider instance.
43
+ * @throws {SdkActivationError_} if the API key is invalid or activation fails.
44
+ */
45
+ export async function initializePqcProvider(options) {
46
+ if (activeProvider) {
47
+ return activeProvider;
48
+ }
49
+ // Activate SDK against QNSP platform — validates API key, returns tier limits
50
+ const activation = await activateSdk({
51
+ apiKey: options.apiKey,
52
+ sdkId: "browser-sdk",
53
+ sdkVersion: SDK_PACKAGE_VERSION,
54
+ platformUrl: options.platformUrl,
55
+ });
56
+ lastActivation = activation;
57
+ const provider = createNobleProvider(options.algorithms ? { algorithms: options.algorithms } : undefined);
58
+ activeProvider = provider;
59
+ initialized = true;
60
+ return provider;
61
+ }
62
+ /**
63
+ * Get the last SDK activation response (tier, limits, token).
64
+ * Returns null if not yet activated.
65
+ */
66
+ export function getLastActivation() {
67
+ return lastActivation;
68
+ }
69
+ /**
70
+ * Get the currently active PQC provider.
71
+ * Throws if initializePqcProvider() has not been called.
72
+ */
73
+ export function getActiveProvider() {
74
+ if (!activeProvider) {
75
+ throw new Error("PQC provider not initialized. Call initializePqcProvider() first.");
76
+ }
77
+ return activeProvider;
78
+ }
79
+ /**
80
+ * Check if the PQC provider has been initialized.
81
+ */
82
+ export function isProviderInitialized() {
83
+ return initialized;
84
+ }
85
+ /**
86
+ * Reset the provider state. Primarily for testing.
87
+ */
88
+ export function resetProvider() {
89
+ activeProvider = null;
90
+ initialized = false;
91
+ }
92
+ /**
93
+ * Get the list of algorithms supported in the current environment.
94
+ * In browser/edge: noble's 18 FIPS algorithms.
95
+ * In Node.js: noble's 18 FIPS algorithms.
96
+ */
97
+ export function getSupportedAlgorithms() {
98
+ return NOBLE_SUPPORTED_ALGORITHMS;
99
+ }
100
+ export { createNobleProviderFactory, NOBLE_SUPPORTED_ALGORITHMS };
101
+ //# sourceMappingURL=provider-setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-setup.js","sourceRoot":"","sources":["../../src/browser/provider-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAA8B,MAAM,yBAAyB,CAAC;AAClF,OAAO,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAe/D;;;;;;GAMG;AACH,MAAM,UAAU,aAAa;IAC5B,IAAI,OAAO,UAAU,CAAC,OAAO,KAAK,WAAW,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;QACpF,OAAO,MAAM,CAAC;IACf,CAAC;IACD,iEAAiE;IACjE,IAAI,QAAQ,IAAI,UAAU,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,IAAI,cAAc,GAAuB,IAAI,CAAC;AAC9C,IAAI,cAAc,GAAiC,IAAI,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,OAAqC;IAErC,IAAI,cAAc,EAAE,CAAC;QACpB,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,8EAA8E;IAC9E,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC;QACpC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,aAAa;QACpB,UAAU,EAAE,mBAAmB;QAC/B,WAAW,EAAE,OAAO,CAAC,WAAW;KAChC,CAAC,CAAC;IACH,cAAc,GAAG,UAAU,CAAC;IAE5B,MAAM,QAAQ,GAAG,mBAAmB,CACnC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CACnE,CAAC;IACF,cAAc,GAAG,QAAQ,CAAC;IAC1B,WAAW,GAAG,IAAI,CAAC;IACnB,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAChC,OAAO,cAAc,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAChC,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,cAAc,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACpC,OAAO,WAAW,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC5B,cAAc,GAAG,IAAI,CAAC;IACtB,WAAW,GAAG,KAAK,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACrC,OAAO,0BAA0B,CAAC;AACnC,CAAC;AAED,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Published semver — used for SDK activation metering (must match the npm
3
+ * publish version of `@heossi/qnsi`).
4
+ *
5
+ * Kept as a literal (not a `../package.json` JSON import) because this module
6
+ * must stay browser-safe — no `node:fs` runtime read — and a static JSON
7
+ * import would resolve outside the package `rootDir` (TS6059). This mirrors
8
+ * the same release-bump contract as `SDK_VERSION` in `../_internal.ts`:
9
+ * **bump this in lockstep with `packages/qnsp/package.json` `version`.**
10
+ */
11
+ export declare const SDK_PACKAGE_VERSION = "0.3.0";
12
+ //# sourceMappingURL=sdk-package-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-package-version.d.ts","sourceRoot":"","sources":["../../src/browser/sdk-package-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,UAAU,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Published semver — used for SDK activation metering (must match the npm
3
+ * publish version of `@heossi/qnsi`).
4
+ *
5
+ * Kept as a literal (not a `../package.json` JSON import) because this module
6
+ * must stay browser-safe — no `node:fs` runtime read — and a static JSON
7
+ * import would resolve outside the package `rootDir` (TS6059). This mirrors
8
+ * the same release-bump contract as `SDK_VERSION` in `../_internal.ts`:
9
+ * **bump this in lockstep with `packages/qnsp/package.json` `version`.**
10
+ */
11
+ export const SDK_PACKAGE_VERSION = "0.3.0";
12
+ //# sourceMappingURL=sdk-package-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-package-version.js","sourceRoot":"","sources":["../../src/browser/sdk-package-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * PQC digital signature helpers for browser-side operations.
3
+ *
4
+ * Supports:
5
+ * - ML-DSA (FIPS 204): dilithium-2, dilithium-3, dilithium-5
6
+ * - SLH-DSA (FIPS 205): all 12 parameter sets (SHA-2 and SHAKE variants)
7
+ *
8
+ * No node: imports. Works in browsers, Deno, Bun, and Node.js 20+.
9
+ *
10
+ * @module
11
+ */
12
+ import type { PqcAlgorithm } from "./pqc-types.js";
13
+ /**
14
+ * Signed data envelope containing the signature and metadata.
15
+ */
16
+ export interface SignedEnvelope {
17
+ /** PQC algorithm used for signing. */
18
+ readonly algorithm: PqcAlgorithm;
19
+ /** The digital signature bytes. */
20
+ readonly signature: Uint8Array;
21
+ /** The original data that was signed. */
22
+ readonly data: Uint8Array;
23
+ }
24
+ /**
25
+ * Sign data using a PQC signature algorithm.
26
+ *
27
+ * @param data - Data to sign
28
+ * @param privateKey - Signer's PQC private key
29
+ * @param algorithm - Signature algorithm (ML-DSA or SLH-DSA)
30
+ * @returns Signed envelope containing signature + original data
31
+ */
32
+ export declare function signData(data: Uint8Array, privateKey: Uint8Array, algorithm: PqcAlgorithm): Promise<SignedEnvelope>;
33
+ /**
34
+ * Verify a PQC digital signature.
35
+ *
36
+ * @param data - Original data that was signed
37
+ * @param signature - The signature to verify
38
+ * @param publicKey - Signer's PQC public key
39
+ * @param algorithm - Signature algorithm used
40
+ * @returns true if the signature is valid, false otherwise
41
+ */
42
+ export declare function verifySignature(data: Uint8Array, signature: Uint8Array, publicKey: Uint8Array, algorithm: PqcAlgorithm): Promise<boolean>;
43
+ /**
44
+ * Generate a PQC key pair for signing operations.
45
+ *
46
+ * @param algorithm - Signature algorithm (ML-DSA or SLH-DSA)
47
+ * @returns Key pair with public and private keys
48
+ */
49
+ export declare function generateSigningKeyPair(algorithm: PqcAlgorithm): Promise<{
50
+ readonly publicKey: Uint8Array;
51
+ readonly privateKey: Uint8Array;
52
+ readonly algorithm: PqcAlgorithm;
53
+ }>;
54
+ /**
55
+ * Generate a PQC key pair for KEM (encryption) operations.
56
+ *
57
+ * @param algorithm - KEM algorithm (kyber-512, kyber-768, kyber-1024)
58
+ * @returns Key pair with public and private keys
59
+ */
60
+ export declare function generateEncryptionKeyPair(algorithm: PqcAlgorithm): Promise<{
61
+ readonly publicKey: Uint8Array;
62
+ readonly privateKey: Uint8Array;
63
+ readonly algorithm: PqcAlgorithm;
64
+ }>;
65
+ //# sourceMappingURL=sign.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/browser/sign.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAsBnD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,sCAAsC;IACtC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,mCAAmC;IACnC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC7B,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,YAAY,GACrB,OAAO,CAAC,cAAc,CAAC,CA6BzB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,YAAY,GACrB,OAAO,CAAC,OAAO,CAAC,CA4BlB;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC;IAC9E,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;CACjC,CAAC,CAWD;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC;IACjF,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;CACjC,CAAC,CAYD"}