UNPKG

@vtexlab/planner-message-bus

Version:

A Message Bus that uses AWS SNS, AWS SQS, and AWS EventBridge

17 lines (16 loc) 1.47 kB
import type { UpdateScheduleCommandOutput, CreateScheduleCommandOutput, DeleteScheduleCommandOutput, GetScheduleCommandOutput } from '@aws-sdk/client-scheduler'; import { SchedulerClient } from '@aws-sdk/client-scheduler'; import { Span } from '@opentelemetry/api'; import { ScheduleParams } from "../utils/types"; import { IEvent } from "@vtexlab/planner-contracts/build/types/utils/types"; export declare class EBScheduler extends SchedulerClient { schedule<TMessage extends IEvent>(params: ScheduleParams<TMessage>, callback?: (output: CreateScheduleCommandOutput, span: Span | undefined) => void, errorCallback?: (error: any, span: Span | undefined) => void): Promise<CreateScheduleCommandOutput>; get(id: string, callback?: (output: GetScheduleCommandOutput, span: Span | undefined) => void, errorCallback?: (error: any, span: Span | undefined) => void): Promise<{ id: string; message: any; scheduleDate: Date; topicName: string; } | undefined>; updateSchedule<TMessage extends IEvent>(params: ScheduleParams<TMessage>, callback?: (output: UpdateScheduleCommandOutput, span: Span | undefined) => void, errorCallback?: (error: any, span: Span | undefined) => void): Promise<UpdateScheduleCommandOutput>; deleteSchedule(id: string, callback?: (output: DeleteScheduleCommandOutput, span: Span | undefined) => void, errorCallback?: (error: any, span: Span | undefined) => void): Promise<DeleteScheduleCommandOutput>; }