csv-string
Version:
PARSE and STRINGIFY for CSV strings. It's like JSON object but for CSV. It can also work row by row. And, if can parse strings, it can be use to parse files or streams too.
34 lines (33 loc) • 2.11 kB
TypeScript
import { Streamer } from './Streamer';
import { Comma, ForEachCallback, LineBreak, PristineInput, Quote, ReadAllCallback, ReadCallback, Value, ParseOptions } from './types';
declare const EOL: LineBreak;
declare const SEPARATOR: Comma;
declare const detect: (input: string) => Comma;
declare const stringify: (input?: PristineInput, sep?: Comma) => string;
declare function parse(input: string, sep?: Comma, quo?: Quote): Value[][];
declare function parse(input: string, opts?: Partial<ParseOptions & {
output: 'tuples';
}>): Value[][];
declare function parse(input: string, opts: Partial<ParseOptions> & {
output: 'objects';
}): {
[k: string]: Value;
}[];
declare function read(input: string, callback: ReadCallback): number;
declare function read(input: string, sep: Comma, callback: ReadCallback): number;
declare function read(input: string, sep: Comma, quo: Quote, callback: ReadCallback): number;
declare function forEach(input: string, callback: ForEachCallback): void;
declare function forEach(input: string, sep: Comma, callback: ForEachCallback): void;
declare function forEach(input: string, sep: Comma, quo: Quote, callback: ForEachCallback): void;
declare function readAll(input: string, callback: ReadAllCallback): number;
declare function readAll(input: string, sep: Comma, callback: ReadAllCallback): number;
declare function readAll(input: string, sep: Comma, quo: Quote, callback: ReadAllCallback): number;
declare function readChunk(input: string, callback: ReadAllCallback): number;
declare function readChunk(input: string, sep: Comma, callback: ReadAllCallback): number;
declare function readChunk(input: string, sep: Comma, quo: Quote, callback: ReadAllCallback): number;
declare const fetch: (input: string, sep?: "," | ";" | "|" | "\t" | undefined, quo?: string | undefined) => string[];
declare const createStream: (options?: {
separator?: "," | ";" | "|" | "\t" | undefined;
quote?: string | undefined;
} | undefined) => Streamer;
export { EOL as eol, SEPARATOR as separator, detect, stringify, parse, read, forEach, readAll, readChunk, fetch, createStream, };