import { type HelixPaginatedResponseWithTotal } from '@twurple/api-call'; export type HelixEventSubSubscriptionStatus = 'enabled' | 'webhook_callback_verification_pending' | 'webhook_callback_verification_failed' | 'notification_failures_exceeded' | 'authorization_revoked' | 'moderator_removed' | 'user_removed' | 'version_removed' | 'beta_maintenance' | 'websocket_disconnected' | 'websocket_failed_ping_pong' | 'websocket_received_inbound_traffic' | 'websocket_connection_unused' | 'websocket_internal_error' | 'websocket_network_timeout' | 'websocket_network_error' | 'conduit_deleted'; /** @private */ export interface HelixEventSubWebHookTransportData { /** * The type of transport. */ method: 'webhook'; /** * The callback URL to send event notifications to. */ callback: string; } /** @private */ export interface HelixEventSubWebSocketTransportData { /** * The type of transport. */ method: 'websocket'; /** * The session ID of the websocket. */ session_id: string; /** * The time when the client initiated the socket connection. */ connected_at: string; /** * The time when the socket connection was lost. */ disconnected_at: string; } /** @private */ export interface HelixEventSubConduitTransportData { /** * The type of transport. */ method: 'conduit'; /** * The conduit ID. */ conduit_id: string; } /** @private */ export interface HelixEventSubConduitData { /** * The conduit ID. */ id: string; /** * The shard count. */ shard_count: number; } /** @private */ export interface HelixEventSubConduitShardData { /** * The shard ID. */ id: string; /** * The shard status. */ status: HelixEventSubSubscriptionStatus; /** * The transport method. */ transport: HelixEventSubWebHookTransportData | HelixEventSubWebSocketTransportData; } /** @private */ export type HelixEventSubTransportData = HelixEventSubWebHookTransportData | HelixEventSubWebSocketTransportData | HelixEventSubConduitTransportData; /** @private */ export interface HelixEventSubSubscriptionData { id: string; status: HelixEventSubSubscriptionStatus; type: string; cost: number; version: string; condition: Record; created_at: string; transport: HelixEventSubTransportData; } /** @private */ export interface HelixPaginatedEventSubSubscriptionsResponse extends HelixPaginatedResponseWithTotal { total_cost: number; max_total_cost: number; } //# sourceMappingURL=eventSub.external.d.ts.map