UNPKG

@bitblit/ratchet-epsilon-common

Version:

Tiny adapter to simplify building API gateway Lambda APIS

31 lines (30 loc) 1.59 kB
import { Context, ProxyResult, SNSEvent } from 'aws-lambda'; import { ModelValidator } from '@bitblit/ratchet-misc/model-validator/model-validator'; import { BackgroundConfig } from '../config/background/background-config.js'; import { InternalBackgroundEntry } from './internal-background-entry.js'; import { EpsilonLambdaEventHandler } from '../config/epsilon-lambda-event-handler.js'; import { BackgroundManagerLike } from './manager/background-manager-like.js'; export declare class BackgroundHandler implements EpsilonLambdaEventHandler<SNSEvent> { private cfg; private mgr; private modelValidator?; private processors; private validator; constructor(cfg: BackgroundConfig, mgr: BackgroundManagerLike, modelValidator?: ModelValidator); get validProcessorNames(): string[]; extractLabel(evt: SNSEvent, _context: Context): string; handlesEvent(evt: any): boolean; isBackgroundSNSEvent(event: any): boolean; isBackgroundStartSnsEvent(event: any): boolean; isBackgroundImmediateFireEvent(event: any): boolean; parseImmediateFireBackgroundEntry(event: any): InternalBackgroundEntry<any>; processEvent(event: any, _context: Context): Promise<ProxyResult>; private takeAndProcessSingleBackgroundQueueEntry; private safeWriteToLogger; private conditionallyStartTransactionLog; private conditionallyCompleteTransactionLog; private conditionallyRunErrorProcessor; private fireListenerEvent; processSingleBackgroundEntry(inE: InternalBackgroundEntry<any>): Promise<boolean>; getConfig(): BackgroundConfig; }