/**
 * @since 1.0.0
 */
import * as Config from "effect/Config";
import * as Context from "effect/Context";
import * as Effect from "effect/Effect";
import * as Layer from "effect/Layer";
import * as Redis from "effect/unstable/persistence/Redis";
import * as IoRedis from "ioredis";
declare const NodeRedis_base: Context.ServiceClass<NodeRedis, "@effect/platform-node/NodeRedis", {
    readonly client: IoRedis.Redis;
    readonly use: <A>(f: (client: IoRedis.Redis) => Promise<A>) => Effect.Effect<A, Redis.RedisError>;
}>;
/**
 * @since 1.0.0
 * @category Service
 */
export declare class NodeRedis extends NodeRedis_base {
}
/**
 * @since 1.0.0
 * @category Layers
 */
export declare const layer: (options?: IoRedis.RedisOptions | undefined) => Layer.Layer<Redis.Redis | NodeRedis>;
/**
 * @since 1.0.0
 * @category Layers
 */
export declare const layerConfig: (options: Config.Wrap<IoRedis.RedisOptions>) => Layer.Layer<Redis.Redis | NodeRedis, Config.ConfigError>;
export {};
//# sourceMappingURL=NodeRedis.d.ts.map