@@ -172,21 +172,20 @@ Here’s a summary of all codecs (with slightly simplified type annotations) and
172
172
</tr >
173
173
<th ><a href =" #primitiveunion " >primitiveUnion</a ></th >
174
174
<td ><pre >(variants: [
175
- "string1",
175
+ "string1",
176
176
"string2",
177
177
"stringN",
178
178
1,
179
179
2,
180
180
true
181
- ] ) => ;
182
- Codec< ;
183
- "string1"
184
- | "string2"
185
- | "stringN"
186
- | 1
187
- | 2
188
- | true
189
- > ; </pre ></td >
181
+ ] ) => ; Codec< ;
182
+ "string1"
183
+ | "string2"
184
+ | "stringN"
185
+ | 1
186
+ | 2
187
+ | true
188
+ > ; </pre ></td >
190
189
<td >string, number, boolean, null</td >
191
190
<td ><pre >"string1"
192
191
| "string2"
@@ -198,101 +197,99 @@ Here’s a summary of all codecs (with slightly simplified type annotations) and
198
197
<tr >
199
198
<th ><a href =" #array " >array</a ></th >
200
199
<td ><pre >(decoder: Codec< ; T> ; ) => ;
201
- Codec< ; Array< ; T> ;> ; </pre ></td >
200
+ Codec< ; Array< ; T> ;> ; </pre ></td >
202
201
<td >array</td >
203
202
<td ><code >Array< ; T> ; </code ></td >
204
203
</tr >
205
204
<tr >
206
205
<th ><a href =" #record " >record</a ></th >
207
206
<td ><pre >(decoder: Codec< ; T> ; ) => ;
208
- Codec< ; Record< ; string, T> ;> ; </pre ></td >
207
+ Codec< ; Record< ; string, T> ;> ; </pre ></td >
209
208
<td >object</td >
210
209
<td ><code >Record< ; string, T> ; </code ></td >
211
210
</tr >
212
211
<tr >
213
212
<th ><a href =" #fields " >fields</a ></th >
214
213
<td ><pre >(mapping: {
215
- field1: Codec< ; T1> ; ,
216
- field2: Field< ; T2, {optional: true}> ; ,
217
- field3: Field< ; T3, {renameFrom: "field_3"}> ; ,
218
- fieldN: Codec< ; TN> ;
219
- }) => ;
220
- Codec< ; {
221
- field1: T1,
222
- field2?: T2,
223
- field3: T3,
224
- fieldN: TN
225
- }> ; </pre ></td >
214
+ field1: Codec< ; T1> ; ,
215
+ field2: Field< ; T2,
216
+ {optional: true}> ; ,
217
+ field3: Field< ; T3,
218
+ {renameFrom: "field_3"}> ; ,
219
+ fieldN: Codec< ; TN> ;
220
+ }) => ; Codec< ; {
221
+ field1: T1,
222
+ field2?: T2,
223
+ field3: T3,
224
+ fieldN: TN
225
+ }> ; </pre ></td >
226
226
<td ><pre >{
227
- "field1": ...,
228
- "field2": ...,
229
- "field_3": ...,
230
- "fieldN": ...
227
+ "field1": ...,
228
+ "field2": ...,
229
+ "field_3": ...,
230
+ "fieldN": ...
231
231
}</pre > or: <pre >{
232
- "field1": ...,
233
- "field_3": ...,
234
- "fieldN": ...
232
+ "field1": ...,
233
+ "field_3": ...,
234
+ "fieldN": ...
235
235
}</pre ></td >
236
236
<td ><pre >{
237
- field1: T1,
238
- field2?: T2,
239
- field3: T3,
240
- fieldN: TN
237
+ field1: T1,
238
+ field2?: T2,
239
+ field3: T3,
240
+ fieldN: TN
241
241
}</pre ></td >
242
242
</tr >
243
243
<tr >
244
244
<th ><a href =" #field " >field</a ></th >
245
245
<td ><pre >(
246
- codec: Codec< ; Decoded> ; ,
247
- meta: Meta,
248
- ) => Field< ; Decoded, Meta> ; </pre ></td >
246
+ codec: Codec< ; Decoded> ; ,
247
+ meta: Meta,
248
+ ) =& gt ; Field< ; Decoded, Meta> ; </pre ></td >
249
249
<td >n/a</td >
250
250
<td >n/a, only used with <code >fields</code ></td >
251
251
</tr >
252
252
<tr >
253
253
<th ><a href =" #taggedunion " >taggedUnion</a ></th >
254
254
<td ><pre >(
255
- decodedCommonField: string,
256
- variants: Array< ;
257
- Parameters< ; typeof fields> ; [ 0]
258
- > ; ,
259
- ) => ;
260
- Codec< ; T1 | T2 | TN> ; </pre ></td >
255
+ decodedCommonField: string,
256
+ variants: Array< ;
257
+ Parameters< ; typeof fields> ; [ 0]
258
+ > ; ,
259
+ ) => ; Codec< ; T1 | T2 | TN> ; </pre ></td >
261
260
<td >object</td >
262
261
<td ><code >T1 | T2 | TN</code ></td >
263
262
</tr >
264
263
<tr >
265
264
<th ><a href =" #tag " >tag</a ></th >
266
265
<td ><pre >(
267
- decoded: "string literal",
268
- options?: Options,
269
- ) => Field< ; "string literal", Meta> ; </pre ></td >
266
+ decoded: "string literal",
267
+ options?: Options,
268
+ ) =& gt ; Field< ; "string literal", Meta> ; </pre ></td >
270
269
<td >string</td >
271
270
<td ><code >"string literal"</code ></td >
272
271
</tr >
273
272
<tr >
274
273
<th ><a href =" #tuple " >tuple</a ></th >
275
274
<td ><pre >(codecs: [
276
- Codec< ; T1> ; ,
277
- Codec< ; T2> ; ,
278
- Codec< ; TN> ;
279
- ] ) => ;
280
- Codec< ; [ T1, T2, TN] > ; </pre ></td >
275
+ Codec< ; T1> ; ,
276
+ Codec< ; T2> ; ,
277
+ Codec< ; TN> ;
278
+ ] ) => ; Codec< ; [ T1, T2, TN] > ; </pre ></td >
281
279
<td >array</td >
282
280
<td ><code >[T1, T2, TN]</code ></td >
283
281
</tr >
284
282
<tr >
285
283
<th ><a href =" #multi " >multi</a ></th >
286
284
<td ><pre >(types: [
287
- "type1",
288
- "type2",
289
- "type10"
290
- ] ) => ;
291
- Codec< ;
292
- { type: "type1", value: type1 }
293
- | { type: "type2", value: type2 }
294
- | { type: "type10", value: type10 }
295
- > ; </pre ></td >
285
+ "type1",
286
+ "type2",
287
+ "type10"
288
+ ] ) => ; Codec< ;
289
+ { type: "type1", value: type1 }
290
+ | { type: "type2", value: type2 }
291
+ | { type: "type10", value: type10 }
292
+ > ; </pre ></td >
296
293
<td >you decide</td >
297
294
<td >A subset of: <pre >{ type: "undefined"; value: undefined }
298
295
| { type: "null"; value: null }
@@ -307,48 +304,47 @@ Here’s a summary of all codecs (with slightly simplified type annotations) and
307
304
</tr >
308
305
<tr >
309
306
<th ><a href =" #recursive " >recursive</a ></th >
310
- <td ><pre >(callback: () => Codec< ; T> ; ) => ;
311
- Codec< ; T> ; </pre ></td >
307
+ <td ><pre >(callback: () =& gt ; Codec< ; T> ; ) => ;
308
+ Codec< ; T> ; </pre ></td >
312
309
<td >n/a</td >
313
310
<td ><code >T</code ></td >
314
311
</tr >
315
312
<tr >
316
313
<th ><a href =" #undefinedor " >undefinedOr</a ></th >
317
314
<td ><pre >(codec: Codec< ; T> ; ) => ;
318
- Codec< ; T | undefined> ; </pre ></td >
315
+ Codec< ; T | undefined> ; </pre ></td >
319
316
<td >undefined or …</td >
320
317
<td ><code >T | undefined</code ></td >
321
318
</tr >
322
319
<tr >
323
320
<th ><a href =" #nullOr " >nullOr</a ></th >
324
321
<td ><pre >(codec: Codec< ; T> ; ) => ;
325
- Codec< ; T | null> ; </pre ></td >
322
+ Codec< ; T | null> ; </pre ></td >
326
323
<td >null or …</td >
327
324
<td ><code >T | null</code ></td >
328
325
</tr >
329
326
<tr >
330
327
<th ><a href =" #map " >map</a ></th >
331
328
<td ><pre >(
332
- codec: Codec< ; T> ; ,
333
- transform: {
334
- decoder: (value: T) => ; U;
335
- encoder: (value: U) => ; T;
336
- },
337
- ) => ;
338
- Codec< ; U> ; </pre ></td >
329
+ codec: Codec< ; T> ; ,
330
+ transform: {
331
+ decoder: (value: T) => ; U;
332
+ encoder: (value: U) => ; T;
333
+ },
334
+ ) => ; Codec< ; U> ; </pre ></td >
339
335
<td >n/a</td >
340
336
<td ><code >U</code ></td >
341
337
</tr >
342
338
<tr >
343
339
<th ><a href =" #flatmap " >flatMap</a ></th >
344
340
<td ><pre >(
345
- decoder: Codec< ; T> ; ,
346
- transform: {
347
- decoder: (value: T) => ; DecoderResult & lt ; U & gt ; ;
348
- encoder: (value: U) = > ; T ;
349
- },
350
- ) = & gt ;
351
- Codec< ; U> ; </pre ></td >
341
+ decoder: Codec< ; T> ; ,
342
+ transform: {
343
+ decoder: (value: T) => ;
344
+ DecoderResult & lt ; U > ; ;
345
+ encoder: (value: U) = & gt ; T;
346
+ },
347
+ ) = & gt ; Codec< ; U> ; </pre ></td >
352
348
<td >n/a</td >
353
349
<td ><code >U</code ></td >
354
350
</tr >
0 commit comments