internxt-crypto 0.0.10-alpha → 0.0.11

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 (148) hide show
  1. package/README.md +3 -4
  2. package/dist/asymmetric-crypto-BORmLhnx.js +143 -0
  3. package/dist/asymmetric-crypto-BORmLhnx.js.map +1 -0
  4. package/dist/asymmetric-crypto-CyXsV4XT.mjs +102 -0
  5. package/dist/asymmetric-crypto-CyXsV4XT.mjs.map +1 -0
  6. package/dist/asymmetric-crypto.d.mts +9 -3
  7. package/dist/asymmetric-crypto.d.ts +9 -3
  8. package/dist/asymmetric-crypto.js +8 -92
  9. package/dist/asymmetric-crypto.mjs +2 -84
  10. package/dist/chunk-DWirmd9C.mjs +18 -0
  11. package/dist/chunk-Dt-PWiN7.js +60 -0
  12. package/dist/constants-Ccp21E03.js +208 -0
  13. package/dist/constants-Ccp21E03.js.map +1 -0
  14. package/dist/constants-kTeX-2T0.mjs +34 -0
  15. package/dist/constants-kTeX-2T0.mjs.map +1 -0
  16. package/dist/constants.d.mts +5 -11
  17. package/dist/constants.d.ts +5 -11
  18. package/dist/constants.js +30 -79
  19. package/dist/constants.mjs +2 -41
  20. package/dist/derive-key-Be7hS-cN.mjs +751 -0
  21. package/dist/derive-key-Be7hS-cN.mjs.map +1 -0
  22. package/dist/derive-key-CBf2WxJd.js +2513 -0
  23. package/dist/derive-key-CBf2WxJd.js.map +1 -0
  24. package/dist/derive-key.d.mts +14 -8
  25. package/dist/derive-key.d.ts +14 -8
  26. package/dist/derive-key.js +15 -795
  27. package/dist/derive-key.mjs +5 -783
  28. package/dist/email-crypto-BrT98taw.js +617 -0
  29. package/dist/email-crypto-BrT98taw.js.map +1 -0
  30. package/dist/email-crypto-DJUEjTxA.mjs +534 -0
  31. package/dist/email-crypto-DJUEjTxA.mjs.map +1 -0
  32. package/dist/email-crypto.d.mts +58 -78
  33. package/dist/email-crypto.d.ts +58 -78
  34. package/dist/email-crypto.js +17 -1409
  35. package/dist/email-crypto.mjs +8 -1381
  36. package/dist/email-search.d.mts +39 -32
  37. package/dist/email-search.d.ts +39 -32
  38. package/dist/email-search.js +572 -540
  39. package/dist/email-search.js.map +1 -1
  40. package/dist/email-search.mjs +567 -539
  41. package/dist/email-search.mjs.map +1 -1
  42. package/dist/hash-BoqwNkcd.js +190 -0
  43. package/dist/hash-BoqwNkcd.js.map +1 -0
  44. package/dist/hash-CXeGAwai.mjs +131 -0
  45. package/dist/hash-CXeGAwai.mjs.map +1 -0
  46. package/dist/hash.d.mts +21 -15
  47. package/dist/hash.d.ts +21 -15
  48. package/dist/hash.js +11 -95
  49. package/dist/hash.mjs +2 -84
  50. package/dist/index-CQqgKsbX.d.ts +50 -0
  51. package/dist/index-CintVUbp.d.ts +97 -0
  52. package/dist/index-D5pBU_A5.d.mts +50 -0
  53. package/dist/index-MaOov-ag.d.mts +97 -0
  54. package/dist/index.d.mts +35 -18
  55. package/dist/index.d.ts +35 -18
  56. package/dist/index.js +103 -2685
  57. package/dist/index.mjs +15 -2538
  58. package/dist/keystore-crypto-B4yCVo9l.js +182 -0
  59. package/dist/keystore-crypto-B4yCVo9l.js.map +1 -0
  60. package/dist/keystore-crypto-Bjgriq9h.mjs +159 -0
  61. package/dist/keystore-crypto-Bjgriq9h.mjs.map +1 -0
  62. package/dist/keystore-crypto.d.mts +20 -46
  63. package/dist/keystore-crypto.d.ts +20 -46
  64. package/dist/keystore-crypto.js +11 -530
  65. package/dist/keystore-crypto.mjs +9 -501
  66. package/dist/keystore-service.d.mts +44 -78
  67. package/dist/keystore-service.d.ts +44 -78
  68. package/dist/keystore-service.js +113 -340
  69. package/dist/keystore-service.js.map +1 -1
  70. package/dist/keystore-service.mjs +107 -335
  71. package/dist/keystore-service.mjs.map +1 -1
  72. package/dist/post-quantum-crypto-CAi-cEkV.js +189 -0
  73. package/dist/post-quantum-crypto-CAi-cEkV.js.map +1 -0
  74. package/dist/post-quantum-crypto-Vv34t6gX.mjs +154 -0
  75. package/dist/post-quantum-crypto-Vv34t6gX.mjs.map +1 -0
  76. package/dist/post-quantum-crypto.d.mts +2 -72
  77. package/dist/post-quantum-crypto.d.ts +2 -72
  78. package/dist/post-quantum-crypto.js +13 -92
  79. package/dist/post-quantum-crypto.mjs +2 -89
  80. package/dist/storage-service-BgIK2aYZ.js +82 -0
  81. package/dist/storage-service-BgIK2aYZ.js.map +1 -0
  82. package/dist/storage-service-CubCbhY2.mjs +65 -0
  83. package/dist/storage-service-CubCbhY2.mjs.map +1 -0
  84. package/dist/storage-service.d.mts +2 -53
  85. package/dist/storage-service.d.ts +2 -53
  86. package/dist/storage-service.js +12 -68
  87. package/dist/storage-service.mjs +2 -66
  88. package/dist/symmetric-crypto-CrdS1Che.mjs +197 -0
  89. package/dist/symmetric-crypto-CrdS1Che.mjs.map +1 -0
  90. package/dist/symmetric-crypto-D65zB396.js +244 -0
  91. package/dist/symmetric-crypto-D65zB396.js.map +1 -0
  92. package/dist/symmetric-crypto.d.mts +12 -8
  93. package/dist/symmetric-crypto.d.ts +12 -8
  94. package/dist/symmetric-crypto.js +10 -142
  95. package/dist/symmetric-crypto.mjs +3 -133
  96. package/dist/types-52g887Zi.js +16 -0
  97. package/dist/types-52g887Zi.js.map +1 -0
  98. package/dist/types-BiEoleqw.mjs +10 -0
  99. package/dist/types-BiEoleqw.mjs.map +1 -0
  100. package/dist/types-Ds3ivE9W.d.ts +104 -0
  101. package/dist/types-DwQJtrTx.d.mts +104 -0
  102. package/dist/types.d.mts +2 -102
  103. package/dist/types.d.ts +2 -102
  104. package/dist/types.js +2 -13
  105. package/dist/types.mjs +2 -11
  106. package/dist/utils-CNs3cyDj.js +263 -0
  107. package/dist/utils-CNs3cyDj.js.map +1 -0
  108. package/dist/utils-DS04iUcX.mjs +173 -0
  109. package/dist/utils-DS04iUcX.mjs.map +1 -0
  110. package/dist/utils.d.mts +37 -78
  111. package/dist/utils.d.ts +37 -78
  112. package/dist/utils.js +16 -313
  113. package/dist/utils.mjs +2 -272
  114. package/package.json +15 -90
  115. package/dist/asymmetric-crypto.js.map +0 -1
  116. package/dist/asymmetric-crypto.mjs.map +0 -1
  117. package/dist/constants.js.map +0 -1
  118. package/dist/constants.mjs.map +0 -1
  119. package/dist/derive-key.js.map +0 -1
  120. package/dist/derive-key.mjs.map +0 -1
  121. package/dist/email-crypto.js.map +0 -1
  122. package/dist/email-crypto.mjs.map +0 -1
  123. package/dist/email-service.d.mts +0 -38
  124. package/dist/email-service.d.ts +0 -38
  125. package/dist/email-service.js +0 -154
  126. package/dist/email-service.js.map +0 -1
  127. package/dist/email-service.mjs +0 -147
  128. package/dist/email-service.mjs.map +0 -1
  129. package/dist/hash.js.map +0 -1
  130. package/dist/hash.mjs.map +0 -1
  131. package/dist/index.js.map +0 -1
  132. package/dist/index.mjs.map +0 -1
  133. package/dist/keystore-crypto.js.map +0 -1
  134. package/dist/keystore-crypto.mjs.map +0 -1
  135. package/dist/kyber768-B87rMQ7u.d.mts +0 -30
  136. package/dist/kyber768-B87rMQ7u.d.ts +0 -30
  137. package/dist/post-quantum-crypto.js.map +0 -1
  138. package/dist/post-quantum-crypto.mjs.map +0 -1
  139. package/dist/storage-service.js.map +0 -1
  140. package/dist/storage-service.mjs.map +0 -1
  141. package/dist/symmetric-crypto.js.map +0 -1
  142. package/dist/symmetric-crypto.mjs.map +0 -1
  143. package/dist/types.js.map +0 -1
  144. package/dist/types.mjs.map +0 -1
  145. package/dist/utils-BDaK_d6T.d.ts +0 -114
  146. package/dist/utils-v34IRTIx.d.mts +0 -114
  147. package/dist/utils.js.map +0 -1
  148. package/dist/utils.mjs.map +0 -1
@@ -1,142 +1,10 @@
1
- 'use strict';
2
-
3
- var blake3_js = require('@noble/hashes/blake3.js');
4
- var utils_js = require('@noble/hashes/utils.js');
5
- var utils_js$1 = require('@noble/post-quantum/utils.js');
6
-
7
- // src/constants.ts
8
- var AES_ALGORITHM = "AES-GCM";
9
- var AES_KEY_BIT_LENGTH = 256;
10
- var AUX_LEN = 128;
11
- var IV_LEN_BYTES = 16;
12
- var KEY_FORMAT = "raw";
13
- function getBytesFromString(bytes, value) {
14
- return blake3_js.blake3(utils_js.utf8ToBytes(value), { dkLen: bytes });
15
- }
16
-
17
- // src/symmetric-crypto/keys.ts
18
- async function importSymmetricCryptoKey(keyData) {
19
- return crypto.subtle.importKey(
20
- KEY_FORMAT,
21
- new Uint8Array(keyData),
22
- {
23
- name: AES_ALGORITHM,
24
- length: AES_KEY_BIT_LENGTH
25
- },
26
- true,
27
- ["encrypt", "decrypt"]
28
- );
29
- }
30
- async function exportSymmetricCryptoKey(key) {
31
- try {
32
- const rawKey = await crypto.subtle.exportKey(KEY_FORMAT, key);
33
- return new Uint8Array(rawKey);
34
- } catch (error) {
35
- throw new Error("Failed to export symmetric CryptoKey", { cause: error });
36
- }
37
- }
38
- async function genSymmetricCryptoKey() {
39
- return crypto.subtle.generateKey(
40
- {
41
- name: AES_ALGORITHM,
42
- length: AES_KEY_BIT_LENGTH
43
- },
44
- true,
45
- ["encrypt", "decrypt"]
46
- );
47
- }
48
- function genSymmetricKey() {
49
- try {
50
- const key = new Uint8Array(AES_KEY_BIT_LENGTH / 8);
51
- crypto.getRandomValues(key);
52
- return key;
53
- } catch (error) {
54
- throw new Error("Failed to generate symmetric key", { cause: error });
55
- }
56
- }
57
- async function deriveSymmetricCryptoKey(keyMaterial) {
58
- try {
59
- const hashBuffer = await getBytesFromString(AES_KEY_BIT_LENGTH / 8, keyMaterial);
60
- return importSymmetricCryptoKey(hashBuffer);
61
- } catch (error) {
62
- throw new Error("Failed to derive CryptoKey from the given key material", { cause: error });
63
- }
64
- }
65
- async function createNISTbasedIV(freeField) {
66
- try {
67
- if (!freeField) {
68
- return utils_js$1.randomBytes(IV_LEN_BYTES);
69
- }
70
- const iv = new Uint8Array(16);
71
- const randFiled = utils_js$1.randomBytes(12);
72
- iv.set(randFiled, 0);
73
- const freeFiledFixedLength = await getBytesFromString(4, freeField);
74
- iv.set(freeFiledFixedLength, 12);
75
- return iv;
76
- } catch (error) {
77
- throw new Error("Failed to create IV", { cause: error });
78
- }
79
- }
80
- async function makeAuxFixedLength(aux) {
81
- return getBytesFromString(AUX_LEN / 8, aux);
82
- }
83
- async function encryptMessage(message, encryptionKey, iv, additionalData) {
84
- try {
85
- const encrypted = await crypto.subtle.encrypt(
86
- { name: AES_ALGORITHM, iv, additionalData },
87
- encryptionKey,
88
- message
89
- );
90
- return new Uint8Array(encrypted);
91
- } catch (error) {
92
- throw new Error("Failed to encrypt symmetrically", { cause: error });
93
- }
94
- }
95
- async function decryptMessage(ciphertext, iv, encryptionKey, additionalData) {
96
- try {
97
- const decrypted = await crypto.subtle.decrypt(
98
- { name: AES_ALGORITHM, iv, additionalData },
99
- encryptionKey,
100
- ciphertext
101
- );
102
- return new Uint8Array(decrypted);
103
- } catch (error) {
104
- throw new Error("Failed to decrypt symmetrically", { cause: error });
105
- }
106
- }
107
-
108
- // src/symmetric-crypto/aes.ts
109
- async function encryptSymmetrically(encryptionKey, message, aux, freeField) {
110
- try {
111
- const iv = await createNISTbasedIV(freeField);
112
- const additionalData = await makeAuxFixedLength(aux);
113
- const ciphertext = await encryptMessage(message, encryptionKey, iv, additionalData);
114
- return { ciphertext, iv };
115
- } catch (error) {
116
- throw new Error("Failed to encrypt symmetrically", { cause: error });
117
- }
118
- }
119
- async function decryptSymmetrically(encryptionKey, encryptedMessage, aux) {
120
- try {
121
- const additionalData = await makeAuxFixedLength(aux);
122
- const result = await decryptMessage(
123
- encryptedMessage.ciphertext,
124
- encryptedMessage.iv,
125
- encryptionKey,
126
- additionalData
127
- );
128
- return result;
129
- } catch (error) {
130
- throw new Error("Failed to decrypt symmetrically", { cause: error });
131
- }
132
- }
133
-
134
- exports.decryptSymmetrically = decryptSymmetrically;
135
- exports.deriveSymmetricCryptoKey = deriveSymmetricCryptoKey;
136
- exports.encryptSymmetrically = encryptSymmetrically;
137
- exports.exportSymmetricCryptoKey = exportSymmetricCryptoKey;
138
- exports.genSymmetricCryptoKey = genSymmetricCryptoKey;
139
- exports.genSymmetricKey = genSymmetricKey;
140
- exports.importSymmetricCryptoKey = importSymmetricCryptoKey;
141
- //# sourceMappingURL=symmetric-crypto.js.map
142
- //# sourceMappingURL=symmetric-crypto.js.map
1
+ require('./hash-BoqwNkcd.js');
2
+ const require_symmetric_crypto = require('./symmetric-crypto-D65zB396.js');
3
+
4
+ exports.decryptSymmetrically = require_symmetric_crypto.decryptSymmetrically;
5
+ exports.deriveSymmetricCryptoKey = require_symmetric_crypto.deriveSymmetricCryptoKey;
6
+ exports.encryptSymmetrically = require_symmetric_crypto.encryptSymmetrically;
7
+ exports.exportSymmetricCryptoKey = require_symmetric_crypto.exportSymmetricCryptoKey;
8
+ exports.genSymmetricCryptoKey = require_symmetric_crypto.genSymmetricCryptoKey;
9
+ exports.genSymmetricKey = require_symmetric_crypto.genSymmetricKey;
10
+ exports.importSymmetricCryptoKey = require_symmetric_crypto.importSymmetricCryptoKey;
@@ -1,134 +1,4 @@
1
- import { blake3 } from '@noble/hashes/blake3.js';
2
- import { utf8ToBytes } from '@noble/hashes/utils.js';
3
- import { randomBytes } from '@noble/post-quantum/utils.js';
1
+ import "./hash-CXeGAwai.mjs";
2
+ import { a as exportSymmetricCryptoKey, c as importSymmetricCryptoKey, i as deriveSymmetricCryptoKey, n as decryptSymmetrically, o as genSymmetricCryptoKey, r as encryptSymmetrically, s as genSymmetricKey } from "./symmetric-crypto-CrdS1Che.mjs";
4
3
 
5
- // src/constants.ts
6
- var AES_ALGORITHM = "AES-GCM";
7
- var AES_KEY_BIT_LENGTH = 256;
8
- var AUX_LEN = 128;
9
- var IV_LEN_BYTES = 16;
10
- var KEY_FORMAT = "raw";
11
- function getBytesFromString(bytes, value) {
12
- return blake3(utf8ToBytes(value), { dkLen: bytes });
13
- }
14
-
15
- // src/symmetric-crypto/keys.ts
16
- async function importSymmetricCryptoKey(keyData) {
17
- return crypto.subtle.importKey(
18
- KEY_FORMAT,
19
- new Uint8Array(keyData),
20
- {
21
- name: AES_ALGORITHM,
22
- length: AES_KEY_BIT_LENGTH
23
- },
24
- true,
25
- ["encrypt", "decrypt"]
26
- );
27
- }
28
- async function exportSymmetricCryptoKey(key) {
29
- try {
30
- const rawKey = await crypto.subtle.exportKey(KEY_FORMAT, key);
31
- return new Uint8Array(rawKey);
32
- } catch (error) {
33
- throw new Error("Failed to export symmetric CryptoKey", { cause: error });
34
- }
35
- }
36
- async function genSymmetricCryptoKey() {
37
- return crypto.subtle.generateKey(
38
- {
39
- name: AES_ALGORITHM,
40
- length: AES_KEY_BIT_LENGTH
41
- },
42
- true,
43
- ["encrypt", "decrypt"]
44
- );
45
- }
46
- function genSymmetricKey() {
47
- try {
48
- const key = new Uint8Array(AES_KEY_BIT_LENGTH / 8);
49
- crypto.getRandomValues(key);
50
- return key;
51
- } catch (error) {
52
- throw new Error("Failed to generate symmetric key", { cause: error });
53
- }
54
- }
55
- async function deriveSymmetricCryptoKey(keyMaterial) {
56
- try {
57
- const hashBuffer = await getBytesFromString(AES_KEY_BIT_LENGTH / 8, keyMaterial);
58
- return importSymmetricCryptoKey(hashBuffer);
59
- } catch (error) {
60
- throw new Error("Failed to derive CryptoKey from the given key material", { cause: error });
61
- }
62
- }
63
- async function createNISTbasedIV(freeField) {
64
- try {
65
- if (!freeField) {
66
- return randomBytes(IV_LEN_BYTES);
67
- }
68
- const iv = new Uint8Array(16);
69
- const randFiled = randomBytes(12);
70
- iv.set(randFiled, 0);
71
- const freeFiledFixedLength = await getBytesFromString(4, freeField);
72
- iv.set(freeFiledFixedLength, 12);
73
- return iv;
74
- } catch (error) {
75
- throw new Error("Failed to create IV", { cause: error });
76
- }
77
- }
78
- async function makeAuxFixedLength(aux) {
79
- return getBytesFromString(AUX_LEN / 8, aux);
80
- }
81
- async function encryptMessage(message, encryptionKey, iv, additionalData) {
82
- try {
83
- const encrypted = await crypto.subtle.encrypt(
84
- { name: AES_ALGORITHM, iv, additionalData },
85
- encryptionKey,
86
- message
87
- );
88
- return new Uint8Array(encrypted);
89
- } catch (error) {
90
- throw new Error("Failed to encrypt symmetrically", { cause: error });
91
- }
92
- }
93
- async function decryptMessage(ciphertext, iv, encryptionKey, additionalData) {
94
- try {
95
- const decrypted = await crypto.subtle.decrypt(
96
- { name: AES_ALGORITHM, iv, additionalData },
97
- encryptionKey,
98
- ciphertext
99
- );
100
- return new Uint8Array(decrypted);
101
- } catch (error) {
102
- throw new Error("Failed to decrypt symmetrically", { cause: error });
103
- }
104
- }
105
-
106
- // src/symmetric-crypto/aes.ts
107
- async function encryptSymmetrically(encryptionKey, message, aux, freeField) {
108
- try {
109
- const iv = await createNISTbasedIV(freeField);
110
- const additionalData = await makeAuxFixedLength(aux);
111
- const ciphertext = await encryptMessage(message, encryptionKey, iv, additionalData);
112
- return { ciphertext, iv };
113
- } catch (error) {
114
- throw new Error("Failed to encrypt symmetrically", { cause: error });
115
- }
116
- }
117
- async function decryptSymmetrically(encryptionKey, encryptedMessage, aux) {
118
- try {
119
- const additionalData = await makeAuxFixedLength(aux);
120
- const result = await decryptMessage(
121
- encryptedMessage.ciphertext,
122
- encryptedMessage.iv,
123
- encryptionKey,
124
- additionalData
125
- );
126
- return result;
127
- } catch (error) {
128
- throw new Error("Failed to decrypt symmetrically", { cause: error });
129
- }
130
- }
131
-
132
- export { decryptSymmetrically, deriveSymmetricCryptoKey, encryptSymmetrically, exportSymmetricCryptoKey, genSymmetricCryptoKey, genSymmetricKey, importSymmetricCryptoKey };
133
- //# sourceMappingURL=symmetric-crypto.mjs.map
134
- //# sourceMappingURL=symmetric-crypto.mjs.map
4
+ export { decryptSymmetrically, deriveSymmetricCryptoKey, encryptSymmetrically, exportSymmetricCryptoKey, genSymmetricCryptoKey, genSymmetricKey, importSymmetricCryptoKey };
@@ -0,0 +1,16 @@
1
+
2
+ //#region src/types.ts
3
+ let KeystoreType = /* @__PURE__ */ function(KeystoreType) {
4
+ KeystoreType["ENCRYPTION"] = "Encryption";
5
+ KeystoreType["RECOVERY"] = "Recovery";
6
+ return KeystoreType;
7
+ }({});
8
+
9
+ //#endregion
10
+ Object.defineProperty(exports, 'KeystoreType', {
11
+ enumerable: true,
12
+ get: function () {
13
+ return KeystoreType;
14
+ }
15
+ });
16
+ //# sourceMappingURL=types-52g887Zi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-52g887Zi.js","names":[],"sources":["../src/types.ts"],"sourcesContent":["export type EncryptedKeystore = {\n userEmail: string;\n type: KeystoreType;\n encryptedKeys: EmailKeysEncrypted;\n};\n\nexport type User = {\n email: string;\n name: string;\n};\n\nexport type UserWithPublicKeys = User & {\n publicKeys: PublicKeys;\n};\n\nexport type PublicKeys = {\n eccPublicKey: CryptoKey;\n kyberPublicKey: Uint8Array;\n};\n\nexport type PublicKeysBase64 = {\n eccPublicKeyBase64: string;\n kyberPublicKeyBase64: string;\n};\n\nexport type PrivateKeys = {\n eccPrivateKey: CryptoKey;\n kyberPrivateKey: Uint8Array;\n};\n\nexport type PrivateKeysEncrypted = {\n eccPrivateKeyBase64: string;\n kyberPrivateKeyBase64: string;\n};\n\nexport type EmailKeys = {\n publicKeys: PublicKeys;\n privateKeys: PrivateKeys;\n};\n\nexport type EmailKeysEncrypted = {\n publicKeys: PublicKeysBase64;\n privateKeys: PrivateKeysEncrypted;\n};\n\nexport type HybridEncryptedEmail = {\n encryptedKey: HybridEncKey;\n enc: EmailBodyEncrypted;\n recipientEmail: string;\n params: EmailPublicParameters;\n id: string;\n isSubjectEncrypted: boolean;\n};\n\nexport type PwdProtectedEmail = {\n encryptedKey: PwdProtectedKey;\n enc: EmailBodyEncrypted;\n params: EmailPublicParameters;\n id: string;\n isSubjectEncrypted: boolean;\n};\n\nexport type StoredEmail = {\n params: EmailPublicParameters;\n enc: EmailBodyEncrypted;\n id: string;\n};\n\nexport type HybridEncKey = {\n kyberCiphertext: string;\n encryptedKey: string;\n};\n\nexport type PwdProtectedKey = {\n encryptedKey: string;\n salt: string;\n};\n\nexport type EmailBodyEncrypted = {\n encText: string;\n encAttachments?: string[];\n};\n\nexport type EmailBody = {\n text: string;\n attachments?: string[];\n};\n\nexport type EmailPublicParameters = {\n subject: string;\n createdAt: string;\n sender: User;\n recipient: User;\n recipients?: User[];\n replyToEmailID?: string;\n labels?: string[];\n};\n\nexport type Email = {\n id: string;\n body: EmailBody;\n params: EmailPublicParameters;\n};\n\nexport interface MailCache<Email> {\n esCache: Map<string, Email>;\n cacheSize: number;\n isCacheLimited: boolean;\n isCacheReady: boolean;\n}\nexport interface EmailSearchResult {\n email: Email;\n score?: number;\n}\n\nexport enum KeystoreType {\n ENCRYPTION = 'Encryption',\n RECOVERY = 'Recovery',\n}\n"],"mappings":";;AAmHA,IAAY,sDAAL;AACL;AACA"}
@@ -0,0 +1,10 @@
1
+ //#region src/types.ts
2
+ let KeystoreType = /* @__PURE__ */ function(KeystoreType) {
3
+ KeystoreType["ENCRYPTION"] = "Encryption";
4
+ KeystoreType["RECOVERY"] = "Recovery";
5
+ return KeystoreType;
6
+ }({});
7
+
8
+ //#endregion
9
+ export { KeystoreType as t };
10
+ //# sourceMappingURL=types-BiEoleqw.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-BiEoleqw.mjs","names":[],"sources":["../src/types.ts"],"sourcesContent":["export type EncryptedKeystore = {\n userEmail: string;\n type: KeystoreType;\n encryptedKeys: EmailKeysEncrypted;\n};\n\nexport type User = {\n email: string;\n name: string;\n};\n\nexport type UserWithPublicKeys = User & {\n publicKeys: PublicKeys;\n};\n\nexport type PublicKeys = {\n eccPublicKey: CryptoKey;\n kyberPublicKey: Uint8Array;\n};\n\nexport type PublicKeysBase64 = {\n eccPublicKeyBase64: string;\n kyberPublicKeyBase64: string;\n};\n\nexport type PrivateKeys = {\n eccPrivateKey: CryptoKey;\n kyberPrivateKey: Uint8Array;\n};\n\nexport type PrivateKeysEncrypted = {\n eccPrivateKeyBase64: string;\n kyberPrivateKeyBase64: string;\n};\n\nexport type EmailKeys = {\n publicKeys: PublicKeys;\n privateKeys: PrivateKeys;\n};\n\nexport type EmailKeysEncrypted = {\n publicKeys: PublicKeysBase64;\n privateKeys: PrivateKeysEncrypted;\n};\n\nexport type HybridEncryptedEmail = {\n encryptedKey: HybridEncKey;\n enc: EmailBodyEncrypted;\n recipientEmail: string;\n params: EmailPublicParameters;\n id: string;\n isSubjectEncrypted: boolean;\n};\n\nexport type PwdProtectedEmail = {\n encryptedKey: PwdProtectedKey;\n enc: EmailBodyEncrypted;\n params: EmailPublicParameters;\n id: string;\n isSubjectEncrypted: boolean;\n};\n\nexport type StoredEmail = {\n params: EmailPublicParameters;\n enc: EmailBodyEncrypted;\n id: string;\n};\n\nexport type HybridEncKey = {\n kyberCiphertext: string;\n encryptedKey: string;\n};\n\nexport type PwdProtectedKey = {\n encryptedKey: string;\n salt: string;\n};\n\nexport type EmailBodyEncrypted = {\n encText: string;\n encAttachments?: string[];\n};\n\nexport type EmailBody = {\n text: string;\n attachments?: string[];\n};\n\nexport type EmailPublicParameters = {\n subject: string;\n createdAt: string;\n sender: User;\n recipient: User;\n recipients?: User[];\n replyToEmailID?: string;\n labels?: string[];\n};\n\nexport type Email = {\n id: string;\n body: EmailBody;\n params: EmailPublicParameters;\n};\n\nexport interface MailCache<Email> {\n esCache: Map<string, Email>;\n cacheSize: number;\n isCacheLimited: boolean;\n isCacheReady: boolean;\n}\nexport interface EmailSearchResult {\n email: Email;\n score?: number;\n}\n\nexport enum KeystoreType {\n ENCRYPTION = 'Encryption',\n RECOVERY = 'Recovery',\n}\n"],"mappings":";AAmHA,IAAY,sDAAL;AACL;AACA"}
@@ -0,0 +1,104 @@
1
+ //#region src/types.d.ts
2
+ type EncryptedKeystore = {
3
+ userEmail: string;
4
+ type: KeystoreType;
5
+ encryptedKeys: EmailKeysEncrypted;
6
+ };
7
+ type User = {
8
+ email: string;
9
+ name: string;
10
+ };
11
+ type UserWithPublicKeys = User & {
12
+ publicKeys: PublicKeys;
13
+ };
14
+ type PublicKeys = {
15
+ eccPublicKey: CryptoKey;
16
+ kyberPublicKey: Uint8Array;
17
+ };
18
+ type PublicKeysBase64 = {
19
+ eccPublicKeyBase64: string;
20
+ kyberPublicKeyBase64: string;
21
+ };
22
+ type PrivateKeys = {
23
+ eccPrivateKey: CryptoKey;
24
+ kyberPrivateKey: Uint8Array;
25
+ };
26
+ type PrivateKeysEncrypted = {
27
+ eccPrivateKeyBase64: string;
28
+ kyberPrivateKeyBase64: string;
29
+ };
30
+ type EmailKeys = {
31
+ publicKeys: PublicKeys;
32
+ privateKeys: PrivateKeys;
33
+ };
34
+ type EmailKeysEncrypted = {
35
+ publicKeys: PublicKeysBase64;
36
+ privateKeys: PrivateKeysEncrypted;
37
+ };
38
+ type HybridEncryptedEmail = {
39
+ encryptedKey: HybridEncKey;
40
+ enc: EmailBodyEncrypted;
41
+ recipientEmail: string;
42
+ params: EmailPublicParameters;
43
+ id: string;
44
+ isSubjectEncrypted: boolean;
45
+ };
46
+ type PwdProtectedEmail = {
47
+ encryptedKey: PwdProtectedKey;
48
+ enc: EmailBodyEncrypted;
49
+ params: EmailPublicParameters;
50
+ id: string;
51
+ isSubjectEncrypted: boolean;
52
+ };
53
+ type StoredEmail = {
54
+ params: EmailPublicParameters;
55
+ enc: EmailBodyEncrypted;
56
+ id: string;
57
+ };
58
+ type HybridEncKey = {
59
+ kyberCiphertext: string;
60
+ encryptedKey: string;
61
+ };
62
+ type PwdProtectedKey = {
63
+ encryptedKey: string;
64
+ salt: string;
65
+ };
66
+ type EmailBodyEncrypted = {
67
+ encText: string;
68
+ encAttachments?: string[];
69
+ };
70
+ type EmailBody = {
71
+ text: string;
72
+ attachments?: string[];
73
+ };
74
+ type EmailPublicParameters = {
75
+ subject: string;
76
+ createdAt: string;
77
+ sender: User;
78
+ recipient: User;
79
+ recipients?: User[];
80
+ replyToEmailID?: string;
81
+ labels?: string[];
82
+ };
83
+ type Email = {
84
+ id: string;
85
+ body: EmailBody;
86
+ params: EmailPublicParameters;
87
+ };
88
+ interface MailCache<Email> {
89
+ esCache: Map<string, Email>;
90
+ cacheSize: number;
91
+ isCacheLimited: boolean;
92
+ isCacheReady: boolean;
93
+ }
94
+ interface EmailSearchResult {
95
+ email: Email;
96
+ score?: number;
97
+ }
98
+ declare enum KeystoreType {
99
+ ENCRYPTION = "Encryption",
100
+ RECOVERY = "Recovery"
101
+ }
102
+ //#endregion
103
+ export { PwdProtectedEmail as _, EmailKeysEncrypted as a, User as b, EncryptedKeystore as c, KeystoreType as d, MailCache as f, PublicKeysBase64 as g, PublicKeys as h, EmailKeys as i, HybridEncKey as l, PrivateKeysEncrypted as m, EmailBody as n, EmailPublicParameters as o, PrivateKeys as p, EmailBodyEncrypted as r, EmailSearchResult as s, Email as t, HybridEncryptedEmail as u, PwdProtectedKey as v, UserWithPublicKeys as x, StoredEmail as y };
104
+ //# sourceMappingURL=types-Ds3ivE9W.d.ts.map
@@ -0,0 +1,104 @@
1
+ //#region src/types.d.ts
2
+ type EncryptedKeystore = {
3
+ userEmail: string;
4
+ type: KeystoreType;
5
+ encryptedKeys: EmailKeysEncrypted;
6
+ };
7
+ type User = {
8
+ email: string;
9
+ name: string;
10
+ };
11
+ type UserWithPublicKeys = User & {
12
+ publicKeys: PublicKeys;
13
+ };
14
+ type PublicKeys = {
15
+ eccPublicKey: CryptoKey;
16
+ kyberPublicKey: Uint8Array;
17
+ };
18
+ type PublicKeysBase64 = {
19
+ eccPublicKeyBase64: string;
20
+ kyberPublicKeyBase64: string;
21
+ };
22
+ type PrivateKeys = {
23
+ eccPrivateKey: CryptoKey;
24
+ kyberPrivateKey: Uint8Array;
25
+ };
26
+ type PrivateKeysEncrypted = {
27
+ eccPrivateKeyBase64: string;
28
+ kyberPrivateKeyBase64: string;
29
+ };
30
+ type EmailKeys = {
31
+ publicKeys: PublicKeys;
32
+ privateKeys: PrivateKeys;
33
+ };
34
+ type EmailKeysEncrypted = {
35
+ publicKeys: PublicKeysBase64;
36
+ privateKeys: PrivateKeysEncrypted;
37
+ };
38
+ type HybridEncryptedEmail = {
39
+ encryptedKey: HybridEncKey;
40
+ enc: EmailBodyEncrypted;
41
+ recipientEmail: string;
42
+ params: EmailPublicParameters;
43
+ id: string;
44
+ isSubjectEncrypted: boolean;
45
+ };
46
+ type PwdProtectedEmail = {
47
+ encryptedKey: PwdProtectedKey;
48
+ enc: EmailBodyEncrypted;
49
+ params: EmailPublicParameters;
50
+ id: string;
51
+ isSubjectEncrypted: boolean;
52
+ };
53
+ type StoredEmail = {
54
+ params: EmailPublicParameters;
55
+ enc: EmailBodyEncrypted;
56
+ id: string;
57
+ };
58
+ type HybridEncKey = {
59
+ kyberCiphertext: string;
60
+ encryptedKey: string;
61
+ };
62
+ type PwdProtectedKey = {
63
+ encryptedKey: string;
64
+ salt: string;
65
+ };
66
+ type EmailBodyEncrypted = {
67
+ encText: string;
68
+ encAttachments?: string[];
69
+ };
70
+ type EmailBody = {
71
+ text: string;
72
+ attachments?: string[];
73
+ };
74
+ type EmailPublicParameters = {
75
+ subject: string;
76
+ createdAt: string;
77
+ sender: User;
78
+ recipient: User;
79
+ recipients?: User[];
80
+ replyToEmailID?: string;
81
+ labels?: string[];
82
+ };
83
+ type Email = {
84
+ id: string;
85
+ body: EmailBody;
86
+ params: EmailPublicParameters;
87
+ };
88
+ interface MailCache<Email> {
89
+ esCache: Map<string, Email>;
90
+ cacheSize: number;
91
+ isCacheLimited: boolean;
92
+ isCacheReady: boolean;
93
+ }
94
+ interface EmailSearchResult {
95
+ email: Email;
96
+ score?: number;
97
+ }
98
+ declare enum KeystoreType {
99
+ ENCRYPTION = "Encryption",
100
+ RECOVERY = "Recovery"
101
+ }
102
+ //#endregion
103
+ export { PwdProtectedEmail as _, EmailKeysEncrypted as a, User as b, EncryptedKeystore as c, KeystoreType as d, MailCache as f, PublicKeysBase64 as g, PublicKeys as h, EmailKeys as i, HybridEncKey as l, PrivateKeysEncrypted as m, EmailBody as n, EmailPublicParameters as o, PrivateKeys as p, EmailBodyEncrypted as r, EmailSearchResult as s, Email as t, HybridEncryptedEmail as u, PwdProtectedKey as v, UserWithPublicKeys as x, StoredEmail as y };
104
+ //# sourceMappingURL=types-DwQJtrTx.d.mts.map
package/dist/types.d.mts CHANGED
@@ -1,102 +1,2 @@
1
- declare enum KeystoreType {
2
- IDENTITY = "identity",
3
- ENCRYPTION = "encryption",
4
- RECOVERY = "recovery",
5
- INDEX = "index"
6
- }
7
- type EncryptedKeystore = {
8
- userID: string;
9
- type: KeystoreType;
10
- encryptedKeys: SymmetricCiphertext;
11
- };
12
- type User = {
13
- email: string;
14
- name: string;
15
- };
16
- type UserWithPublicKeys = User & {
17
- publicKeys: PublicKeys;
18
- };
19
- type PublicKeys = {
20
- eccPublicKey: CryptoKey;
21
- kyberPublicKey: Uint8Array;
22
- };
23
- type MediaKeys = {
24
- olmKey: Uint8Array;
25
- pqKey: Uint8Array;
26
- index: number;
27
- userID: string;
28
- };
29
- type PrivateKeys = {
30
- eccPrivateKey: CryptoKey;
31
- kyberPrivateKey: Uint8Array;
32
- };
33
- type IdentityKeys = {
34
- userPublicKey: CryptoKey;
35
- userPrivateKey: CryptoKey;
36
- };
37
- type EncryptionKeys = {
38
- userPublicKey: CryptoKey;
39
- userPrivateKey: CryptoKey;
40
- userPublicKyberKey: Uint8Array;
41
- userPrivateKyberKey: Uint8Array;
42
- };
43
- type HybridEncryptedEmail = {
44
- encryptedKey: HybridEncKey;
45
- enc: SymmetricCiphertext;
46
- recipientEmail: string;
47
- params: EmailPublicParameters;
48
- id: string;
49
- };
50
- type PwdProtectedEmail = {
51
- encryptedKey: PwdProtectedKey;
52
- enc: SymmetricCiphertext;
53
- params: EmailPublicParameters;
54
- id: string;
55
- };
56
- type SymmetricCiphertext = {
57
- ciphertext: Uint8Array;
58
- iv: Uint8Array;
59
- };
60
- type StoredEmail = {
61
- params: EmailPublicParameters;
62
- content: SymmetricCiphertext;
63
- id: string;
64
- };
65
- type HybridEncKey = {
66
- kyberCiphertext: Uint8Array;
67
- encryptedKey: Uint8Array;
68
- };
69
- type PwdProtectedKey = {
70
- encryptedKey: Uint8Array;
71
- salt: Uint8Array;
72
- };
73
- type EmailBody = {
74
- text: string;
75
- attachments?: string[];
76
- };
77
- type EmailPublicParameters = {
78
- subject: string;
79
- createdAt: string;
80
- sender: User;
81
- recipient: User;
82
- recipients?: User[];
83
- replyToEmailID?: number;
84
- labels?: string[];
85
- };
86
- type Email = {
87
- id: string;
88
- body: EmailBody;
89
- params: EmailPublicParameters;
90
- };
91
- interface MailCache<Email> {
92
- esCache: Map<string, Email>;
93
- cacheSize: number;
94
- isCacheLimited: boolean;
95
- isCacheReady: boolean;
96
- }
97
- interface EmailSearchResult {
98
- email: Email;
99
- score?: number;
100
- }
101
-
102
- export { type Email, type EmailBody, type EmailPublicParameters, type EmailSearchResult, type EncryptedKeystore, type EncryptionKeys, type HybridEncKey, type HybridEncryptedEmail, type IdentityKeys, KeystoreType, type MailCache, type MediaKeys, type PrivateKeys, type PublicKeys, type PwdProtectedEmail, type PwdProtectedKey, type StoredEmail, type SymmetricCiphertext, type User, type UserWithPublicKeys };
1
+ import { _ as PwdProtectedEmail, a as EmailKeysEncrypted, b as User, c as EncryptedKeystore, d as KeystoreType, f as MailCache, g as PublicKeysBase64, h as PublicKeys, i as EmailKeys, l as HybridEncKey, m as PrivateKeysEncrypted, n as EmailBody, o as EmailPublicParameters, p as PrivateKeys, r as EmailBodyEncrypted, s as EmailSearchResult, t as Email, u as HybridEncryptedEmail, v as PwdProtectedKey, x as UserWithPublicKeys, y as StoredEmail } from "./types-DwQJtrTx.mjs";
2
+ export { Email, EmailBody, EmailBodyEncrypted, EmailKeys, EmailKeysEncrypted, EmailPublicParameters, EmailSearchResult, EncryptedKeystore, HybridEncKey, HybridEncryptedEmail, KeystoreType, MailCache, PrivateKeys, PrivateKeysEncrypted, PublicKeys, PublicKeysBase64, PwdProtectedEmail, PwdProtectedKey, StoredEmail, User, UserWithPublicKeys };