@ipld/car 4.1.5 → 5.0.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 (226) hide show
  1. package/LICENSE +4 -0
  2. package/README.md +12 -4
  3. package/dist/index.min.js +5 -0
  4. package/{types → dist/src}/api.d.ts +19 -19
  5. package/dist/src/api.d.ts.map +1 -0
  6. package/{types/lib → dist/src}/buffer-writer.d.ts +10 -10
  7. package/{types/lib → dist/src}/buffer-writer.d.ts.map +1 -1
  8. package/dist/src/coding.d.ts +41 -0
  9. package/dist/src/coding.d.ts.map +1 -0
  10. package/{types/lib → dist/src}/decoder.d.ts +3 -3
  11. package/{types/lib → dist/src}/decoder.d.ts.map +1 -1
  12. package/{types/lib → dist/src}/encoder.d.ts +2 -2
  13. package/{types/lib → dist/src}/encoder.d.ts.map +1 -1
  14. package/{types/lib → dist/src}/header-validator.d.ts +0 -0
  15. package/dist/src/header-validator.d.ts.map +1 -0
  16. package/dist/src/index-browser.d.ts +8 -0
  17. package/dist/src/index-browser.d.ts.map +1 -0
  18. package/dist/src/index.d.ts +9 -0
  19. package/dist/src/index.d.ts.map +1 -0
  20. package/{types/lib → dist/src}/indexed-reader-browser.d.ts +0 -0
  21. package/dist/src/indexed-reader-browser.d.ts.map +1 -0
  22. package/{types/lib → dist/src}/indexed-reader.d.ts +13 -13
  23. package/dist/src/indexed-reader.d.ts.map +1 -0
  24. package/{types/lib → dist/src}/indexer.d.ts +9 -9
  25. package/{types/lib → dist/src}/indexer.d.ts.map +1 -1
  26. package/{types/lib → dist/src}/iterator-channel.d.ts +0 -0
  27. package/{types/lib → dist/src}/iterator-channel.d.ts.map +1 -1
  28. package/{types/lib → dist/src}/iterator.d.ts +8 -8
  29. package/{types/lib → dist/src}/iterator.d.ts.map +1 -1
  30. package/{types/lib → dist/src}/reader-browser.d.ts +10 -10
  31. package/{types/lib → dist/src}/reader-browser.d.ts.map +1 -1
  32. package/{types/lib → dist/src}/reader.d.ts +5 -5
  33. package/{types/lib → dist/src}/reader.d.ts.map +1 -1
  34. package/{types/lib → dist/src}/writer-browser.d.ts +10 -10
  35. package/{types/lib → dist/src}/writer-browser.d.ts.map +1 -1
  36. package/{types/lib → dist/src}/writer.d.ts +4 -4
  37. package/{types/lib → dist/src}/writer.d.ts.map +1 -1
  38. package/package.json +102 -209
  39. package/{api.ts → src/api.ts} +14 -14
  40. package/{lib → src}/buffer-writer.js +5 -5
  41. package/src/coding.ts +56 -0
  42. package/{lib → src}/decoder.js +4 -4
  43. package/{lib → src}/encoder.js +1 -1
  44. package/src/header-validator.js +74 -0
  45. package/{lib → src}/header.ipldsch +0 -0
  46. package/src/index-browser.js +14 -0
  47. package/src/index.js +16 -0
  48. package/{lib → src}/indexed-reader-browser.js +0 -0
  49. package/{lib → src}/indexed-reader.js +9 -9
  50. package/{lib → src}/indexer.js +4 -4
  51. package/{lib → src}/iterator-channel.js +0 -0
  52. package/{lib → src}/iterator.js +4 -4
  53. package/{lib → src}/reader-browser.js +7 -7
  54. package/{lib → src}/reader.js +5 -5
  55. package/{lib → src}/writer-browser.js +7 -7
  56. package/{lib → src}/writer.js +3 -3
  57. package/LICENSE-APACHE +0 -13
  58. package/LICENSE-MIT +0 -7
  59. package/buffer-writer +0 -1
  60. package/car-browser.js +0 -14
  61. package/car.js +0 -16
  62. package/cjs/browser-test/common.js +0 -301
  63. package/cjs/browser-test/node-test-file-streams.js +0 -71
  64. package/cjs/browser-test/node-test-indexed-reader.js +0 -51
  65. package/cjs/browser-test/node-test-large.js +0 -135
  66. package/cjs/browser-test/node-test-raw.js +0 -68
  67. package/cjs/browser-test/node-test-updateroots.js +0 -78
  68. package/cjs/browser-test/test-buffer-writer.js +0 -330
  69. package/cjs/browser-test/test-errors.js +0 -90
  70. package/cjs/browser-test/test-indexer.js +0 -80
  71. package/cjs/browser-test/test-interface.js +0 -21
  72. package/cjs/browser-test/test-iterator.js +0 -83
  73. package/cjs/browser-test/test-reader.js +0 -278
  74. package/cjs/browser-test/test-writer.js +0 -286
  75. package/cjs/browser-test/verify-store-reader.js +0 -142
  76. package/cjs/car-browser.js +0 -18
  77. package/cjs/car.js +0 -20
  78. package/cjs/lib/buffer-writer.js +0 -164
  79. package/cjs/lib/decoder.js +0 -301
  80. package/cjs/lib/encoder.js +0 -44
  81. package/cjs/lib/header-validator.js +0 -29
  82. package/cjs/lib/indexed-reader-browser.js +0 -13
  83. package/cjs/lib/indexed-reader.js +0 -90
  84. package/cjs/lib/indexer.js +0 -41
  85. package/cjs/lib/iterator-channel.js +0 -77
  86. package/cjs/lib/iterator.js +0 -97
  87. package/cjs/lib/reader-browser.js +0 -62
  88. package/cjs/lib/reader.js +0 -38
  89. package/cjs/lib/writer-browser.js +0 -118
  90. package/cjs/lib/writer.js +0 -51
  91. package/cjs/node-test/common.js +0 -301
  92. package/cjs/node-test/node-test-file-streams.js +0 -71
  93. package/cjs/node-test/node-test-indexed-reader.js +0 -51
  94. package/cjs/node-test/node-test-large.js +0 -135
  95. package/cjs/node-test/node-test-raw.js +0 -68
  96. package/cjs/node-test/node-test-updateroots.js +0 -78
  97. package/cjs/node-test/test-buffer-writer.js +0 -330
  98. package/cjs/node-test/test-errors.js +0 -90
  99. package/cjs/node-test/test-indexer.js +0 -80
  100. package/cjs/node-test/test-interface.js +0 -21
  101. package/cjs/node-test/test-iterator.js +0 -83
  102. package/cjs/node-test/test-reader.js +0 -278
  103. package/cjs/node-test/test-writer.js +0 -286
  104. package/cjs/node-test/verify-store-reader.js +0 -142
  105. package/decoder +0 -1
  106. package/esm/browser-test/common.js +0 -274
  107. package/esm/browser-test/node-test-file-streams.js +0 -76
  108. package/esm/browser-test/node-test-indexed-reader.js +0 -53
  109. package/esm/browser-test/node-test-large.js +0 -109
  110. package/esm/browser-test/node-test-raw.js +0 -63
  111. package/esm/browser-test/node-test-updateroots.js +0 -76
  112. package/esm/browser-test/test-buffer-writer.js +0 -311
  113. package/esm/browser-test/test-errors.js +0 -91
  114. package/esm/browser-test/test-indexer.js +0 -85
  115. package/esm/browser-test/test-interface.js +0 -24
  116. package/esm/browser-test/test-iterator.js +0 -91
  117. package/esm/browser-test/test-reader.js +0 -270
  118. package/esm/browser-test/test-writer.js +0 -297
  119. package/esm/browser-test/verify-store-reader.js +0 -122
  120. package/esm/car-browser.js +0 -16
  121. package/esm/car.js +0 -18
  122. package/esm/lib/buffer-writer.js +0 -129
  123. package/esm/lib/decoder.js +0 -265
  124. package/esm/lib/encoder.js +0 -35
  125. package/esm/lib/header-validator.js +0 -23
  126. package/esm/lib/indexed-reader-browser.js +0 -6
  127. package/esm/lib/indexed-reader.js +0 -78
  128. package/esm/lib/indexer.js +0 -38
  129. package/esm/lib/iterator-channel.js +0 -71
  130. package/esm/lib/iterator.js +0 -92
  131. package/esm/lib/reader-browser.js +0 -57
  132. package/esm/lib/reader.js +0 -26
  133. package/esm/lib/writer-browser.js +0 -115
  134. package/esm/lib/writer.js +0 -42
  135. package/esm/node-test/common.js +0 -274
  136. package/esm/node-test/node-test-file-streams.js +0 -76
  137. package/esm/node-test/node-test-indexed-reader.js +0 -53
  138. package/esm/node-test/node-test-large.js +0 -109
  139. package/esm/node-test/node-test-raw.js +0 -63
  140. package/esm/node-test/node-test-updateroots.js +0 -76
  141. package/esm/node-test/test-buffer-writer.js +0 -311
  142. package/esm/node-test/test-errors.js +0 -91
  143. package/esm/node-test/test-indexer.js +0 -85
  144. package/esm/node-test/test-interface.js +0 -24
  145. package/esm/node-test/test-iterator.js +0 -91
  146. package/esm/node-test/test-reader.js +0 -270
  147. package/esm/node-test/test-writer.js +0 -297
  148. package/esm/node-test/verify-store-reader.js +0 -122
  149. package/esm/package.json +0 -9
  150. package/examples/car-to-fixture.js +0 -66
  151. package/examples/dump-car.js +0 -58
  152. package/examples/dump-index.js +0 -24
  153. package/examples/package.json +0 -27
  154. package/examples/round-trip.js +0 -45
  155. package/examples/test-examples.js +0 -115
  156. package/examples/verify-car.js +0 -87
  157. package/index.js +0 -1
  158. package/indexed-reader +0 -1
  159. package/indexer +0 -1
  160. package/iterator +0 -1
  161. package/lib/coding.ts +0 -56
  162. package/lib/header-validator.js +0 -33
  163. package/reader +0 -1
  164. package/test/_fixtures_to_js.mjs +0 -24
  165. package/test/common.js +0 -210
  166. package/test/go.car +0 -0
  167. package/test/go.carv2 +0 -0
  168. package/test/node-test-file-streams.js +0 -84
  169. package/test/node-test-indexed-reader.js +0 -45
  170. package/test/node-test-large.js +0 -112
  171. package/test/node-test-raw.js +0 -83
  172. package/test/node-test-updateroots.js +0 -89
  173. package/test/test-buffer-writer.js +0 -256
  174. package/test/test-errors.js +0 -98
  175. package/test/test-indexer.js +0 -87
  176. package/test/test-interface.js +0 -24
  177. package/test/test-iterator.js +0 -74
  178. package/test/test-reader.js +0 -245
  179. package/test/test-writer.js +0 -336
  180. package/test/verify-store-reader.js +0 -191
  181. package/tsconfig.json +0 -48
  182. package/types/api.d.ts.map +0 -1
  183. package/types/car-browser.d.ts +0 -8
  184. package/types/car-browser.d.ts.map +0 -1
  185. package/types/car.d.ts +0 -9
  186. package/types/car.d.ts.map +0 -1
  187. package/types/lib/coding.d.ts +0 -41
  188. package/types/lib/coding.d.ts.map +0 -1
  189. package/types/lib/header-validator.d.ts.map +0 -1
  190. package/types/lib/indexed-reader-browser.d.ts.map +0 -1
  191. package/types/lib/indexed-reader.d.ts.map +0 -1
  192. package/types/test/_fixtures_to_js.d.mts +0 -3
  193. package/types/test/_fixtures_to_js.d.mts.map +0 -1
  194. package/types/test/common.d.ts +0 -73
  195. package/types/test/common.d.ts.map +0 -1
  196. package/types/test/fixtures-expectations.d.ts +0 -63
  197. package/types/test/fixtures-expectations.d.ts.map +0 -1
  198. package/types/test/fixtures.d.ts +0 -3
  199. package/types/test/fixtures.d.ts.map +0 -1
  200. package/types/test/node-test-file-streams.d.ts +0 -3
  201. package/types/test/node-test-file-streams.d.ts.map +0 -1
  202. package/types/test/node-test-indexed-reader.d.ts +0 -2
  203. package/types/test/node-test-indexed-reader.d.ts.map +0 -1
  204. package/types/test/node-test-large.d.ts +0 -2
  205. package/types/test/node-test-large.d.ts.map +0 -1
  206. package/types/test/node-test-raw.d.ts +0 -2
  207. package/types/test/node-test-raw.d.ts.map +0 -1
  208. package/types/test/node-test-updateroots.d.ts +0 -2
  209. package/types/test/node-test-updateroots.d.ts.map +0 -1
  210. package/types/test/test-buffer-writer.d.ts +0 -2
  211. package/types/test/test-buffer-writer.d.ts.map +0 -1
  212. package/types/test/test-errors.d.ts +0 -2
  213. package/types/test/test-errors.d.ts.map +0 -1
  214. package/types/test/test-indexer.d.ts +0 -2
  215. package/types/test/test-indexer.d.ts.map +0 -1
  216. package/types/test/test-interface.d.ts +0 -2
  217. package/types/test/test-interface.d.ts.map +0 -1
  218. package/types/test/test-iterator.d.ts +0 -2
  219. package/types/test/test-iterator.d.ts.map +0 -1
  220. package/types/test/test-reader.d.ts +0 -2
  221. package/types/test/test-reader.d.ts.map +0 -1
  222. package/types/test/test-writer.d.ts +0 -2
  223. package/types/test/test-writer.d.ts.map +0 -1
  224. package/types/test/verify-store-reader.d.ts +0 -29
  225. package/types/test/verify-store-reader.d.ts.map +0 -1
  226. package/writer +0 -1
@@ -6,8 +6,8 @@
6
6
  export function decodeReaderComplete(reader: BytesReader): Promise<CarReader>;
7
7
  /**
8
8
  * @typedef {import('multiformats').CID} CID
9
- * @typedef {import('../api').Block} Block
10
- * @typedef {import('../api').CarReader} CarReaderIface
9
+ * @typedef {import('./api').Block} Block
10
+ * @typedef {import('./api').CarReader} CarReaderIface
11
11
  * @typedef {import('./coding').BytesReader} BytesReader
12
12
  * @typedef {import('./coding').CarHeader} CarHeader
13
13
  * @typedef {import('./coding').CarV2Header} CarV2Header
@@ -70,7 +70,7 @@ export class CarReader implements CarReaderIface {
70
70
  */
71
71
  constructor(header: CarHeader | CarV2Header, blocks: Block[]);
72
72
  _header: import("./coding").CarHeader | import("./coding").CarV2Header;
73
- _blocks: import("../api").Block[];
73
+ _blocks: import("./api").Block[];
74
74
  _keys: string[];
75
75
  /**
76
76
  * @property
@@ -82,7 +82,7 @@ export class CarReader implements CarReaderIface {
82
82
  * Get the list of roots defined by the CAR referenced by this reader. May be
83
83
  * zero or more `CID`s.
84
84
  *
85
- * @method
85
+ * @function
86
86
  * @memberof CarReader
87
87
  * @instance
88
88
  * @async
@@ -93,7 +93,7 @@ export class CarReader implements CarReaderIface {
93
93
  * Check whether a given `CID` exists within the CAR referenced by this
94
94
  * reader.
95
95
  *
96
- * @method
96
+ * @function
97
97
  * @memberof CarReader
98
98
  * @instance
99
99
  * @async
@@ -107,7 +107,7 @@ export class CarReader implements CarReaderIface {
107
107
  * the provided `CID` doesn't exist within the CAR, `undefined` will be
108
108
  * returned.
109
109
  *
110
- * @method
110
+ * @function
111
111
  * @memberof CarReader
112
112
  * @instance
113
113
  * @async
@@ -120,7 +120,7 @@ export class CarReader implements CarReaderIface {
120
120
  * of the `Block`s (`{ cid:CID, bytes:Uint8Array }` pairs) contained within
121
121
  * the CAR referenced by this reader.
122
122
  *
123
- * @method
123
+ * @function
124
124
  * @memberof CarReader
125
125
  * @instance
126
126
  * @async
@@ -132,7 +132,7 @@ export class CarReader implements CarReaderIface {
132
132
  * Returns a `CIDIterator` (`AsyncIterable<CID>`) that iterates over all of
133
133
  * the `CID`s contained within the CAR referenced by this reader.
134
134
  *
135
- * @method
135
+ * @function
136
136
  * @memberof CarReader
137
137
  * @instance
138
138
  * @async
@@ -143,8 +143,8 @@ export class CarReader implements CarReaderIface {
143
143
  }
144
144
  export const __browser: true;
145
145
  export type CID = import('multiformats').CID;
146
- export type Block = import('../api').Block;
147
- export type CarReaderIface = import('../api').CarReader;
146
+ export type Block = import('./api').Block;
147
+ export type CarReaderIface = import('./api').CarReader;
148
148
  export type BytesReader = import('./coding').BytesReader;
149
149
  export type CarHeader = import('./coding').CarHeader;
150
150
  export type CarV2Header = import('./coding').CarV2Header;
@@ -1 +1 @@
1
- {"version":3,"file":"reader-browser.d.ts","sourceRoot":"","sources":["../../lib/reader-browser.js"],"names":[],"mappings":"AA2LA;;;;GAIG;AACH,6CAHW,WAAW,GACT,QAAQ,SAAS,CAAC,CAa9B;AAzMD;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;IA6GE;;;;;;;;;;OAUG;IACH,wBAHW,UAAU,GACR,QAAQ,SAAS,CAAC,CAS9B;IAED;;;;;;;;;;;;;;;OAeG;IACH,mCAHW,cAAc,UAAU,CAAC,GACvB,QAAQ,SAAS,CAAC,CAS9B;IAvJD;;;;OAIG;IACH,oBAHW,SAAS,GAAC,WAAW,UACrB,KAAK,EAAE,EAMjB;IAHC,uEAAqB;IACrB,kCAAqB;IACrB,gBAAgD;IAGlD;;;;OAIG;IACH,qBAEC;IAED;;;;;;;;;OASG;IACH,YAFa,QAAQ,GAAG,EAAE,CAAC,CAM1B;IAED;;;;;;;;;;OAUG;IACH,SAHW,GAAG,GACD,QAAQ,OAAO,CAAC,CAM5B;IAED;;;;;;;;;;;;OAYG;IACH,SAHW,GAAG,GACD,QAAQ,KAAK,GAAG,SAAS,CAAC,CAOtC;IAED;;;;;;;;;;;OAWG;IACH,UAFa,eAAe,KAAK,CAAC,CAMjC;IAED;;;;;;;;;;OAUG;IACH,QAFa,eAAe,GAAG,CAAC,CAM/B;CA8CF;AAoBD,6BAA6B;kBA1MhB,OAAO,cAAc,EAAE,GAAG;oBAC1B,OAAO,QAAQ,EAAE,KAAK;6BACtB,OAAO,QAAQ,EAAE,SAAS;0BAC1B,OAAO,UAAU,EAAE,WAAW;wBAC9B,OAAO,UAAU,EAAE,SAAS;0BAC5B,OAAO,UAAU,EAAE,WAAW"}
1
+ {"version":3,"file":"reader-browser.d.ts","sourceRoot":"","sources":["../../src/reader-browser.js"],"names":[],"mappings":"AA2LA;;;;GAIG;AACH,6CAHW,WAAW,GACT,QAAQ,SAAS,CAAC,CAa9B;AAzMD;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;IA6GE;;;;;;;;;;OAUG;IACH,wBAHW,UAAU,GACR,QAAQ,SAAS,CAAC,CAS9B;IAED;;;;;;;;;;;;;;;OAeG;IACH,mCAHW,cAAc,UAAU,CAAC,GACvB,QAAQ,SAAS,CAAC,CAS9B;IAvJD;;;;OAIG;IACH,oBAHW,SAAS,GAAC,WAAW,UACrB,KAAK,EAAE,EAMjB;IAHC,uEAAqB;IACrB,iCAAqB;IACrB,gBAAgD;IAGlD;;;;OAIG;IACH,qBAEC;IAED;;;;;;;;;OASG;IACH,YAFa,QAAQ,GAAG,EAAE,CAAC,CAM1B;IAED;;;;;;;;;;OAUG;IACH,SAHW,GAAG,GACD,QAAQ,OAAO,CAAC,CAM5B;IAED;;;;;;;;;;;;OAYG;IACH,SAHW,GAAG,GACD,QAAQ,KAAK,GAAG,SAAS,CAAC,CAOtC;IAED;;;;;;;;;;;OAWG;IACH,UAFa,eAAe,KAAK,CAAC,CAMjC;IAED;;;;;;;;;;OAUG;IACH,QAFa,eAAe,GAAG,CAAC,CAM/B;CA8CF;AAoBD,6BAA6B;kBA1MhB,OAAO,cAAc,EAAE,GAAG;oBAC1B,OAAO,OAAO,EAAE,KAAK;6BACrB,OAAO,OAAO,EAAE,SAAS;0BACzB,OAAO,UAAU,EAAE,WAAW;wBAC9B,OAAO,UAAU,EAAE,SAAS;0BAC5B,OAAO,UAAU,EAAE,WAAW"}
@@ -16,10 +16,10 @@ export class CarReader extends BrowserCarReader implements CarReaderIface {
16
16
  * @async
17
17
  * @static
18
18
  * @memberof CarReader
19
- * @param {fs.promises.FileHandle | number} fd A file descriptor from the
19
+ * @param {fs.promises.FileHandle | number} fd - A file descriptor from the
20
20
  * Node.js `fs` module. Either an integer, from `fs.open()` or a `FileHandle`
21
21
  * from `fs.promises.open()`.
22
- * @param {BlockIndex} blockIndex An index pointing to the location of the
22
+ * @param {BlockIndex} blockIndex - An index pointing to the location of the
23
23
  * Block required. This `BlockIndex` should take the form:
24
24
  * `{cid:CID, blockLength:number, blockOffset:number}`.
25
25
  * @returns {Promise<Block>} A `{ cid:CID, bytes:Uint8Array }` pair.
@@ -27,9 +27,9 @@ export class CarReader extends BrowserCarReader implements CarReaderIface {
27
27
  static readRaw(fd: fs.promises.FileHandle | number, blockIndex: BlockIndex): Promise<Block>;
28
28
  }
29
29
  export const __browser: false;
30
- export type Block = import('../api').Block;
31
- export type BlockIndex = import('../api').BlockIndex;
32
- export type CarReaderIface = import('../api').CarReader;
30
+ export type Block = import('./api').Block;
31
+ export type BlockIndex = import('./api').BlockIndex;
32
+ export type CarReaderIface = import('./api').CarReader;
33
33
  import { CarReader as BrowserCarReader } from "./reader-browser.js";
34
34
  import fs from "fs";
35
35
  //# sourceMappingURL=reader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../lib/reader.js"],"names":[],"mappings":";AAYA;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,mBARW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,cAG/B,UAAU,GAGR,QAAQ,KAAK,CAAC,CAmB1B;CACF;AAED,8BAA8B;oBApDjB,OAAO,QAAQ,EAAE,KAAK;yBACtB,OAAO,QAAQ,EAAE,UAAU;6BAC3B,OAAO,QAAQ,EAAE,SAAS"}
1
+ {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/reader.js"],"names":[],"mappings":";AAYA;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,mBARW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,cAG/B,UAAU,GAGR,QAAQ,KAAK,CAAC,CAmB1B;CACF;AAED,8BAA8B;oBApDjB,OAAO,OAAO,EAAE,KAAK;yBACrB,OAAO,OAAO,EAAE,UAAU;6BAC1B,OAAO,OAAO,EAAE,SAAS"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * @typedef {import('../api').Block} Block
3
- * @typedef {import('../api').BlockWriter} BlockWriter
4
- * @typedef {import('../api').WriterChannel} WriterChannel
2
+ * @typedef {import('./api').Block} Block
3
+ * @typedef {import('./api').BlockWriter} BlockWriter
4
+ * @typedef {import('./api').WriterChannel} WriterChannel
5
5
  * @typedef {import('./coding').CarEncoder} CarEncoder
6
6
  * @typedef {import('./coding').IteratorChannel<Uint8Array>} IteratorChannel
7
7
  */
@@ -86,7 +86,7 @@ export class CarWriter implements BlockWriter {
86
86
  * @static
87
87
  * @memberof CarWriter
88
88
  * @param {Uint8Array} bytes
89
- * @param {CID[]} roots A new list of roots to replace the existing list in
89
+ * @param {CID[]} roots - A new list of roots to replace the existing list in
90
90
  * the CAR header. The new header must take up the same number of bytes as the
91
91
  * existing header, so the roots should collectively be the same byte length
92
92
  * as the existing roots.
@@ -105,11 +105,11 @@ export class CarWriter implements BlockWriter {
105
105
  /**
106
106
  * Write a `Block` (a `{ cid:CID, bytes:Uint8Array }` pair) to the archive.
107
107
  *
108
- * @method
108
+ * @function
109
109
  * @memberof CarWriter
110
110
  * @instance
111
111
  * @async
112
- * @param {Block} block A `{ cid:CID, bytes:Uint8Array }` pair.
112
+ * @param {Block} block - A `{ cid:CID, bytes:Uint8Array }` pair.
113
113
  * @returns {Promise<void>} The returned promise will only resolve once the
114
114
  * bytes this block generates are written to the `out` iterable.
115
115
  */
@@ -118,7 +118,7 @@ export class CarWriter implements BlockWriter {
118
118
  * Finalise the CAR archive and signal that the `out` iterable should end once
119
119
  * any remaining bytes are written.
120
120
  *
121
- * @method
121
+ * @function
122
122
  * @memberof CarWriter
123
123
  * @instance
124
124
  * @async
@@ -140,9 +140,9 @@ export class CarWriterOut implements AsyncIterable<Uint8Array> {
140
140
  [Symbol.asyncIterator](): AsyncIterator<Uint8Array, any, undefined>;
141
141
  }
142
142
  export const __browser: true;
143
- export type Block = import('../api').Block;
144
- export type BlockWriter = import('../api').BlockWriter;
145
- export type WriterChannel = import('../api').WriterChannel;
143
+ export type Block = import('./api').Block;
144
+ export type BlockWriter = import('./api').BlockWriter;
145
+ export type WriterChannel = import('./api').WriterChannel;
146
146
  export type CarEncoder = import('./coding').CarEncoder;
147
147
  export type IteratorChannel = import('./coding').IteratorChannel<Uint8Array>;
148
148
  import { CID } from "multiformats/cid";
@@ -1 +1 @@
1
- {"version":3,"file":"writer-browser.d.ts","sourceRoot":"","sources":["../../lib/writer-browser.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH;IA6DE;;;;;;;;;;OAUG;IACH,qBAJW,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAChB,aAAa,CASzB;IAED;;;;;;;;;;;;;OAaG;IACH,yBAHa,aAAa,CASzB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iCAPW,UAAU,SACV,GAAG,EAAE,GAIH,QAAQ,UAAU,CAAC,CAa/B;IAvID;;;OAGG;IACH,mBAHW,GAAG,EAAE,WACL,UAAU,EAOpB;IAJC,wCAAuB;IACvB,4BAA4B;IAC5B,QADW,QAAQ,IAAI,CAAC,CACa;IACrC,gBAAmB;IAGrB;;;;;;;;;;OAUG;IACH,WAJW,KAAK,GACH,QAAQ,IAAI,CAAC,CAkBzB;IAED;;;;;;;;;OASG;IACH,SAFa,QAAQ,IAAI,CAAC,CAWzB;CA8EF;AAED;;;GAGG;AACH,mDAF8B,UAAU;IAGtC;;OAEG;IACH,sBAFW,cAAc,UAAU,CAAC,EAInC;IADC,qDAAyB;IAOzB,gCAAsB;IAJxB,oEAMC;CACF;AAuCD,6BAA6B;oBAhPhB,OAAO,QAAQ,EAAE,KAAK;0BACtB,OAAO,QAAQ,EAAE,WAAW;4BAC5B,OAAO,QAAQ,EAAE,aAAa;yBAC9B,OAAO,UAAU,EAAE,UAAU;8BAC7B,OAAO,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC"}
1
+ {"version":3,"file":"writer-browser.d.ts","sourceRoot":"","sources":["../../src/writer-browser.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH;IA6DE;;;;;;;;;;OAUG;IACH,qBAJW,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAChB,aAAa,CASzB;IAED;;;;;;;;;;;;;OAaG;IACH,yBAHa,aAAa,CASzB;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iCAPW,UAAU,SACV,GAAG,EAAE,GAIH,QAAQ,UAAU,CAAC,CAa/B;IAvID;;;OAGG;IACH,mBAHW,GAAG,EAAE,WACL,UAAU,EAOpB;IAJC,wCAAuB;IACvB,4BAA4B;IAC5B,QADW,QAAQ,IAAI,CAAC,CACa;IACrC,gBAAmB;IAGrB;;;;;;;;;;OAUG;IACH,WAJW,KAAK,GACH,QAAQ,IAAI,CAAC,CAkBzB;IAED;;;;;;;;;OASG;IACH,SAFa,QAAQ,IAAI,CAAC,CAWzB;CA8EF;AAED;;;GAGG;AACH,mDAF8B,UAAU;IAGtC;;OAEG;IACH,sBAFW,cAAc,UAAU,CAAC,EAInC;IADC,qDAAyB;IAOzB,gCAAsB;IAJxB,oEAMC;CACF;AAuCD,6BAA6B;oBAhPhB,OAAO,OAAO,EAAE,KAAK;0BACrB,OAAO,OAAO,EAAE,WAAW;4BAC3B,OAAO,OAAO,EAAE,aAAa;yBAC7B,OAAO,UAAU,EAAE,UAAU;8BAC7B,OAAO,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  /**
3
3
  * @typedef {import('multiformats/cid').CID} CID
4
- * @typedef {import('../api').BlockWriter} BlockWriter
4
+ * @typedef {import('./api').BlockWriter} BlockWriter
5
5
  */
6
6
  /**
7
7
  * @class
@@ -26,10 +26,10 @@ export class CarWriter extends BrowserCarWriter implements BlockWriter {
26
26
  * @async
27
27
  * @static
28
28
  * @memberof CarWriter
29
- * @param {fs.promises.FileHandle | number} fd A file descriptor from the
29
+ * @param {fs.promises.FileHandle | number} fd - A file descriptor from the
30
30
  * Node.js `fs` module. Either an integer, from `fs.open()` or a `FileHandle`
31
31
  * from `fs.promises.open()`.
32
- * @param {CID[]} roots A new list of roots to replace the existing list in
32
+ * @param {CID[]} roots - A new list of roots to replace the existing list in
33
33
  * the CAR header. The new header must take up the same number of bytes as the
34
34
  * existing header, so the roots should collectively be the same byte length
35
35
  * as the existing roots.
@@ -39,7 +39,7 @@ export class CarWriter extends BrowserCarWriter implements BlockWriter {
39
39
  }
40
40
  export const __browser: false;
41
41
  export type CID = import('multiformats/cid').CID;
42
- export type BlockWriter = import('../api').BlockWriter;
42
+ export type BlockWriter = import('./api').BlockWriter;
43
43
  import { CarWriter as BrowserCarWriter } from "./writer-browser.js";
44
44
  import fs from "fs";
45
45
  //# sourceMappingURL=writer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../lib/writer.js"],"names":[],"mappings":";AASA;;;GAGG;AAEH;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,6BATW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,SAG/B,GAAG,EAAE,GAIH,QAAQ,IAAI,CAAC,CAqCzB;CACF;AAED,8BAA8B;kBA1EjB,OAAO,kBAAkB,EAAE,GAAG;0BAC9B,OAAO,QAAQ,EAAE,WAAW"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/writer.js"],"names":[],"mappings":";AASA;;;GAGG;AAEH;;;GAGG;AACH;IACE;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,6BATW,GAAG,QAAQ,CAAC,UAAU,GAAG,MAAM,SAG/B,GAAG,EAAE,GAIH,QAAQ,IAAI,CAAC,CAqCzB;CACF;AAED,8BAA8B;kBA1EjB,OAAO,kBAAkB,EAAE,GAAG;0BAC9B,OAAO,OAAO,EAAE,WAAW"}
package/package.json CHANGED
@@ -1,250 +1,143 @@
1
1
  {
2
2
  "name": "@ipld/car",
3
- "version": "4.1.5",
3
+ "version": "5.0.0",
4
4
  "description": "Content Addressable aRchive format reader and writer",
5
- "main": "./cjs/car.js",
6
- "types": "./types/car.d.ts",
7
- "scripts": {
8
- "lint": "standard",
9
- "build": "npm run build:js && npm run build:types",
10
- "build:js": "ipjs build --tests --main && npm run build:copy",
11
- "build:copy": "mkdir -p dist/examples/ && cp -a tsconfig.json .npmignore *.js *.ts lib test dist/ && cp examples/*.* dist/examples/ && rm -rf dist/test/fixtures/",
12
- "build:types": "tsc --build && mv types dist",
13
- "test:cjs": "rm -rf dist && npm run build && cp test/go.car dist/cjs/node-test/ && mocha dist/cjs/node-test/test-*.js && mocha dist/cjs/node-test/node-test-*.js && npm run test:cjs:browser",
14
- "test:esm": "rm -rf dist && npm run build && cp test/go.car dist/esm/node-test/ && mocha dist/esm/node-test/test-*.js && mocha dist/esm/node-test/node-test-*.js && npm run test:esm:browser",
15
- "test:node": "c8 --check-coverage --branches 100 --functions 100 --lines 100 --exclude lib/header-validator.js --exclude test/ mocha test/test-*.js test/node-test-*.js",
16
- "test:cjs:browser": "polendina --page --worker --serviceworker --cleanup dist/cjs/browser-test/test-*.js",
17
- "test:esm:browser": "polendina --page --worker --serviceworker --cleanup dist/esm/browser-test/test-*.js",
18
- "test": "npm run lint && npm run test:node && npm run test:cjs && npm run test --prefix examples/",
19
- "test:ci": "npm run lint && npm run test:node && npm run test:esm && npm run test:cjs && npm run test --prefix examples/",
20
- "coverage": "c8 --reporter=html --reporter=text mocha test/test-*.js && npx st -d coverage -p 8888",
21
- "docs": "jsdoc4readme --readme --description-only lib/reader*.js lib/indexed-reader.js lib/iterator.js lib/indexer.js lib/writer*.js lib/buffer-writer.js lib/decoder.js"
5
+ "author": "Rod <rod@vagg.org> (http://r.va.gg/)",
6
+ "license": "Apache-2.0 OR MIT",
7
+ "homepage": "https://github.com/ipld/js-car#readme",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/ipld/js-car.git"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/ipld/js-car/issues"
22
14
  },
23
15
  "keywords": [
24
16
  "car",
25
- "ipld",
26
17
  "ipfs",
18
+ "ipld",
27
19
  "multiformats"
28
20
  ],
29
- "author": "Rod <rod@vagg.org> (http://r.va.gg/)",
30
- "license": "(Apache-2.0 AND MIT)",
21
+ "engines": {
22
+ "node": ">=16.0.0",
23
+ "npm": ">=7.0.0"
24
+ },
25
+ "type": "module",
26
+ "types": "./dist/src/index.d.ts",
27
+ "typesVersions": {
28
+ "*": {
29
+ "*": [
30
+ "*",
31
+ "dist/*",
32
+ "dist/src/*",
33
+ "dist/src/*/index"
34
+ ],
35
+ "src/*": [
36
+ "*",
37
+ "dist/*",
38
+ "dist/src/*",
39
+ "dist/src/*/index"
40
+ ]
41
+ }
42
+ },
43
+ "files": [
44
+ "src",
45
+ "dist",
46
+ "!dist/test",
47
+ "!**/*.tsbuildinfo"
48
+ ],
31
49
  "exports": {
32
50
  ".": {
33
- "browser": "./esm/car-browser.js",
34
- "require": "./cjs/car.js",
35
- "import": "./esm/car.js"
51
+ "types": "./dist/src/index.d.ts",
52
+ "import": "./src/index.js",
53
+ "browser": "./src/index-browser.js"
36
54
  },
37
- "./decoder": {
38
- "browser": "./esm/lib/decoder.js",
39
- "require": "./cjs/lib/decoder.js",
40
- "import": "./esm/lib/decoder.js"
55
+ "./buffer-writer": {
56
+ "types": "./dist/src/buffer-writer.d.ts",
57
+ "import": "./src/buffer-writer.js"
41
58
  },
42
- "./reader": {
43
- "browser": "./esm/lib/reader-browser.js",
44
- "require": "./cjs/lib/reader.js",
45
- "import": "./esm/lib/reader.js"
59
+ "./decoder": {
60
+ "types": "./dist/src/decoder.d.ts",
61
+ "import": "./src/decoder.js"
46
62
  },
47
63
  "./indexed-reader": {
48
- "browser": "./esm/lib/indexed-reader-browser.js",
49
- "require": "./cjs/lib/indexed-reader.js",
50
- "import": "./esm/lib/indexed-reader.js"
64
+ "types": "./dist/src/indexed-reader.d.ts",
65
+ "browser": "./src/indexed-reader-browser.js",
66
+ "import": "./src/indexed-reader.js"
51
67
  },
52
68
  "./indexer": {
53
- "browser": "./esm/lib/indexer.js",
54
- "require": "./cjs/lib/indexer.js",
55
- "import": "./esm/lib/indexer.js"
69
+ "types": "./dist/src/indexer.d.ts",
70
+ "import": "./src/indexer.js"
56
71
  },
57
72
  "./iterator": {
58
- "browser": "./esm/lib/iterator.js",
59
- "require": "./cjs/lib/iterator.js",
60
- "import": "./esm/lib/iterator.js"
73
+ "types": "./dist/src/iterator.d.ts",
74
+ "import": "./src/iterator.js"
61
75
  },
62
- "./writer": {
63
- "browser": "./esm/lib/writer-browser.js",
64
- "require": "./cjs/lib/writer.js",
65
- "import": "./esm/lib/writer.js"
76
+ "./reader": {
77
+ "types": "./dist/src/reader.d.ts",
78
+ "browser": "./src/reader-browser.js",
79
+ "import": "./src/reader.js"
66
80
  },
67
- "./buffer-writer": {
68
- "browser": "./esm/lib/buffer-writer.js",
69
- "require": "./cjs/lib/buffer-writer.js",
70
- "import": "./esm/lib/buffer-writer.js"
81
+ "./writer": {
82
+ "types": "./dist/src/writer.d.ts",
83
+ "browser": "./src/writer-browser.js",
84
+ "import": "./src/writer.js"
71
85
  }
72
86
  },
87
+ "eslintConfig": {
88
+ "extends": "ipfs",
89
+ "parserOptions": {
90
+ "sourceType": "module"
91
+ }
92
+ },
93
+ "scripts": {
94
+ "clean": "aegir clean",
95
+ "lint": "aegir lint",
96
+ "build": "aegir build",
97
+ "release": "aegir release",
98
+ "test": "npm run lint && aegir test && npm run test:examples",
99
+ "test:node": "aegir test -t node --cov",
100
+ "test:chrome": "aegir test -t browser --cov",
101
+ "test:chrome-webworker": "aegir test -t webworker",
102
+ "test:firefox": "aegir test -t browser -- --browser firefox",
103
+ "test:firefox-webworker": "aegir test -t webworker -- --browser firefox",
104
+ "test:electron-main": "aegir test -t electron-main",
105
+ "test:examples": "npm run test --prefix examples/",
106
+ "dep-check": "aegir dep-check",
107
+ "coverage": "c8 --reporter=html --reporter=text mocha test/test-*.js && npx st -d coverage -p 8888",
108
+ "docs": "jsdoc4readme --readme --description-only src/reader*.js src/indexed-reader.js src/iterator.js src/indexer.js src/writer*.js src/buffer-writer.js src/decoder.js"
109
+ },
73
110
  "dependencies": {
74
- "@ipld/dag-cbor": "^7.0.0",
111
+ "@ipld/dag-cbor": "^8.0.0",
75
112
  "cborg": "^1.9.0",
76
- "multiformats": "^9.5.4",
113
+ "multiformats": "^10.0.2",
77
114
  "varint": "^6.0.0"
78
115
  },
79
116
  "devDependencies": {
80
- "@ipld/dag-pb": "^2.1.14",
81
- "@types/chai": "^4.3.0",
82
- "@types/chai-as-promised": "^7.1.4",
83
- "@types/mocha": "^9.0.0",
117
+ "@ipld/dag-pb": "^3.0.0",
118
+ "@ipld/garbage": "^6.0.0",
84
119
  "@types/node": "^18.0.0",
85
120
  "@types/varint": "^6.0.0",
86
121
  "@typescript-eslint/eslint-plugin": "^5.6.0",
87
122
  "@typescript-eslint/parser": "^5.6.0",
88
- "c8": "^7.10.0",
89
- "chai": "^4.3.4",
90
- "chai-as-promised": "^7.1.1",
91
- "ipjs": "^5.2.0",
92
- "ipld-garbage": "^5.0.0",
93
- "jsdoc4readme": "^1.4.0",
94
- "mocha": "^10.0.0",
95
- "polendina": "~3.1.0",
96
- "standard": "^17.0.0",
97
- "typescript": "~4.8.2"
98
- },
99
- "standard": {
100
- "ignore": [
101
- "dist"
102
- ]
123
+ "aegir": "^37.5.6",
124
+ "jsdoc4readme": "^1.4.0"
103
125
  },
104
126
  "directories": {
105
127
  "test": "test"
106
128
  },
107
- "repository": {
108
- "type": "git",
109
- "url": "git+https://github.com/ipld/js-car.git"
110
- },
111
- "bugs": {
112
- "url": "https://github.com/ipld/js-car/issues"
113
- },
114
- "homepage": "https://github.com/ipld/js-car#readme",
115
- "typesVersions": {
116
- "*": {
117
- "reader": [
118
- "types/lib/reader.d.ts"
119
- ],
120
- "decoder": [
121
- "types/lib/decoder.d.ts"
122
- ],
123
- "indexed-reader": [
124
- "types/lib/indexed-reader.d.ts"
125
- ],
126
- "indexer": [
127
- "types/lib/indexer.d.ts"
128
- ],
129
- "iterator": [
130
- "types/lib/iterator.d.ts"
131
- ],
132
- "writer": [
133
- "types/lib/writer.d.ts"
134
- ],
135
- "buffer-writer": [
136
- "types/lib/buffer-writer.d.ts"
137
- ],
138
- "*": [
139
- "types/*"
140
- ],
141
- "types/*": [
142
- "types/*"
143
- ]
144
- }
145
- },
146
- "release": {
147
- "branches": [
148
- "master"
149
- ],
150
- "plugins": [
151
- [
152
- "@semantic-release/commit-analyzer",
153
- {
154
- "preset": "conventionalcommits",
155
- "releaseRules": [
156
- {
157
- "breaking": true,
158
- "release": "major"
159
- },
160
- {
161
- "revert": true,
162
- "release": "patch"
163
- },
164
- {
165
- "type": "feat",
166
- "release": "minor"
167
- },
168
- {
169
- "type": "fix",
170
- "release": "patch"
171
- },
172
- {
173
- "type": "chore",
174
- "release": "patch"
175
- },
176
- {
177
- "type": "docs",
178
- "release": "patch"
179
- },
180
- {
181
- "type": "test",
182
- "release": "patch"
183
- },
184
- {
185
- "scope": "no-release",
186
- "release": false
187
- }
188
- ]
189
- }
190
- ],
191
- [
192
- "@semantic-release/release-notes-generator",
193
- {
194
- "preset": "conventionalcommits",
195
- "presetConfig": {
196
- "types": [
197
- {
198
- "type": "feat",
199
- "section": "Features"
200
- },
201
- {
202
- "type": "fix",
203
- "section": "Bug Fixes"
204
- },
205
- {
206
- "type": "chore",
207
- "section": "Trivial Changes"
208
- },
209
- {
210
- "type": "docs",
211
- "section": "Trivial Changes"
212
- },
213
- {
214
- "type": "test",
215
- "section": "Tests"
216
- }
217
- ]
218
- }
219
- }
220
- ],
221
- "@semantic-release/changelog",
222
- [
223
- "@semantic-release/npm",
224
- {
225
- "pkgRoot": "dist"
226
- }
227
- ],
228
- "@semantic-release/github",
229
- "@semantic-release/git"
129
+ "standard": {
130
+ "ignore": [
131
+ "dist"
230
132
  ]
231
133
  },
232
134
  "browser": {
233
- ".": "./cjs/car-browser.js",
234
- "./esm/car.js": "./esm/car-browser.js",
235
- "./cjs/car.js": "./cjs/car-browser.js",
236
- "./decoder": "./cjs/lib/decoder.js",
237
- "./reader": "./cjs/lib/reader-browser.js",
238
- "./esm/lib/reader.js": "./esm/lib/reader-browser.js",
239
- "./cjs/lib/reader.js": "./cjs/lib/reader-browser.js",
240
- "./indexed-reader": "./cjs/lib/indexed-reader-browser.js",
241
- "./esm/lib/indexed-reader.js": "./esm/lib/indexed-reader-browser.js",
242
- "./cjs/lib/indexed-reader.js": "./cjs/lib/indexed-reader-browser.js",
243
- "./indexer": "./cjs/lib/indexer.js",
244
- "./iterator": "./cjs/lib/iterator.js",
245
- "./writer": "./cjs/lib/writer-browser.js",
246
- "./esm/lib/writer.js": "./esm/lib/writer-browser.js",
247
- "./cjs/lib/writer.js": "./cjs/lib/writer-browser.js",
248
- "./buffer-writer": "./cjs/lib/buffer-writer.js"
135
+ "./src/index.js": "./src/index-browser.js",
136
+ "./src/index-reader.js": "./src/index-reader-browser.js",
137
+ "./src/reader.js": "./src/reader-browser.js",
138
+ "./src/writer.js": "./src/writer-browser.js",
139
+ "fs": false,
140
+ "util": false,
141
+ "stream": false
249
142
  }
250
143
  }
@@ -1,27 +1,27 @@
1
- import { CID } from 'multiformats/cid'
1
+ import type { CID } from 'multiformats/cid'
2
2
 
3
3
  export type { CID }
4
4
  /* Generic types for interfacing with block storage */
5
5
 
6
- export type Block = {
6
+ export interface Block {
7
7
  cid: CID
8
8
  bytes: Uint8Array
9
9
  }
10
10
 
11
- export type BlockHeader = {
11
+ export interface BlockHeader {
12
12
  cid: CID
13
13
  length: number
14
14
  blockLength: number
15
15
  }
16
16
 
17
- export type BlockIndex = BlockHeader & {
17
+ export interface BlockIndex extends BlockHeader {
18
18
  offset: number
19
19
  blockOffset: number
20
20
  }
21
21
 
22
22
  export interface RootsReader {
23
23
  version: number
24
- getRoots(): Promise<CID[]>
24
+ getRoots: () => Promise<CID[]>
25
25
  }
26
26
 
27
27
  export interface BlockIterator extends AsyncIterable<Block> {}
@@ -29,21 +29,21 @@ export interface BlockIterator extends AsyncIterable<Block> {}
29
29
  export interface CIDIterator extends AsyncIterable<CID> {}
30
30
 
31
31
  export interface BlockReader {
32
- has(key: CID): Promise<boolean>
33
- get(key: CID): Promise<Block | undefined>
34
- blocks(): BlockIterator
35
- cids(): CIDIterator
32
+ has: (key: CID) => Promise<boolean>
33
+ get: (key: CID) => Promise<Block | undefined>
34
+ blocks: () => BlockIterator
35
+ cids: () => CIDIterator
36
36
  }
37
37
 
38
38
  export interface BlockWriter {
39
- put(block: Block): Promise<void>
40
- close(): Promise<void>
39
+ put: (block: Block) => Promise<void>
40
+ close: () => Promise<void>
41
41
  }
42
42
 
43
43
  export interface CarBufferWriter {
44
- addRoot(root:CID, options?:{ resize?: boolean }):CarBufferWriter
45
- write(block: Block): CarBufferWriter
46
- close(options?:{ resize?: boolean }): Uint8Array
44
+ addRoot: (root: CID, options?: { resize?: boolean }) => CarBufferWriter
45
+ write: (block: Block) => CarBufferWriter
46
+ close: (options?: { resize?: boolean }) => Uint8Array
47
47
  }
48
48
 
49
49
  export interface CarBufferWriterOptions {