@cumulus/ingest
Version:
Ingest utilities
23 lines • 895 B
TypeScript
import { SQSMessage } from '@cumulus/aws-client/SQS';
export declare type MessageConsumerFunction = (queueUrl: string, message: SQSMessage) => Promise<void>;
export interface ConsumerConstructorParams {
queueUrl: string;
messageLimit?: number;
timeLimit?: number;
visibilityTimeout: number;
deleteProcessedMessage?: boolean;
}
export declare class Consumer {
private readonly deleteProcessedMessage;
private readonly messageLimit;
private readonly now;
private readonly queueUrl;
private timeLapsed;
private readonly timeLimit;
private readonly visibilityTimeout;
constructor({ queueUrl, messageLimit, timeLimit, visibilityTimeout, deleteProcessedMessage, }: ConsumerConstructorParams);
private processMessage;
private processMessages;
consume(fn: MessageConsumerFunction): Promise<number>;
}
//# sourceMappingURL=consumer.d.ts.map