lib0 0.2.112 → 0.2.115-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/README.md +1 -1
  2. package/broadcastchannel.js +1 -1
  3. package/buffer.d.ts +3 -3
  4. package/buffer.d.ts.map +1 -1
  5. package/buffer.js +1 -1
  6. package/coverage/tmp/coverage-27667-1761218530660-0.json +1 -0
  7. package/coverage/tmp/{coverage-20055-1752683207886-0.json → coverage-27668-1761218485882-0.json} +1 -1
  8. package/crypto/aes-gcm.d.ts +4 -4
  9. package/crypto/aes-gcm.d.ts.map +1 -1
  10. package/crypto/aes-gcm.js +6 -6
  11. package/crypto/common.d.ts +1 -1
  12. package/crypto/common.d.ts.map +1 -1
  13. package/crypto/common.js +1 -1
  14. package/crypto/ecdsa.d.ts +2 -2
  15. package/crypto/ecdsa.d.ts.map +1 -1
  16. package/crypto/ecdsa.js +4 -4
  17. package/crypto/rsa-oaep.d.ts +2 -2
  18. package/crypto/rsa-oaep.d.ts.map +1 -1
  19. package/crypto/rsa-oaep.js +3 -3
  20. package/decoding.d.ts +27 -14
  21. package/decoding.d.ts.map +1 -1
  22. package/decoding.js +12 -8
  23. package/delta/abstract-array.d.ts +166 -0
  24. package/delta/abstract-array.d.ts.map +1 -0
  25. package/delta/abstract-array.js +421 -0
  26. package/delta/abstract.d.ts +69 -0
  27. package/delta/abstract.d.ts.map +1 -0
  28. package/delta/abstract.js +102 -0
  29. package/delta/array.d.ts +23 -0
  30. package/delta/array.d.ts.map +1 -0
  31. package/delta/array.js +45 -0
  32. package/delta/array.test.d.ts +2 -0
  33. package/delta/array.test.d.ts.map +1 -0
  34. package/delta/binding.d.ts +105 -0
  35. package/delta/binding.d.ts.map +1 -0
  36. package/delta/binding.js +369 -0
  37. package/delta/binding.test.d.ts +5 -0
  38. package/delta/binding.test.d.ts.map +1 -0
  39. package/delta/d2.d.ts +705 -0
  40. package/delta/d2.d.ts.map +1 -0
  41. package/delta/d2.js +1309 -0
  42. package/delta/d2.test.d.ts +15 -0
  43. package/delta/d2.test.d.ts.map +1 -0
  44. package/delta/index.d.ts +14 -0
  45. package/delta/index.d.ts.map +1 -0
  46. package/delta/index.js +79 -0
  47. package/delta/map.d.ts +230 -0
  48. package/delta/map.d.ts.map +1 -0
  49. package/delta/map.js +304 -0
  50. package/delta/node.d.ts +119 -0
  51. package/delta/node.d.ts.map +1 -0
  52. package/delta/node.js +183 -0
  53. package/delta/node.test.d.ts +4 -0
  54. package/delta/node.test.d.ts.map +1 -0
  55. package/delta/ops.d.ts +466 -0
  56. package/delta/ops.d.ts.map +1 -0
  57. package/delta/ops.js +544 -0
  58. package/delta/readme.md +129 -0
  59. package/delta/text.d.ts +43 -0
  60. package/delta/text.d.ts.map +1 -0
  61. package/delta/text.js +54 -0
  62. package/delta/text.test.d.ts +6 -0
  63. package/delta/text.test.d.ts.map +1 -0
  64. package/delta/transformer.d.ts +164 -0
  65. package/delta/transformer.d.ts.map +1 -0
  66. package/delta/transformer.js +888 -0
  67. package/delta/transformer.test.d.ts +13 -0
  68. package/delta/transformer.test.d.ts.map +1 -0
  69. package/delta/value.d.ts +84 -0
  70. package/delta/value.d.ts.map +1 -0
  71. package/delta/value.js +168 -0
  72. package/dist/abstract-array.cjs +433 -0
  73. package/dist/abstract-array.cjs.map +1 -0
  74. package/dist/abstract.cjs +122 -0
  75. package/dist/abstract.cjs.map +1 -0
  76. package/dist/aes-gcm.cjs +12 -12
  77. package/dist/aes-gcm.cjs.map +1 -1
  78. package/dist/array.cjs +60 -17
  79. package/dist/array.cjs.map +1 -1
  80. package/dist/array2.cjs +26 -0
  81. package/dist/array2.cjs.map +1 -0
  82. package/dist/binding.cjs +398 -0
  83. package/dist/binding.cjs.map +1 -0
  84. package/dist/{broadcastchannel-2c4b0a1c.cjs → broadcastchannel-b4eaea6e.cjs} +4 -4
  85. package/dist/broadcastchannel-b4eaea6e.cjs.map +1 -0
  86. package/dist/broadcastchannel.cjs +12 -12
  87. package/dist/{buffer-a74f7330.cjs → buffer-adc4e6ea.cjs} +7 -7
  88. package/dist/buffer-adc4e6ea.cjs.map +1 -0
  89. package/dist/buffer.cjs +11 -11
  90. package/dist/buffer.d.ts +3 -3
  91. package/dist/buffer.d.ts.map +1 -1
  92. package/dist/cache.cjs +6 -6
  93. package/dist/common.cjs +1 -1
  94. package/dist/common.cjs.map +1 -1
  95. package/dist/component.cjs +14 -9
  96. package/dist/component.cjs.map +1 -1
  97. package/dist/crypto/aes-gcm.d.ts +4 -4
  98. package/dist/crypto/aes-gcm.d.ts.map +1 -1
  99. package/dist/crypto/common.d.ts +1 -1
  100. package/dist/crypto/common.d.ts.map +1 -1
  101. package/dist/crypto/ecdsa.d.ts +2 -2
  102. package/dist/crypto/ecdsa.d.ts.map +1 -1
  103. package/dist/crypto/rsa-oaep.d.ts +2 -2
  104. package/dist/crypto/rsa-oaep.d.ts.map +1 -1
  105. package/dist/d2.cjs +1347 -0
  106. package/dist/d2.cjs.map +1 -0
  107. package/dist/{decoding-2b136346.cjs → decoding-50b9ce38.cjs} +18 -14
  108. package/dist/decoding-50b9ce38.cjs.map +1 -0
  109. package/dist/decoding.cjs +6 -6
  110. package/dist/decoding.d.ts +27 -14
  111. package/dist/decoding.d.ts.map +1 -1
  112. package/dist/delta/abstract-array.d.ts +166 -0
  113. package/dist/delta/abstract-array.d.ts.map +1 -0
  114. package/dist/delta/abstract.d.ts +69 -0
  115. package/dist/delta/abstract.d.ts.map +1 -0
  116. package/dist/delta/array.d.ts +23 -0
  117. package/dist/delta/array.d.ts.map +1 -0
  118. package/dist/delta/array.test.d.ts +2 -0
  119. package/dist/delta/array.test.d.ts.map +1 -0
  120. package/dist/delta/binding.d.ts +105 -0
  121. package/dist/delta/binding.d.ts.map +1 -0
  122. package/dist/delta/binding.test.d.ts +5 -0
  123. package/dist/delta/binding.test.d.ts.map +1 -0
  124. package/dist/delta/d2.d.ts +705 -0
  125. package/dist/delta/d2.d.ts.map +1 -0
  126. package/dist/delta/d2.test.d.ts +15 -0
  127. package/dist/delta/d2.test.d.ts.map +1 -0
  128. package/dist/delta/index.d.ts +14 -0
  129. package/dist/delta/index.d.ts.map +1 -0
  130. package/dist/delta/map.d.ts +230 -0
  131. package/dist/delta/map.d.ts.map +1 -0
  132. package/dist/delta/node.d.ts +119 -0
  133. package/dist/delta/node.d.ts.map +1 -0
  134. package/dist/delta/node.test.d.ts +4 -0
  135. package/dist/delta/node.test.d.ts.map +1 -0
  136. package/dist/delta/ops.d.ts +466 -0
  137. package/dist/delta/ops.d.ts.map +1 -0
  138. package/dist/delta/text.d.ts +43 -0
  139. package/dist/delta/text.d.ts.map +1 -0
  140. package/dist/delta/text.test.d.ts +6 -0
  141. package/dist/delta/text.test.d.ts.map +1 -0
  142. package/dist/delta/transformer.d.ts +164 -0
  143. package/dist/delta/transformer.d.ts.map +1 -0
  144. package/dist/delta/transformer.test.d.ts +13 -0
  145. package/dist/delta/transformer.test.d.ts.map +1 -0
  146. package/dist/delta/value.d.ts +84 -0
  147. package/dist/delta/value.d.ts.map +1 -0
  148. package/dist/{diff-77c4cf8e.cjs → diff-f0776c15.cjs} +2 -2
  149. package/dist/{diff-77c4cf8e.cjs.map → diff-f0776c15.cjs.map} +1 -1
  150. package/dist/diff.cjs +3 -3
  151. package/dist/{dom-16daf1a0.cjs → dom-2b123630.cjs} +31 -2
  152. package/dist/dom-2b123630.cjs.map +1 -0
  153. package/dist/dom.cjs +17 -2
  154. package/dist/dom.cjs.map +1 -1
  155. package/dist/dom.d.ts +17 -0
  156. package/dist/dom.d.ts.map +1 -1
  157. package/dist/ecdsa.cjs +4 -4
  158. package/dist/ecdsa.cjs.map +1 -1
  159. package/dist/{encoding-1acb59c4.cjs → encoding-7f85922c.cjs} +5 -5
  160. package/dist/encoding-7f85922c.cjs.map +1 -0
  161. package/dist/encoding.cjs +4 -4
  162. package/dist/encoding.d.ts +6 -6
  163. package/dist/encoding.d.ts.map +1 -1
  164. package/dist/{environment-2de08e0e.cjs → environment-90227ead.cjs} +4 -4
  165. package/dist/{environment-2de08e0e.cjs.map → environment-90227ead.cjs.map} +1 -1
  166. package/dist/environment.cjs +5 -5
  167. package/dist/{error-8582d695.cjs → error-0c1f634f.cjs} +10 -2
  168. package/dist/error-0c1f634f.cjs.map +1 -0
  169. package/dist/error.cjs +2 -1
  170. package/dist/error.cjs.map +1 -1
  171. package/dist/error.d.ts +1 -0
  172. package/dist/error.d.ts.map +1 -1
  173. package/dist/{eventloop-b299a889.cjs → eventloop-a0168106.cjs} +2 -2
  174. package/dist/{eventloop-b299a889.cjs.map → eventloop-a0168106.cjs.map} +1 -1
  175. package/dist/eventloop.cjs +3 -3
  176. package/dist/{function-09b8292c.cjs → function-e7d18feb.cjs} +2 -2
  177. package/dist/{function-09b8292c.cjs.map → function-e7d18feb.cjs.map} +1 -1
  178. package/dist/function.cjs +2 -2
  179. package/dist/index.cjs +23 -22
  180. package/dist/index.cjs.map +1 -1
  181. package/dist/index2.cjs +71 -0
  182. package/dist/index2.cjs.map +1 -0
  183. package/dist/{indexeddb-0cbb4d6f.cjs → indexeddb-46d1e737.cjs} +3 -3
  184. package/dist/{indexeddb-0cbb4d6f.cjs.map → indexeddb-46d1e737.cjs.map} +1 -1
  185. package/dist/indexeddb.cjs +5 -5
  186. package/dist/indexeddbV2.cjs +2 -1
  187. package/dist/indexeddbV2.cjs.map +1 -1
  188. package/dist/jwt.cjs +12 -12
  189. package/dist/list.cjs +39 -12
  190. package/dist/list.cjs.map +1 -1
  191. package/dist/list.d.ts +13 -3
  192. package/dist/list.d.ts.map +1 -1
  193. package/dist/logging.cjs +11 -9
  194. package/dist/logging.cjs.map +1 -1
  195. package/dist/logging.common.cjs +7 -7
  196. package/dist/logging.node.cjs +7 -7
  197. package/dist/{map-0dabcc55.cjs → map-24d263c0.cjs} +7 -1
  198. package/dist/map-24d263c0.cjs.map +1 -0
  199. package/dist/map.cjs +314 -7
  200. package/dist/map.cjs.map +1 -1
  201. package/dist/map.d.ts +1 -0
  202. package/dist/map.d.ts.map +1 -1
  203. package/dist/map2.cjs +15 -0
  204. package/dist/map2.cjs.map +1 -0
  205. package/dist/{math-08e068f9.cjs → math-96d5e8c4.cjs} +4 -2
  206. package/dist/math-96d5e8c4.cjs.map +1 -0
  207. package/dist/math.cjs +1 -1
  208. package/dist/math.d.ts.map +1 -1
  209. package/dist/metric.cjs +1 -1
  210. package/dist/node.cjs +206 -0
  211. package/dist/node.cjs.map +1 -0
  212. package/dist/{number-466d8922.cjs → number-1fb57bba.cjs} +2 -2
  213. package/dist/{number-466d8922.cjs.map → number-1fb57bba.cjs.map} +1 -1
  214. package/dist/number.cjs +2 -2
  215. package/dist/{object-491858d1.cjs → object-18980796.cjs} +12 -2
  216. package/dist/object-18980796.cjs.map +1 -0
  217. package/dist/object.cjs +3 -1
  218. package/dist/object.cjs.map +1 -1
  219. package/dist/object.d.ts +3 -0
  220. package/dist/object.d.ts.map +1 -1
  221. package/dist/observable.cjs +1 -1
  222. package/dist/ops.cjs +575 -0
  223. package/dist/ops.cjs.map +1 -0
  224. package/dist/patience.cjs +2 -2
  225. package/dist/performance.node.cjs +4 -4
  226. package/dist/pledge.cjs +2 -1
  227. package/dist/pledge.cjs.map +1 -1
  228. package/dist/{prng-24dfe0bf.cjs → prng-004c76e8.cjs} +5 -5
  229. package/dist/{prng-24dfe0bf.cjs.map → prng-004c76e8.cjs.map} +1 -1
  230. package/dist/prng.cjs +12 -12
  231. package/dist/prng.d.ts +1 -1
  232. package/dist/prng.d.ts.map +1 -1
  233. package/dist/{promise-7d13a97c.cjs → promise-cda7b9bb.cjs} +2 -2
  234. package/dist/{promise-7d13a97c.cjs.map → promise-cda7b9bb.cjs.map} +1 -1
  235. package/dist/promise.cjs +3 -3
  236. package/dist/rabin-gf2-polynomial.cjs +11 -11
  237. package/dist/rabin-uncached.cjs +11 -11
  238. package/dist/rabin.cjs +11 -11
  239. package/dist/random.cjs +1 -1
  240. package/dist/rsa-oaep.cjs +3 -3
  241. package/dist/rsa-oaep.cjs.map +1 -1
  242. package/dist/schema.cjs +572 -167
  243. package/dist/schema.cjs.map +1 -1
  244. package/dist/schema.d.ts +326 -122
  245. package/dist/schema.d.ts.map +1 -1
  246. package/dist/schema.test.d.ts +5 -0
  247. package/dist/schema.test.d.ts.map +1 -1
  248. package/dist/{sort-b8702761.cjs → sort-812cc211.cjs} +2 -2
  249. package/dist/{sort-b8702761.cjs.map → sort-812cc211.cjs.map} +1 -1
  250. package/dist/sort.cjs +2 -2
  251. package/dist/{statistics-c2316dca.cjs → statistics-65f6114b.cjs} +2 -2
  252. package/dist/{statistics-c2316dca.cjs.map → statistics-65f6114b.cjs.map} +1 -1
  253. package/dist/statistics.cjs +2 -2
  254. package/dist/{string-b2827a90.cjs → string-fddc5f8b.cjs} +3 -3
  255. package/dist/string-fddc5f8b.cjs.map +1 -0
  256. package/dist/string.cjs +1 -1
  257. package/dist/string.d.ts +3 -3
  258. package/dist/string.d.ts.map +1 -1
  259. package/dist/testing.cjs +16 -16
  260. package/dist/text.cjs +79 -0
  261. package/dist/text.cjs.map +1 -0
  262. package/dist/{time-bc2081b9.cjs → time-d8438852.cjs} +2 -2
  263. package/dist/{time-bc2081b9.cjs.map → time-d8438852.cjs.map} +1 -1
  264. package/dist/time.cjs +2 -2
  265. package/dist/traits.cjs +22 -0
  266. package/dist/traits.cjs.map +1 -1
  267. package/dist/traits.d.ts +1 -0
  268. package/dist/traits.d.ts.map +1 -1
  269. package/dist/traits.test.d.ts.map +1 -1
  270. package/dist/transformer.cjs +930 -0
  271. package/dist/transformer.cjs.map +1 -0
  272. package/dist/url.cjs +2 -1
  273. package/dist/url.cjs.map +1 -1
  274. package/dist/value.cjs +187 -0
  275. package/dist/value.cjs.map +1 -0
  276. package/dist/webcrypto.d.ts +1 -1
  277. package/dist/webcrypto.d.ts.map +1 -1
  278. package/dist/{websocket-40a601d4.cjs → websocket-b073d0fc.cjs} +3 -3
  279. package/dist/{websocket-40a601d4.cjs.map → websocket-b073d0fc.cjs.map} +1 -1
  280. package/dist/websocket.cjs +4 -4
  281. package/dom.d.ts +17 -0
  282. package/dom.d.ts.map +1 -1
  283. package/dom.js +21 -0
  284. package/encoding.d.ts +6 -6
  285. package/encoding.d.ts.map +1 -1
  286. package/encoding.js +1 -1
  287. package/error.d.ts +1 -0
  288. package/error.d.ts.map +1 -1
  289. package/error.js +6 -0
  290. package/list.d.ts +13 -3
  291. package/list.d.ts.map +1 -1
  292. package/list.js +36 -8
  293. package/map.d.ts +1 -0
  294. package/map.d.ts.map +1 -1
  295. package/map.js +6 -0
  296. package/math.d.ts.map +1 -1
  297. package/math.js +3 -1
  298. package/object.d.ts +3 -0
  299. package/object.d.ts.map +1 -1
  300. package/object.js +9 -1
  301. package/package.json +9 -3
  302. package/prng.d.ts +1 -1
  303. package/prng.d.ts.map +1 -1
  304. package/prng.js +1 -1
  305. package/schema.d.ts +326 -122
  306. package/schema.d.ts.map +1 -1
  307. package/schema.js +513 -141
  308. package/schema.test.d.ts +5 -0
  309. package/schema.test.d.ts.map +1 -1
  310. package/string.d.ts +3 -3
  311. package/string.d.ts.map +1 -1
  312. package/string.js +2 -2
  313. package/test.html +1 -0
  314. package/test.js +13 -1
  315. package/traits.d.ts +1 -0
  316. package/traits.d.ts.map +1 -1
  317. package/traits.js +21 -0
  318. package/traits.test.d.ts.map +1 -1
  319. package/webcrypto.d.ts +1 -1
  320. package/webcrypto.d.ts.map +1 -1
  321. package/coverage/tmp/coverage-20054-1752683240888-0.json +0 -1
  322. package/dist/broadcastchannel-2c4b0a1c.cjs.map +0 -1
  323. package/dist/buffer-a74f7330.cjs.map +0 -1
  324. package/dist/decoding-2b136346.cjs.map +0 -1
  325. package/dist/dom-16daf1a0.cjs.map +0 -1
  326. package/dist/encoding-1acb59c4.cjs.map +0 -1
  327. package/dist/error-8582d695.cjs.map +0 -1
  328. package/dist/map-0dabcc55.cjs.map +0 -1
  329. package/dist/math-08e068f9.cjs.map +0 -1
  330. package/dist/object-491858d1.cjs.map +0 -1
  331. package/dist/string-b2827a90.cjs.map +0 -1
package/crypto/aes-gcm.js CHANGED
@@ -19,7 +19,7 @@ const defaultUsages = ['encrypt', 'decrypt']
19
19
 
20
20
  /**
21
21
  * @param {CryptoKey} key
22
- * @param {Uint8Array} data
22
+ * @param {Uint8Array<ArrayBuffer>} data
23
23
  */
24
24
  export const encrypt = (key, data) => {
25
25
  const iv = webcrypto.getRandomValues(new Uint8Array(16)) // 92bit is enough. 128bit is recommended if space is not an issue.
@@ -45,7 +45,7 @@ export const encrypt = (key, data) => {
45
45
  * Decrypt some data using AES-GCM method.
46
46
  *
47
47
  * @param {CryptoKey} key
48
- * @param {Uint8Array} data
48
+ * @param {Uint8Array<ArrayBuffer>} data
49
49
  * @return {PromiseLike<Uint8Array>} decrypted buffer
50
50
  */
51
51
  export const decrypt = (key, data) => {
@@ -84,7 +84,7 @@ export const importKeyJwk = (jwk, { usages, extractable = false } = {}) => {
84
84
  /**
85
85
  * Only suited for importing public keys.
86
86
  *
87
- * @param {Uint8Array} raw
87
+ * @param {Uint8Array<ArrayBuffer>} raw
88
88
  * @param {Object} opts
89
89
  * @param {Usages} [opts.usages]
90
90
  * @param {boolean} [opts.extractable]
@@ -93,7 +93,7 @@ export const importKeyRaw = (raw, { usages = defaultUsages, extractable = false
93
93
  webcrypto.subtle.importKey('raw', raw, aesAlgDef, extractable, /** @type {Usages} */ (usages))
94
94
 
95
95
  /**
96
- * @param {Uint8Array | string} data
96
+ * @param {Uint8Array<ArrayBuffer> | string} data
97
97
  */
98
98
  /* c8 ignore next */
99
99
  const toBinary = data => typeof data === 'string' ? string.encodeUtf8(data) : data
@@ -103,8 +103,8 @@ const toBinary = data => typeof data === 'string' ? string.encodeUtf8(data) : da
103
103
  *
104
104
  * Derive an symmetric key using the Password-Based-Key-Derivation-Function-2.
105
105
  *
106
- * @param {Uint8Array|string} secret
107
- * @param {Uint8Array|string} salt
106
+ * @param {Uint8Array<ArrayBuffer>|string} secret
107
+ * @param {Uint8Array<ArrayBuffer>|string} salt
108
108
  * @param {Object} opts
109
109
  * @param {boolean} [opts.extractable]
110
110
  * @param {Usages} [opts.usages]
@@ -1,3 +1,3 @@
1
1
  export function exportKeyJwk(key: CryptoKey): Promise<JsonWebKey>;
2
- export function exportKeyRaw(key: CryptoKey): Promise<Uint8Array>;
2
+ export function exportKeyRaw(key: CryptoKey): Promise<Uint8Array<ArrayBuffer>>;
3
3
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["common.js"],"names":[],"mappings":"AAKO,kCAFI,SAAS,uBAMnB;AAQM,kCAHI,SAAS,GACR,OAAO,CAAC,UAAU,CAAC,CAG0C"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["common.js"],"names":[],"mappings":"AAKO,kCAFI,SAAS,uBAMnB;AAQM,kCAHI,SAAS,GACR,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAG6B"}
package/crypto/common.js CHANGED
@@ -13,7 +13,7 @@ export const exportKeyJwk = async key => {
13
13
  * Only suited for exporting public keys.
14
14
  *
15
15
  * @param {CryptoKey} key
16
- * @return {Promise<Uint8Array>}
16
+ * @return {Promise<Uint8Array<ArrayBuffer>>}
17
17
  */
18
18
  export const exportKeyRaw = key =>
19
19
  webcrypto.subtle.exportKey('raw', key).then(key => new Uint8Array(key))
package/crypto/ecdsa.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export function sign(key: CryptoKey, data: Uint8Array): PromiseLike<Uint8Array>;
2
- export function verify(key: CryptoKey, signature: Uint8Array, data: Uint8Array): PromiseLike<boolean>;
1
+ export function sign(key: CryptoKey, data: Uint8Array<ArrayBuffer>): PromiseLike<Uint8Array<ArrayBuffer>>;
2
+ export function verify(key: CryptoKey, signature: Uint8Array<ArrayBuffer>, data: Uint8Array<ArrayBuffer>): PromiseLike<boolean>;
3
3
  export function generateKeyPair({ extractable, usages }?: {
4
4
  extractable?: boolean | undefined;
5
5
  usages?: Usages | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["ecdsa.js"],"names":[],"mappings":"AA8BO,0BAJI,SAAS,QACT,UAAU,GACT,WAAW,CAAC,UAAU,CAAC,CAOa;AAYzC,4BALI,SAAS,aACT,UAAU,QACV,UAAU,GACT,WAAW,CAAC,OAAO,CAAC,CAQ7B;AAaI,0DAHJ;IAAuB,WAAW;IACZ,MAAM;CAAC,0BAO7B;AAQI,kCALI,GAAG,4BAEX;IAAuB,WAAW;IACZ,MAAM;CAAC,sBAQ/B;AAUM,kCALI,GAAG,4BAEX;IAAuB,WAAW;IACZ,MAAM;CAAC,sBAGkD;qBAxFrE,KAAK,CAAC,MAAM,GAAC,QAAQ,CAAC"}
1
+ {"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["ecdsa.js"],"names":[],"mappings":"AA8BO,0BAJI,SAAS,QACT,UAAU,CAAC,WAAW,CAAC,GACtB,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAOA;AAYzC,4BALI,SAAS,aACT,UAAU,CAAC,WAAW,CAAC,QACvB,UAAU,CAAC,WAAW,CAAC,GACtB,WAAW,CAAC,OAAO,CAAC,CAQ7B;AAaI,0DAHJ;IAAuB,WAAW;IACZ,MAAM;CAAC,0BAO7B;AAQI,kCALI,GAAG,4BAEX;IAAuB,WAAW;IACZ,MAAM;CAAC,sBAQ/B;AAUM,kCALI,GAAG,4BAEX;IAAuB,WAAW;IACZ,MAAM;CAAC,sBAGkD;qBAxFrE,KAAK,CAAC,MAAM,GAAC,QAAQ,CAAC"}
package/crypto/ecdsa.js CHANGED
@@ -25,8 +25,8 @@ const defaultSignAlgorithm = {
25
25
  * Sign a message
26
26
  *
27
27
  * @param {CryptoKey} key
28
- * @param {Uint8Array} data
29
- * @return {PromiseLike<Uint8Array>} signature
28
+ * @param {Uint8Array<ArrayBuffer>} data
29
+ * @return {PromiseLike<Uint8Array<ArrayBuffer>>} signature
30
30
  */
31
31
  export const sign = (key, data) =>
32
32
  webcrypto.subtle.sign(
@@ -41,8 +41,8 @@ export const sign = (key, data) =>
41
41
  * Sign a message
42
42
  *
43
43
  * @param {CryptoKey} key
44
- * @param {Uint8Array} signature
45
- * @param {Uint8Array} data
44
+ * @param {Uint8Array<ArrayBuffer>} signature
45
+ * @param {Uint8Array<ArrayBuffer>} data
46
46
  * @return {PromiseLike<boolean>} signature
47
47
  */
48
48
  export const verify = (key, signature, data) =>
@@ -1,6 +1,6 @@
1
1
  export { exportKeyJwk } from "./common.js";
2
- export function encrypt(key: CryptoKey, data: Uint8Array): PromiseLike<Uint8Array>;
3
- export function decrypt(key: CryptoKey, data: Uint8Array): PromiseLike<Uint8Array>;
2
+ export function encrypt(key: CryptoKey, data: Uint8Array<ArrayBuffer>): PromiseLike<Uint8Array<ArrayBuffer>>;
3
+ export function decrypt(key: CryptoKey, data: Uint8Array<ArrayBuffer>): PromiseLike<Uint8Array>;
4
4
  export function generateKeyPair({ extractable, usages }?: {
5
5
  extractable?: boolean | undefined;
6
6
  usages?: Usages | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"rsa-oaep.d.ts","sourceRoot":"","sources":["rsa-oaep.js"],"names":[],"mappings":";AAuBO,6BAJI,SAAS,QACT,UAAU,GACT,WAAW,CAAC,UAAU,CAAC,CASC;AAW7B,6BAJI,SAAS,QACT,UAAU,GACT,WAAW,CAAC,UAAU,CAAC,CASG;AAQ/B,0DAJJ;IAAuB,WAAW;IACZ,MAAM;CAC5B,GAAS,OAAO,CAAC,aAAa,CAAC,CAY/B;AAQI,kCALI,GAAG,4BAEX;IAAuB,WAAW;IACZ,MAAM;CAAC,sBAQ/B;qBAxEY,KAAK,CAAC,SAAS,GAAC,SAAS,CAAC"}
1
+ {"version":3,"file":"rsa-oaep.d.ts","sourceRoot":"","sources":["rsa-oaep.js"],"names":[],"mappings":";AAuBO,6BAJI,SAAS,QACT,UAAU,CAAC,WAAW,CAAC,GACtB,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CASZ;AAW7B,6BAJI,SAAS,QACT,UAAU,CAAC,WAAW,CAAC,GACtB,WAAW,CAAC,UAAU,CAAC,CASG;AAQ/B,0DAJJ;IAAuB,WAAW;IACZ,MAAM;CAC5B,GAAS,OAAO,CAAC,aAAa,CAAC,CAY/B;AAQI,kCALI,GAAG,4BAEX;IAAuB,WAAW;IACZ,MAAM;CAAC,sBAQ/B;qBAxEY,KAAK,CAAC,SAAS,GAAC,SAAS,CAAC"}
@@ -18,8 +18,8 @@ const defaultUsages = ['encrypt', 'decrypt']
18
18
  * Note that the max data size is limited by the size of the RSA key.
19
19
  *
20
20
  * @param {CryptoKey} key
21
- * @param {Uint8Array} data
22
- * @return {PromiseLike<Uint8Array>}
21
+ * @param {Uint8Array<ArrayBuffer>} data
22
+ * @return {PromiseLike<Uint8Array<ArrayBuffer>>}
23
23
  */
24
24
  export const encrypt = (key, data) =>
25
25
  webcrypto.subtle.encrypt(
@@ -36,7 +36,7 @@ export const encrypt = (key, data) =>
36
36
  * Decrypt some data using AES-GCM method.
37
37
  *
38
38
  * @param {CryptoKey} key
39
- * @param {Uint8Array} data
39
+ * @param {Uint8Array<ArrayBuffer>} data
40
40
  * @return {PromiseLike<Uint8Array>} decrypted buffer
41
41
  */
42
42
  export const decrypt = (key, data) =>
package/decoding.d.ts CHANGED
@@ -1,17 +1,18 @@
1
1
  /**
2
2
  * A Decoder handles the decoding of an Uint8Array.
3
+ * @template {ArrayBufferLike} [Buf=ArrayBufferLike]
3
4
  */
4
- export class Decoder {
5
+ export class Decoder<Buf extends ArrayBufferLike = ArrayBufferLike> {
5
6
  /**
6
- * @param {Uint8Array} uint8Array Binary data to decode
7
+ * @param {Uint8Array<Buf>} uint8Array Binary data to decode
7
8
  */
8
- constructor(uint8Array: Uint8Array);
9
+ constructor(uint8Array: Uint8Array<Buf>);
9
10
  /**
10
11
  * Decoding target.
11
12
  *
12
- * @type {Uint8Array}
13
+ * @type {Uint8Array<Buf>}
13
14
  */
14
- arr: Uint8Array;
15
+ arr: Uint8Array<Buf>;
15
16
  /**
16
17
  * Current decoding position.
17
18
  *
@@ -19,11 +20,11 @@ export class Decoder {
19
20
  */
20
21
  pos: number;
21
22
  }
22
- export function createDecoder(uint8Array: Uint8Array): Decoder;
23
+ export function createDecoder<Buf extends ArrayBufferLike>(uint8Array: Uint8Array<Buf>): Decoder<Buf>;
23
24
  export function hasContent(decoder: Decoder): boolean;
24
25
  export function clone(decoder: Decoder, newPos?: number): Decoder;
25
- export function readUint8Array(decoder: Decoder, len: number): Uint8Array;
26
- export function readVarUint8Array(decoder: Decoder): Uint8Array;
26
+ export function readUint8Array<Buf extends ArrayBufferLike>(decoder: Decoder<Buf>, len: number): Uint8Array<Buf>;
27
+ export function readVarUint8Array<Buf extends ArrayBufferLike>(decoder: Decoder<Buf>): Uint8Array<Buf>;
27
28
  export function readTailAsUint8Array(decoder: Decoder): Uint8Array;
28
29
  export function skip8(decoder: Decoder): number;
29
30
  export function readUint8(decoder: Decoder): number;
@@ -54,7 +55,7 @@ export function readAny(decoder: Decoder): any;
54
55
  *
55
56
  * @template T
56
57
  */
57
- export class RleDecoder<T> extends Decoder {
58
+ export class RleDecoder<T> extends Decoder<ArrayBufferLike> {
58
59
  /**
59
60
  * @param {Uint8Array} uint8Array
60
61
  * @param {function(Decoder):T} reader
@@ -72,7 +73,7 @@ export class RleDecoder<T> extends Decoder {
72
73
  count: number;
73
74
  read(): T;
74
75
  }
75
- export class IntDiffDecoder extends Decoder {
76
+ export class IntDiffDecoder extends Decoder<ArrayBufferLike> {
76
77
  /**
77
78
  * @param {Uint8Array} uint8Array
78
79
  * @param {number} start
@@ -88,7 +89,7 @@ export class IntDiffDecoder extends Decoder {
88
89
  */
89
90
  read(): number;
90
91
  }
91
- export class RleIntDiffDecoder extends Decoder {
92
+ export class RleIntDiffDecoder extends Decoder<ArrayBufferLike> {
92
93
  /**
93
94
  * @param {Uint8Array} uint8Array
94
95
  * @param {number} start
@@ -105,7 +106,11 @@ export class RleIntDiffDecoder extends Decoder {
105
106
  */
106
107
  read(): number;
107
108
  }
108
- export class UintOptRleDecoder extends Decoder {
109
+ export class UintOptRleDecoder extends Decoder<ArrayBufferLike> {
110
+ /**
111
+ * @param {Uint8Array} uint8Array
112
+ */
113
+ constructor(uint8Array: Uint8Array);
109
114
  /**
110
115
  * @type {number}
111
116
  */
@@ -113,7 +118,11 @@ export class UintOptRleDecoder extends Decoder {
113
118
  count: number;
114
119
  read(): number;
115
120
  }
116
- export class IncUintOptRleDecoder extends Decoder {
121
+ export class IncUintOptRleDecoder extends Decoder<ArrayBufferLike> {
122
+ /**
123
+ * @param {Uint8Array} uint8Array
124
+ */
125
+ constructor(uint8Array: Uint8Array);
117
126
  /**
118
127
  * @type {number}
119
128
  */
@@ -121,7 +130,11 @@ export class IncUintOptRleDecoder extends Decoder {
121
130
  count: number;
122
131
  read(): number;
123
132
  }
124
- export class IntDiffOptRleDecoder extends Decoder {
133
+ export class IntDiffOptRleDecoder extends Decoder<ArrayBufferLike> {
134
+ /**
135
+ * @param {Uint8Array} uint8Array
136
+ */
137
+ constructor(uint8Array: Uint8Array);
125
138
  /**
126
139
  * @type {number}
127
140
  */
package/decoding.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"decoding.d.ts","sourceRoot":"","sources":["decoding.js"],"names":[],"mappings":"AAsCA;;GAEG;AACH;IACE;;OAEG;IACH,wBAFW,UAAU,EAepB;IAZC;;;;OAIG;IACH,KAFU,UAAU,CAEC;IACrB;;;;OAIG;IACH,KAFU,MAAM,CAEJ;CAEf;AAOM,0CAHI,UAAU,GACT,OAAO,CAE+C;AAO3D,oCAHI,OAAO,GACN,OAAO,CAEoD;AAWhE,+BAJI,OAAO,WACP,MAAM,GACL,OAAO,CAMlB;AAaM,wCAJI,OAAO,OACP,MAAM,GACL,UAAU,CAMrB;AAYM,2CAHI,OAAO,GACN,UAAU,CAEmE;AAQlF,8CAHI,OAAO,GACN,UAAU,CAEkF;AAQjG,+BAHI,OAAO,GACN,MAAM,CAE2B;AAQtC,mCAHI,OAAO,GACN,MAAM,CAE4C;AASvD,oCAHI,OAAO,GACN,MAAM,CAQjB;AASM,oCAHI,OAAO,GACN,MAAM,CAUjB;AAUM,6CAHI,OAAO,GACN,MAAM,CAUjB;AAUM,mCAHI,OAAO,GACN,MAAM,CAE0C;AAUrD,oCAHI,OAAO,GACN,MAAM,CAImB;AAU9B,oCAHI,OAAO,GACN,MAAM,CAOX;AAYA,qCAHI,OAAO,GACN,MAAM,CAqBjB;AAaM,oCAHI,OAAO,GACN,MAAM,CA2BjB;AASM,qCAHI,OAAO,GACN,MAAM,CAOjB;AASM,oCAHI,OAAO,GACN,MAAM,CAOjB;AAgBM,gDAJI,OAAO,UA2BjB;AAQM,8CAHI,OAAO,UAI4D;AAhCvE,uCAJI,OAAO,UA2BjB;AA2BM,kDAHI,OAAO,GACN,UAAU,CAerB;AAMM,8CAHI,OAAO,GACN,MAAM,CAEiF;AAS5F,uCAHI,OAAO,GACN,MAAM,CAOjB;AAOM,0CAJI,OAAO,OACP,MAAM,GACL,QAAQ,CAMnB;AAKM,qCAFI,OAAO,UAEqE;AAKhF,qCAFI,OAAO,UAEqE;AAKhF,sCAFI,OAAO,OAE4F;AAKvG,uCAFI,OAAO,OAE8F;AAyCzG,iCAFI,OAAO,OAEqE;AAEvF;;;;GAIG;AACH,wBAFa,CAAC;IAGZ;;;OAGG;IACH,wBAHW,UAAU,UACV,CAAS,IAAO,EAAP,OAAO,KAAE,CAAC,EAc7B;IAVC;;OAEG;IACH,eAPkB,OAAO,KAAE,CAAC,CAOR;IACpB;;;OAGG;IACH,GAFU,CAAC,GAAC,IAAI,CAEH;IACb,cAAc;IAGhB,QAUoB,CAAC,CACpB;CACF;AAED;IACE;;;OAGG;IACH,wBAHW,UAAU,SACV,MAAM,EAShB;IALC;;;OAGG;IACH,GAFU,MAAM,CAEF;IAGhB;;OAEG;IACH,QAFY,MAAM,CAKjB;CACF;AAED;IACE;;;OAGG;IACH,wBAHW,UAAU,SACV,MAAM,EAUhB;IANC;;;OAGG;IACH,GAFU,MAAM,CAEF;IACd,cAAc;IAGhB;;OAEG;IACH,QAFY,MAAM,CAajB;CACF;AAED;IAMI;;OAEG;IACH,GAFU,MAAM,CAEN;IACV,cAAc;IAGhB,QAYoB,MAAM,CACzB;CACF;AAED;IAMI;;OAEG;IACH,GAFU,MAAM,CAEN;IACV,cAAc;IAGhB,QAYoB,MAAM,CACzB;CACF;AAED;IAMI;;OAEG;IACH,GAFU,MAAM,CAEN;IACV,cAAc;IACd,aAAa;IAGf;;OAEG;IACH,QAFY,MAAM,CAgBjB;CACF;AAED;IACE;;OAEG;IACH,wBAFW,UAAU,EASpB;IANC,2BAAgD;IAChD,YAAsC;IACtC;;OAEG;IACH,MAFU,MAAM,CAEH;IAGf;;OAEG;IACH,QAFY,MAAM,CAOjB;CACF"}
1
+ {"version":3,"file":"decoding.d.ts","sourceRoot":"","sources":["decoding.js"],"names":[],"mappings":"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"}
package/decoding.js CHANGED
@@ -38,16 +38,17 @@ const errorIntegerOutOfRange = error.create('Integer out of Range')
38
38
 
39
39
  /**
40
40
  * A Decoder handles the decoding of an Uint8Array.
41
+ * @template {ArrayBufferLike} [Buf=ArrayBufferLike]
41
42
  */
42
43
  export class Decoder {
43
44
  /**
44
- * @param {Uint8Array} uint8Array Binary data to decode
45
+ * @param {Uint8Array<Buf>} uint8Array Binary data to decode
45
46
  */
46
47
  constructor (uint8Array) {
47
48
  /**
48
49
  * Decoding target.
49
50
  *
50
- * @type {Uint8Array}
51
+ * @type {Uint8Array<Buf>}
51
52
  */
52
53
  this.arr = uint8Array
53
54
  /**
@@ -61,8 +62,9 @@ export class Decoder {
61
62
 
62
63
  /**
63
64
  * @function
64
- * @param {Uint8Array} uint8Array
65
- * @return {Decoder}
65
+ * @template {ArrayBufferLike} Buf
66
+ * @param {Uint8Array<Buf>} uint8Array
67
+ * @return {Decoder<Buf>}
66
68
  */
67
69
  export const createDecoder = uint8Array => new Decoder(uint8Array)
68
70
 
@@ -95,9 +97,10 @@ export const clone = (decoder, newPos = decoder.pos) => {
95
97
  * Use `buffer.copyUint8Array` to copy the result into a new Uint8Array.
96
98
  *
97
99
  * @function
98
- * @param {Decoder} decoder The decoder instance
100
+ * @template {ArrayBufferLike} Buf
101
+ * @param {Decoder<Buf>} decoder The decoder instance
99
102
  * @param {number} len The length of bytes to read
100
- * @return {Uint8Array}
103
+ * @return {Uint8Array<Buf>}
101
104
  */
102
105
  export const readUint8Array = (decoder, len) => {
103
106
  const view = new Uint8Array(decoder.arr.buffer, decoder.pos + decoder.arr.byteOffset, len)
@@ -112,8 +115,9 @@ export const readUint8Array = (decoder, len) => {
112
115
  * Use `buffer.copyUint8Array` to copy the result into a new Uint8Array.
113
116
  *
114
117
  * @function
115
- * @param {Decoder} decoder
116
- * @return {Uint8Array}
118
+ * @template {ArrayBufferLike} Buf
119
+ * @param {Decoder<Buf>} decoder
120
+ * @return {Uint8Array<Buf>}
117
121
  */
118
122
  export const readVarUint8Array = decoder => readUint8Array(decoder, readVarUint(decoder))
119
123
 
@@ -0,0 +1,166 @@
1
+ /**
2
+ * @typedef {Array<dops.DeltaJsonOp>} DeltaJson
3
+ */
4
+ /**
5
+ * @template {'array' | 'text' | 'custom'} Type
6
+ * @template {dops.AbstractDeltaArrayOps<any>} OPS
7
+ * @extends {d.AbstractDelta}
8
+ */
9
+ export class AbstractDeltaArray<Type extends "array" | "text" | "custom", OPS extends dops.AbstractDeltaArrayOps<any>> extends d.AbstractDelta {
10
+ /**
11
+ * @param {Type} type
12
+ */
13
+ constructor(type: Type);
14
+ type: Type;
15
+ /**
16
+ * @type {Array<OPS>}
17
+ */
18
+ ops: Array<OPS>;
19
+ /**
20
+ * @template M
21
+ * @param {(d:OPS) => dops.AbstractDeltaArrayOps<M>} f
22
+ * @return {AbstractDeltaArrayBuilder<Type,M>}
23
+ */
24
+ map<M>(f: (d: OPS) => dops.AbstractDeltaArrayOps<M>): AbstractDeltaArrayBuilder<Type, M>;
25
+ /**
26
+ *
27
+ * Iterate through the changes. There are two approches to iterate through the changes. The
28
+ * following examples achieve the same thing:
29
+ *
30
+ * @example
31
+ * d.forEach((op, index) => {
32
+ * if (op instanceof delta.InsertArrayOp) {
33
+ * op.insert
34
+ * } else if (op instanceof delta.RetainOp ) {
35
+ * op.retain
36
+ * } else if (op instanceof delta.DeleteOp) {
37
+ * op.delete
38
+ * }
39
+ * })
40
+ *
41
+ * The second approach doesn't require instanceof checks.
42
+ *
43
+ * @example
44
+ * d.forEach(null,
45
+ * (insertOp, index) => insertOp.insert,
46
+ * (retainOp, index) => insertOp.retain
47
+ * (deleteOp, index) => insertOp.delete
48
+ * )
49
+ *
50
+ * @param {null|((d:OPS,index:number)=>void)} f
51
+ * @param {null|((insertOp:Extract<OPS,InsertOp<any>|TextOp>,index:number)=>void)} insertHandler
52
+ * @param {null|((retainOp:RetainOp,index:number)=>void)} retainHandler
53
+ * @param {null|((deleteOp:DeleteOp,index:number)=>void)} deleteHandler
54
+ * @param {null|((modifyOp:OPS extends ModifyOp<infer M> ? ModifyOp<M> : never,index:number)=>void)} modifyHandler
55
+ */
56
+ forEach(f?: null | ((d: OPS, index: number) => void), insertHandler?: null | ((insertOp: Extract<OPS, InsertOp<any> | TextOp>, index: number) => void), retainHandler?: null | ((retainOp: RetainOp, index: number) => void), deleteHandler?: null | ((deleteOp: DeleteOp, index: number) => void), modifyHandler?: null | ((modifyOp: OPS extends ModifyOp<infer M> ? ModifyOp<M> : never, index: number) => void)): void;
57
+ /**
58
+ * @param {AbstractDeltaArray<Type, OPS>} other
59
+ * @return {boolean}
60
+ */
61
+ equals(other: AbstractDeltaArray<Type, OPS>): boolean;
62
+ /**
63
+ * @returns {DeltaJson}
64
+ */
65
+ toJSON(): DeltaJson;
66
+ get size(): number;
67
+ /**
68
+ * @param {AbstractDeltaArray<Type,OPS>} other
69
+ */
70
+ [traits.EqualityTraitSymbol](other: AbstractDeltaArray<Type, OPS>): boolean;
71
+ }
72
+ /**
73
+ * @template {'text' | 'array' | 'custom'} Type
74
+ * @template {dops.AbstractDeltaArrayOps<any>} OPS
75
+ * @extends {AbstractDeltaArray<Type,OPS>}
76
+ */
77
+ export class AbstractDeltaArrayBuilder<Type extends "text" | "array" | "custom", OPS extends dops.AbstractDeltaArrayOps<any>> extends AbstractDeltaArray<Type, OPS> {
78
+ /**
79
+ * @param {Type} type
80
+ * @param {s.Schema<OPS extends dops.AbstractDeltaArrayOps<infer V> ? V : never>} $insert
81
+ */
82
+ constructor(type: Type, $insert: s.Schema<OPS extends dops.AbstractDeltaArrayOps<infer V> ? V : never>);
83
+ $insert: s.Schema<OPS extends dops.AbstractDeltaArrayOps<infer V extends unknown> ? V : never>;
84
+ /**
85
+ * @type {dops.FormattingAttributes?}
86
+ */
87
+ usedAttributes: dops.FormattingAttributes | null;
88
+ /**
89
+ * @type {d.Attribution?}
90
+ */
91
+ usedAttribution: d.Attribution | null;
92
+ /**
93
+ * @type {dops.AbstractDeltaArrayOps<any>?}
94
+ */
95
+ lastOp: dops.AbstractDeltaArrayOps<any> | null;
96
+ /**
97
+ * @return {this}
98
+ */
99
+ clone(): this;
100
+ /**
101
+ * @param {dops.FormattingAttributes?} attributes
102
+ * @return {this}
103
+ */
104
+ useAttributes(attributes: dops.FormattingAttributes | null): this;
105
+ /**
106
+ * @param {string} name
107
+ * @param {any} value
108
+ */
109
+ updateUsedAttributes(name: string, value: any): this;
110
+ /**
111
+ * @template {keyof d.Attribution} NAME
112
+ * @param {NAME} name
113
+ * @param {d.Attribution[NAME]?} value
114
+ */
115
+ updateUsedAttribution<NAME extends keyof d.Attribution>(name: NAME, value: d.Attribution[NAME] | null): this;
116
+ /**
117
+ * @param {d.Attribution?} attribution
118
+ */
119
+ useAttribution(attribution: d.Attribution | null): this;
120
+ /**
121
+ * @param {(OPS extends TextOp ? string : never) | (OPS extends InsertOp<infer Content> ? Array<Content> : never) } insert
122
+ * @param {dops.FormattingAttributes?} attributes
123
+ * @param {d.Attribution?} attribution
124
+ * @return {this}
125
+ */
126
+ insert(insert: (OPS extends TextOp ? string : never) | (OPS extends InsertOp<infer Content> ? Array<Content> : never), attributes?: dops.FormattingAttributes | null, attribution?: d.Attribution | null): this;
127
+ /**
128
+ * @param {OPS extends ModifyOp<infer Mod> ? Mod : never } modify
129
+ * @param {dops.FormattingAttributes?} attributes
130
+ * @param {d.Attribution?} attribution
131
+ * @return {this}
132
+ */
133
+ modify(modify: OPS extends ModifyOp<infer Mod> ? Mod : never, attributes?: dops.FormattingAttributes | null, attribution?: d.Attribution | null): this;
134
+ /**
135
+ * @param {number} retain
136
+ * @param {dops.FormattingAttributes?} attributes
137
+ * @param {d.Attribution?} attribution
138
+ * @return {this}
139
+ */
140
+ retain(retain: number, attributes?: dops.FormattingAttributes | null, attribution?: d.Attribution | null): this;
141
+ /**
142
+ * @param {number} len
143
+ * @return {this}
144
+ */
145
+ delete(len: number): this;
146
+ /**
147
+ * @todo this is basically untested and is in dire need of randomized testing.
148
+ * @param {AbstractDeltaArray<Type, OPS>} other
149
+ */
150
+ apply(other: AbstractDeltaArray<Type, OPS>): void;
151
+ /**
152
+ * @return {Type extends 'array' ? (OPS extends dops.InsertOp<infer C> ? import('./array.js').DeltaArray<C> : never) : (Type extends 'text' ? (OPS extends dops.DeltaTextOps<infer Embeds> ? import('./text.js').DeltaText<Embeds> : never) : AbstractDeltaArray<Type,OPS>)}
153
+ */
154
+ done(): Type extends "array" ? (OPS extends dops.InsertOp<infer C> ? import("./array.js").DeltaArray<C> : never) : (Type extends "text" ? (OPS extends dops.DeltaTextOps<infer Embeds> ? import("./text.js").DeltaText<Embeds> : never) : AbstractDeltaArray<Type, OPS>);
155
+ }
156
+ export type DeltaJson = Array<dops.DeltaJsonOp>;
157
+ import * as dops from './ops.js';
158
+ import * as d from './abstract.js';
159
+ import { InsertOp } from './ops.js';
160
+ import { TextOp } from './ops.js';
161
+ import { RetainOp } from './ops.js';
162
+ import { DeleteOp } from './ops.js';
163
+ import { ModifyOp } from './ops.js';
164
+ import * as traits from '../traits.js';
165
+ import * as s from '../schema.js';
166
+ //# sourceMappingURL=abstract-array.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-array.d.ts","sourceRoot":"","sources":["abstract-array.js"],"names":[],"mappings":"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"}