xport-js
Version:
Node.js library to read SAS XPORT v5/v6 data transport files (*.xpt).
39 lines (38 loc) • 1.32 kB
TypeScript
import Member from './member';
import { Header, Options, UniqueValues } from '../types/library';
import { DatasetMetadata as DatasetJsonMetadata } from 'js-stream-dataset-json';
import Filter from 'js-array-filter';
declare class Library {
members: Member[];
created: object;
modified: object;
sasVersion: string;
osVersion: string;
pathToFile: string;
header: Header;
constructor(pathToFile: string);
private parseHeader;
getHeader(): Header;
private parseMembers;
getMetadata<T extends "xport" | "dataset-json1.1">(format?: T): Promise<T extends "dataset-json1.1" ? DatasetJsonMetadata : object>;
private getHeaderRecord;
read(options?: Options): AsyncIterable<Array<number | string> | object>;
getData(props: {
start?: number;
length?: number;
type?: "object" | "array";
filterColumns?: string[];
filter?: Filter;
skipHeader?: boolean;
roundPrecision?: number;
}): Promise<Array<Array<number | string> | object>>;
getUniqueValues(props: {
columns: string[];
limit?: number;
addCount?: boolean;
sort?: boolean;
roundPrecision?: number;
}): Promise<UniqueValues>;
toCsv(outDir: string, options?: Options): Promise<void>;
}
export default Library;