datainout
Version:
Import and reports data
44 lines (41 loc) • 1.31 kB
text/typescript
import { Readable } from 'stream';
import { PartialDataHandler } from './IPartialDataHandler.cjs';
import { SheetMetaOptions } from './SheetMeta.cjs';
import '../common/types/common-type.cjs';
interface PartialDataTransferRunner {
start(): Promise<void>;
completed(): Promise<void>;
init(partialDataHandler: PartialDataHandler, sheetName: string): Promise<void>;
}
declare abstract class PartialDataTransfer {
private delayMs;
private isStream;
private partialDataHandler;
private jobCount;
private queueData;
private isStopConsumeData;
constructor(opts?: {
isStream?: boolean;
delayMs?: number;
jobCount?: number;
});
private init;
private start;
/** Run with stream */
private startStream;
private consumeData;
/** Run with one or multiples job */
private startJobs;
private createJob;
protected configSheetMeta(originalSheetName: string): SheetMetaOptions[];
awake(): Promise<void>;
completed(): Promise<void>;
/** Batching data */
protected fetchBatch(jobIndex: number): Promise<{
items: any[] | null;
hasNext: boolean;
}>;
/** Run with streaming data */
protected createStream(): Readable;
}
export { PartialDataTransfer, type PartialDataTransferRunner };