redis-smq
Version:
A high-performance, reliable, and scalable message queue for Node.js.
60 lines • 2.99 kB
TypeScript
import { EExchangeType, IExchangeParams, IExchangeParsedParams } from '../exchange/index.js';
import { IQueueParams } from '../queue-manager/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: IExchangeParsedParams | null;
protected exchangeRoutingKey: string | null;
protected queue: IQueueParams | null;
constructor();
protected static validateRetryDelay(delay: number): number;
protected static validateTTL(ttl: unknown): number;
protected static validateConsumeTimeout(timeout: unknown): number;
protected static validateRetryThreshold(threshold: unknown): number;
protected setExchange(exchange: string | IExchangeParams, type: EExchangeType): ProducibleMessage;
static setDefaultConsumeOptions(consumeOptions: Partial<TMessageConsumeOptions>): void;
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;
setFanoutExchange(exchange: string | IExchangeParams): ProducibleMessage;
setTopicExchange(exchange: string | IExchangeParams): ProducibleMessage;
setDirectExchange(exchange: string | IExchangeParams): ProducibleMessage;
setExchangeRoutingKey(routingKey: string): ProducibleMessage;
getExchangeRoutingKey(): string | null;
setQueue(queue: string | IQueueParams): ProducibleMessage;
getQueue(): IQueueParams | null;
getExchange(): IExchangeParsedParams | 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