import { Cluster, Redis, RedisOptions } from 'ioredis'; import { SyncSender } from '@sidewinder/channel'; import { Static, TSchema } from '@sidewinder/type'; /** Redis PubSub Sender. This type uses broadcast semantics. */ export declare class PubSubRedisSender implements SyncSender> { #private; private readonly schema; private readonly channel; private readonly redis; constructor(schema: T, channel: string, redis: Cluster | Redis); /** Sends a value to this sender */ send(value: Static): Promise; /** Sends an error to this sender and closes. Note that redis channels do not transmit the error. */ error(error: Error): Promise; /** Ends this sender and closes */ end(): Promise; /** Connects to Redis with the given parameters */ static Create(schema: T, channel: string, port?: number, host?: string, options?: RedisOptions): Promise>; /** Connects to Redis with the given parameters */ static Create(schema: T, channel: string, host?: string, options?: RedisOptions): Promise>; /** Connects to Redis with the given parameters */ static Create(schema: T, channel: string, options: RedisOptions): Promise>; }