pipeproc
Version:
Multi-process log processing for nodejs
51 lines (50 loc) • 1.61 kB
TypeScript
import { LevelDown as LevelDOWN } from "leveldown";
import { IActiveTopics } from "./pipeProc";
import { IRangeResult } from "./getRange";
export interface IProc {
[index: string]: string | number | undefined;
name: string;
topic: string;
status: string;
createdAt: number;
lastClaimedRange: string;
previousClaimedRange: string;
lastAckedRange: string;
lastClaimedAt: number;
lastAckedAt: number;
offset: string;
reclaims: number;
maxReclaims: number;
reclaimTimeout: number;
onMaxReclaimsReached: string;
}
export declare function proc(db: LevelDOWN, activeProcs: IProc[], activeTopics: IActiveTopics, options: {
name: string;
topic: string;
offset: string;
count: number;
maxReclaims: number;
reclaimTimeout: number;
onMaxReclaimsReached: string;
}, callback: (err?: Error | null, log?: IRangeResult | IRangeResult[]) => void): void;
export declare function getAvailableProc(db: LevelDOWN, activeProcs: IProc[], activeTopics: IActiveTopics, procList: {
name: string;
topic: string;
offset: string;
count: number;
maxReclaims: number;
reclaimTimeout: number;
onMaxReclaimsReached: string;
}[], callback: (err?: Error | null, result?: {
procName: string;
log?: IRangeResult | IRangeResult[];
}) => void): void;
export declare function createProc(db: LevelDOWN, options: {
name: string;
topic: string;
offset: string;
count: number;
maxReclaims: number;
reclaimTimeout: number;
onMaxReclaimsReached: string;
}): import("./transaction").ITransaction<IProc>;