import { BackgroundEntry } from '../background-entry.js'; import { InternalBackgroundEntry } from '../internal-background-entry.js'; import { Subject } from 'rxjs'; export interface BackgroundManagerLike { backgroundManagerName: string; immediateProcessQueue?(): Subject>; createEntry(type: string, data?: T): BackgroundEntry; wrapEntryForInternal(entry: BackgroundEntry, overrideTraceId?: string, overrideTraceDepth?: number): Promise>; addEntryToQueueByParts(type: string, data?: T, fireStartMessage?: boolean): Promise; addEntryToQueue(entry: BackgroundEntry, fireStartMessage?: boolean): Promise; addEntriesToQueue(entries: BackgroundEntry[], fireStartMessage?: boolean): Promise; fireImmediateProcessRequestByParts(type: string, data?: T): Promise; fireImmediateProcessRequest(entry: BackgroundEntry): Promise; fireStartProcessingRequest(): Promise; fetchApproximateNumberOfQueueEntries(): Promise; takeEntryFromBackgroundQueue(): Promise[]>; modifyPayloadPreProcess?(entry: InternalBackgroundEntry): Promise>; }