redis-smq
Version:
A simple high-performance Redis message queue for Node.js.
56 lines • 2.63 kB
TypeScript
import { ITopicParams, TExchangeTransferable } from '../exchange/index.js';
import { IQueueParams } from '../queue/index.js';
import { EMessagePriority, TMessageConsumeOptions } from './types/index.js';
export declare class ProducibleMessage {
protected static defaultConsumeOptions: TMessageConsumeOptions;
protected readonly createdAt: number;
protected ttl: number;
protected retryThreshold: number;
protected retryDelay: number;
protected consumeTimeout: number;
protected body: unknown;
protected priority: EMessagePriority | null;
protected scheduledCron: string | null;
protected scheduledDelay: number | null;
protected scheduledRepeatPeriod: number | null;
protected scheduledRepeat: number;
protected exchange: TExchangeTransferable | null;
constructor();
static setDefaultConsumeOptions(consumeOptions: Partial<TMessageConsumeOptions>): void;
protected static validateRetryDelay(delay: number): number;
protected static validateTTL(ttl: unknown): number;
protected static validateConsumeTimeout(timeout: unknown): number;
protected static validateRetryThreshold(threshold: unknown): number;
getCreatedAt(): number;
setScheduledRepeatPeriod(period: number): ProducibleMessage;
setScheduledDelay(delay: number): ProducibleMessage;
getScheduledDelay(): number | null;
setScheduledCRON(cron: string): ProducibleMessage;
setScheduledRepeat(repeat: number): ProducibleMessage;
resetScheduledParams(): ProducibleMessage;
setTTL(ttl: number): ProducibleMessage;
setConsumeTimeout(timeout: number): ProducibleMessage;
setRetryThreshold(threshold: number): ProducibleMessage;
setRetryDelay(delay: number): ProducibleMessage;
setBody(body: unknown): ProducibleMessage;
setPriority(priority: EMessagePriority): ProducibleMessage;
hasPriority(): boolean;
disablePriority(): ProducibleMessage;
setFanOut(fanOutName: string): ProducibleMessage;
setTopic(topicParams: string | ITopicParams): ProducibleMessage;
setQueue(queueParams: string | IQueueParams): ProducibleMessage;
getQueue(): IQueueParams | null;
getTopic(): ITopicParams | null;
getFanOut(): string | null;
getExchange(): TExchangeTransferable | null;
getScheduledRepeatPeriod(): number | null;
getScheduledCRON(): string | null;
getScheduledRepeat(): number;
getTTL(): number;
getRetryThreshold(): number;
getRetryDelay(): number;
getConsumeTimeout(): number;
getPriority(): EMessagePriority | null;
getBody(): unknown;
}
//# sourceMappingURL=producible-message.d.ts.map