@bitblit/ratchet-epsilon-common
Version:
Tiny adapter to simplify building API gateway Lambda APIS
19 lines (18 loc) • 1.28 kB
TypeScript
import { BackgroundEntry } from '../background-entry.js';
import { InternalBackgroundEntry } from '../internal-background-entry.js';
import { Subject } from 'rxjs';
export interface BackgroundManagerLike {
backgroundManagerName: string;
immediateProcessQueue?(): Subject<InternalBackgroundEntry<any>>;
createEntry<T>(type: string, data?: T): BackgroundEntry<T>;
wrapEntryForInternal<T>(entry: BackgroundEntry<T>, overrideTraceId?: string, overrideTraceDepth?: number): Promise<InternalBackgroundEntry<T>>;
addEntryToQueueByParts<T>(type: string, data?: T, fireStartMessage?: boolean): Promise<string>;
addEntryToQueue<T>(entry: BackgroundEntry<T>, fireStartMessage?: boolean): Promise<string>;
addEntriesToQueue(entries: BackgroundEntry<any>[], fireStartMessage?: boolean): Promise<string[]>;
fireImmediateProcessRequestByParts<T>(type: string, data?: T): Promise<string>;
fireImmediateProcessRequest<T>(entry: BackgroundEntry<T>): Promise<string>;
fireStartProcessingRequest(): Promise<string>;
fetchApproximateNumberOfQueueEntries(): Promise<number>;
takeEntryFromBackgroundQueue(): Promise<InternalBackgroundEntry<any>[]>;
modifyPayloadPreProcess?<T>(entry: InternalBackgroundEntry<T>): Promise<InternalBackgroundEntry<T>>;
}