import { RedisClient } from 'redis-smq-common';
import { IRequiredConfig, TGetMessagesReply, TQueueParams } from '../../../../types';
import { PendingPriorityMessages } from './pending-priority-messages';
import { PendingNonPriorityMessages } from './pending-non-priority-messages';
import { ICallback, ICompatibleLogger } from 'redis-smq-common/dist/types';
export declare class PendingMessages {
    protected redisClient: RedisClient;
    protected pendingPriorityMessages: PendingPriorityMessages;
    protected pendingNonPriorityMessages: PendingNonPriorityMessages;
    protected config: IRequiredConfig;
    constructor(config: IRequiredConfig, redisClient: RedisClient, logger: ICompatibleLogger);
    purge(queue: string | TQueueParams, cb: ICallback<void>): void;
    list(queue: string | TQueueParams, skip: number, take: number, cb: ICallback<TGetMessagesReply>): void;
    delete(queue: string | TQueueParams, messageId: string, sequenceId: number, cb: ICallback<void>): void;
    count(queue: string | TQueueParams, cb: ICallback<number>): void;
}
