UNPKG

842 BTypeScriptView Raw
1import { Transform, Readable } from "stream";
2
3import { Record } from "./record";
4
5interface CSVStreamConverterOptions {
6 headers?: string[];
7 nullValue?: string;
8}
9
10type SerializeOptions = CSVStreamConverterOptions;
11
12export class RecordStream<T> extends Transform {
13 constructor();
14
15 filter(fn: (record: Record<T>) => boolean): Serializable<T>;
16 filter(fn: (record: Record<T>) => boolean): RecordStream<T>;
17 map(fn: (record: Record<T>) => Record<T>): Serializable<T>;
18 map(fn: (record: Record<T>) => Record<T>): RecordStream<T>;
19 recordMapStream(record: Record<T>, noeval?: boolean): Serializable<T>;
20}
21
22export class Serializable<T> extends RecordStream<T> {
23 stream(type?: string, options?: SerializeOptions): Readable;
24}
25
26export class Parsable<T> extends RecordStream<T> {
27 stream(type?: string): Readable;
28}