event-message-broker
Version:
A Message Bus that uses AWS Stack and RabbitMQ
39 lines (38 loc) • 1.1 kB
TypeScript
export type GenericMessage = {
Timestamp: Date;
CorrelationId: string;
};
export type BindTopicInput = {
TopicName: string;
QueueName: string;
};
export type TagsResourceInput = Array<{
Key: string;
Value: string;
}>;
export declare class ScheduleInput<TMessage extends Object> {
Message: TMessage;
ScheduleDate: Date;
TopicName: string;
}
export interface MessageContext<TMessage extends object> {
Object: TMessage;
}
export type SecondLevelResilienceInput<TMessageContext extends MessageContext<TMessage>, TMessage extends Object> = {
QueueName: string;
Message: TMessageContext;
MaxRetryCount: number;
DelaySeconds: number;
};
export type RedeliveryInput<TMessageContext extends MessageContext<TMessage>, TMessage extends Object> = {
QueueName: string;
Message: TMessageContext;
DelaySeconds: number;
Params?: {};
};
export declare class ConsumerParams<TMessage extends Object> {
Endpoint: string;
handle: (message: MessageContext<TMessage>) => Promise<void>;
MaxRetryCount: number;
DelaySeconds: number;
}