import { Redis } from 'ioredis'; import { type DependencyObserver } from '@taskcast/core'; import { RedisBroadcastProvider } from './broadcast.js'; import type { RedisAdapterOptions } from './index.js'; import { RedisShortTermStore } from './short-term.js'; export interface ManagedRedisOptions extends RedisAdapterOptions { observer?: DependencyObserver; startupTimeoutMs?: number; readinessTimeoutMs?: number; random?: () => number; } export interface ManagedRedisCommand { client: Redis; check(): Promise; close(): Promise; } export interface ManagedRedisAdapters { broadcast: RedisBroadcastProvider; shortTermStore: RedisShortTermStore; commandClient: Redis; subscriberClient: Redis; commandCheck(): Promise; pubSubCheck(): Promise; close(): Promise; } export declare function createManagedRedisCommandClient(url: string, options?: ManagedRedisOptions): Promise; export declare function createManagedRedisAdapters(url: string, options?: ManagedRedisOptions): Promise; //# sourceMappingURL=managed.d.ts.map