import { ICallback } from 'redis-smq-common';
import { RedisClient } from '../../common/redis-client/redis-client.js';
import { EMessagePropertyStatus, IMessageDeleteResponse, IMessageStateTransferable, IMessageTransferable } from './types/index.js';
export declare class Message {
    protected logger: import("redis-smq-common").ILogger;
    protected redisClient: RedisClient;
    constructor();
    getMessageStatus(messageId: string, cb: ICallback<EMessagePropertyStatus>): void;
    getMessageState(messageId: string, cb: ICallback<IMessageStateTransferable>): void;
    getMessagesByIds(messageIds: string[], cb: ICallback<IMessageTransferable[]>): void;
    getMessageById(messageId: string, cb: ICallback<IMessageTransferable>): void;
    deleteMessagesByIds(ids: string[], cb: ICallback<IMessageDeleteResponse>): void;
    deleteMessageById(id: string, cb: ICallback<IMessageDeleteResponse>): void;
    requeueMessageById(messageId: string, cb: ICallback<void>): void;
    shutdown: (cb: ICallback<void>) => void;
}
//# sourceMappingURL=message.d.ts.map