import { AbstractMessageStorage } from './abstract-message-storage';
import { TGetMessagesReply } from '../../../../types';
import { Message } from '../../message/message';
import { ICallback } from 'redis-smq-common/dist/types';
declare type TSortedSetKeyMessagesParams = {
    keyMessages: string;
    keyMessagesWeight: string;
};
declare type TSortedSetMessageIdParams = {
    messageId: string;
};
export declare abstract class SortedSetMessageStorage extends AbstractMessageStorage<TSortedSetKeyMessagesParams, TSortedSetMessageIdParams> {
    protected deleteMessage(key: TSortedSetKeyMessagesParams, id: TSortedSetMessageIdParams, cb: ICallback<void>): void;
    protected fetchMessages(key: TSortedSetKeyMessagesParams, skip: number, take: number, cb: ICallback<TGetMessagesReply>): void;
    protected purgeMessages(key: TSortedSetKeyMessagesParams, cb: ICallback<void>): void;
    protected getMessageById(key: TSortedSetKeyMessagesParams, id: TSortedSetMessageIdParams, cb: ICallback<Message>): void;
    protected countMessages(key: TSortedSetKeyMessagesParams, cb: ICallback<number>): void;
}
export {};
