etl-typings
Version:
TypeScript typings for Etl development
42 lines (41 loc) • 1.2 kB
TypeScript
export interface EtlError extends EtlBase {
message: string;
}
export interface EtlBase {
id: string;
aminoId: string;
parentAminoId: string;
name: string;
loopbackModel: any;
status: string;
getPojo(): any;
addErrors(errors: any[], cb: (err: Error, etlErrors: EtlError[]) => void): void;
loadEntireObject(cb: (err: Error, etlBase: EtlBase) => void): void;
writeToDb(cb?: (err?: Error, etlBase?: EtlBase) => void): void;
removeFromDb(cb?: (err?: Error, etlBase?: EtlBase) => void): void;
}
export interface EtlFile extends EtlBase {
path: string;
size: number;
createDate: Date;
flows: EtlFlow[];
addFlows(flows: any[], cb: (err: Error, etlFlows: EtlFlow[]) => void): void;
}
export interface EtlFlow extends EtlBase {
type: string;
expanded: boolean;
currentStepIndex: number;
steps: EtlStep[];
addSteps(steps: any[], cb: (err: Error, etlSteps: EtlStep[]) => void): void;
}
export interface EtlStep extends EtlBase {
startTime: Date;
currentTime: Date;
endTime: Date;
progress: number;
index: number;
}
export interface EtlTask extends EtlBase {
fileId: string;
flowId: string;
}