/// import { Duplex } from "stream"; import { ConnectionRateLimits } from "../mixins/ratelimiters/connection"; import { MessageRateLimits, PresetKeys } from "./message-rate-limits"; export interface DuplexTransportConfiguration { type: "duplex"; stream: () => Duplex; /** * Whether this stream is already set up (user logged in and * capabilities enabled). Defaults to false. */ preSetup?: boolean; } export interface TcpTransportConfiguration { type?: "tcp"; secure: boolean; host: string; port: number; } export declare type BasicTcpTransportConfiguration = Omit; export interface WebSocketTransportConfiguration { type: "websocket"; url: string; } export interface PresetWebSocketTransportConfiguration { type: "websocket"; secure: boolean; } export declare type TransportConfiguration = DuplexTransportConfiguration | TcpTransportConfiguration | BasicTcpTransportConfiguration | WebSocketTransportConfiguration | PresetWebSocketTransportConfiguration; export declare type CustomRateLimitsConfig = MessageRateLimits; export declare type RateLimitsConfig = PresetKeys | CustomRateLimitsConfig; export interface ClientConfiguration { /** * lowercase twitch login name */ username?: string; /** * Optional password. If unset no PASS is sent to the server. * * If set, this must begin with "oauth:" */ password?: string; /** * Can be disabled to lower the load on the bot by not requesting useless membership messages. * * Disabled by default. */ requestMembershipCapability?: boolean; connection?: TransportConfiguration; /** * Maximum number of channels the client will allow one connection to be joined to. 100 by default. */ maxChannelCountPerConnection?: number; rateLimits?: RateLimitsConfig; connectionRateLimits?: ConnectionRateLimits; installDefaultMixins?: boolean; ignoreUnhandledPromiseRejections?: boolean; } //# sourceMappingURL=config.d.ts.map