redis-smq
Version:
A high-performance, reliable, and scalable message queue for Node.js.
73 lines • 2.09 kB
TypeScript
import { IExchangeParsedParams } from '../../exchange/index.js';
import { IQueueParams } from '../../queue-manager/index.js';
import { IMessageStateTransferable } from './message-state.js';
export declare enum EMessagePriority {
HIGHEST = 0,
VERY_HIGH = 1,
HIGH = 2,
ABOVE_NORMAL = 3,
NORMAL = 4,
LOW = 5,
VERY_LOW = 6,
LOWEST = 7
}
export declare enum EMessageProperty {
ID = 0,
STATUS = 1,
MESSAGE = 2,
SCHEDULED_AT = 3,
PUBLISHED_AT = 4,
PROCESSING_STARTED_AT = 5,
DEAD_LETTERED_AT = 6,
ACKNOWLEDGED_AT = 7,
UNACKNOWLEDGED_AT = 8,
LAST_UNACKNOWLEDGED_AT = 9,
LAST_SCHEDULED_AT = 10,
LAST_PROCESSED_AT = 11,
REQUEUED_AT = 12,
REQUEUE_COUNT = 13,
LAST_REQUEUED_AT = 14,
LAST_RETRIED_ATTEMPT_AT = 15,
SCHEDULED_CRON_FIRED = 16,
ATTEMPTS = 17,
SCHEDULED_REPEAT_COUNT = 18,
EXPIRED = 19,
EFFECTIVE_SCHEDULED_DELAY = 20,
SCHEDULED_TIMES = 21,
SCHEDULED_MESSAGE_PARENT_ID = 22,
REQUEUED_MESSAGE_PARENT_ID = 23
}
export declare enum EMessagePropertyStatus {
NEW = 0,
PENDING = 1,
PROCESSING = 2,
SCHEDULED = 3,
ACKNOWLEDGED = 4,
UNACK_REQUEUING = 5,
UNACK_DELAYING = 6,
DEAD_LETTERED = 7
}
export interface IMessageParams<TBody = unknown> {
createdAt: number;
exchange: IExchangeParsedParams | null;
queue: IQueueParams | null;
ttl: number;
retryThreshold: number;
retryDelay: number;
consumeTimeout: number;
body: TBody;
priority: number | null;
scheduledCron: string | null;
scheduledDelay: number | null;
scheduledRepeatPeriod: number | null;
scheduledRepeat: number;
destinationQueue: IQueueParams;
consumerGroupId: string | null;
}
export interface IMessageTransferable<TBody = unknown> extends IMessageParams<TBody> {
id: string;
messageState: IMessageStateTransferable;
status: EMessagePropertyStatus;
}
export type TMessageConsumeOptions = Pick<IMessageParams, 'ttl' | 'retryThreshold' | 'retryDelay' | 'consumeTimeout'>;
//# sourceMappingURL=message.d.ts.map