import { EventEmitter, ICallback, IRedisClient, IRedisConfig, TRedisClientEvent } from 'redis-smq-common';
export declare class RedisClient extends EventEmitter<Pick<TRedisClientEvent, 'error'>> {
    protected instance: IRedisClient | null;
    protected locked: boolean;
    protected createClient(config: IRedisConfig, cb: ICallback<IRedisClient>): void;
    init: (cb: ICallback<void>) => void;
    getSetInstance: (cb: ICallback<IRedisClient>) => void;
    shutdown: (cb: ICallback<void>) => void;
    getInstance(): IRedisClient | Error;
}
//# sourceMappingURL=redis-client.d.ts.map