js-stream-dataset-json
Version:
Stream Dataset-JSON files
62 lines • 1.81 kB
TypeScript
export type ItemType = 'string' | 'integer' | 'float' | 'double' | 'decimal' | 'boolean' | 'date' | 'time' | 'datetime' | 'URI';
export type ItemTargetType = 'integer' | 'decimal';
export type ItemDataObject = {
[name: string]: string | number | boolean | null;
};
export type ItemDataArray = Array<string | number | boolean | null>;
export interface SourceSystem {
name: string;
version: string;
}
export interface ItemDescription {
itemOID: string;
name: string;
label: string;
dataType: ItemType;
targetDataType?: ItemType;
length?: number;
displayFormat?: string;
keySequence?: number;
}
export interface Dataset {
datasetJSONCreationDateTime: string;
datasetJSONVersion: string;
records: number;
name: string;
label: string;
columns: Array<ItemDescription>;
rows: Array<ItemDataArray>;
dbLastModifiedDateTime?: string;
fileOID?: string;
originator?: string;
sourceSystem?: SourceSystem;
studyOID?: string;
metaDataVersionOID?: string;
metaDataRef?: string;
itemGroupOID?: string;
}
export type DatasetMetadata = Omit<Dataset, 'rows'>;
export type MetadataAttributes = keyof DatasetMetadata;
export type ParsedAttributes = {
[name in MetadataAttributes]: boolean;
};
export type DataType = 'array' | 'object';
export interface UniqueValues {
[name: string]: {
values: (string | number | boolean | null)[];
counts: {
[name: string]: number;
};
};
}
export interface JSONStreamParser {
on(event: 'data' | 'end', listener: (data: {
path: string;
value: ItemDataArray;
}) => void): this;
pause(): void;
resume(): void;
removeAllListeners(event?: string): this;
paused: boolean;
}
//# sourceMappingURL=datasetJson.d.ts.map