Skip to content

WebhookConnection

A Webhook Connection.

Extends

Constructors

new WebhookConnection()

1
new WebhookConnection(options: WebhookConnectionOptions, server?: Express): WebhookConnection

Builds up a new WebhookConnection.

Parameters

ParameterTypeDescription
optionsWebhookConnectionOptionsThe options for the connection.
server?ExpressThe express server used for receiving Twitch data.

Returns

WebhookConnection

Overrides

BaseConnection.constructor

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:62

Properties

PropertyModifierTypeDescriptionInherited from
baseURLreadonlystringThe base URL for the webhook callback.-
clientIdreadonlystringThe client ID of the connection.BaseConnection.clientId
clientSecretreadonlystringThe client secret of the connection.BaseConnection.clientSecret
debugpublicbooleanWhether the connection is in debug mode or not.BaseConnection.debug
dropSubsAtStartreadonlybooleanWhether to drop subscriptions at start. This will delete all subscriptions that are currently active within the client (only webhook created) to avoid duplicated subscriptions if any storage was set.-
helixClientreadonlyHelixClientThe Helix client used by the connection for making API Requests.BaseConnection.helixClient
loggerreadonlyLoggerThe logger of the connection.BaseConnection.logger
maintainSubscriptionsreadonlybooleanWhether the connection should maintain the subscriptions or not between each start.BaseConnection.maintainSubscriptions
secretreadonlystringThe secret used for creating subscriptions within this connection.-
serverreadonlyExpressThe express server used for receiving Twitch data.-
startServerreadonlybooleanWhether to start the server when the connection is started.-
storagereadonlyStorageAdapter<WebhookConnection>The storage adapter used by the connection for storing subscriptions.BaseConnection.storage
subscriptionRoutereadonlystring

The route for receiving Twitch messages.

Default

/subscriptions
-
subscriptionsreadonlySubscriptionCollection<WebhookConnection, SubscriptionTypes>The subscriptions of the connection. You will only receive events for this subscriptions.BaseConnection.subscriptions

Accessors

appToken

1
get appToken(): TokenAdapter<"app", boolean>

The app token used for the connection.

Returns

TokenAdapter<"app", boolean>

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:168


url

1
get url(): string

The URL for the webhook callback. This is a join between the base url and the subscription route.

Returns

string

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:86

Methods

addListener()

1
addListener<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.addListener

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:7


emit()

1
emit<K>(eventName: K, ...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]): boolean

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
argsK extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]

Returns

boolean

Inherited from

BaseConnection.emit

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:17


eventNames()

1
eventNames(): (keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents)[]

Returns

(keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents)[]

Inherited from

BaseConnection.eventNames

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:21


getMaxListeners()

1
getMaxListeners(): number

Returns

number

Inherited from

BaseConnection.getMaxListeners

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:14


listenerCount()

1
listenerCount<K>(eventName: K): number

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK

Returns

number

Inherited from

BaseConnection.listenerCount

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:18


listeners()

1
listeners<K>(eventName: K): (...args: [WebhookConnection] | [WebhookSubscription<SubscriptionTypes>] | [SubscriptionMessage<WebhookConnection>, WebhookSubscription<SubscriptionTypes>] | [WebhookSubscription<SubscriptionTypes>]) => Awaitable<void>[]

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK

Returns

(…args: [WebhookConnection] | [WebhookSubscription<SubscriptionTypes>] | [SubscriptionMessage<WebhookConnection>, WebhookSubscription<SubscriptionTypes>] | [WebhookSubscription<SubscriptionTypes>]) => Awaitable<void>[]

Inherited from

BaseConnection.listeners

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:15


makeDebug()

1
makeDebug(...args: any[]): void

Makes a debug log

Parameters

ParameterTypeDescription
argsany[]The arguments to log.

Returns

void

Inherited from

BaseConnection.makeDebug

Source

twitchfy/packages/eventsub/src/structures/BaseConnection.ts:113


makeWarn()

1
makeWarn(...args: any[]): void

Makes a warn log

Parameters

ParameterTypeDescription
argsany[]The arguments to log.

Returns

void

Inherited from

BaseConnection.makeWarn

Source

twitchfy/packages/eventsub/src/structures/BaseConnection.ts:124


off()

1
off<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.off

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:11


on()

1
on<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.on

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:8


once()

1
once<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.once

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:9


post()

1
post(
2
headers: IncomingHttpHeaders,
3
body: any,
4
verification: (challenge: string) => any,
5
success: () => any,
6
invalidSignature?: () => any): Promise<any>

Used for handling incoming Twitch requests in your custom non-Express server.

Parameters

ParameterTypeDescription
headersIncomingHttpHeadersThe headers of the request.
bodyanyThe body of the request.
verification(challenge: string) => anyA callback to be called when the request is a webhook callback verification and you need to send the challenge.
success() => anyA callback to be called when the handling has suceeded. You will need to send a 200 status in the response after that.
invalidSignature?() => anyA callback which is executed when the signature that has been sent by the requester is incorrect.

Returns

Promise<any>

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:181


prependListener()

1
prependListener<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.prependListener

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:19


prependOnceListener()

1
prependOnceListener<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.prependOnceListener

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:20


rawListeners()

1
rawListeners<K>(eventName: K): Listener<[WebhookConnection] | [WebhookSubscription<SubscriptionTypes>] | [SubscriptionMessage<WebhookConnection>, WebhookSubscription<SubscriptionTypes>] | [WebhookSubscription<SubscriptionTypes>]>[]

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK

Returns

Listener<[WebhookConnection] | [WebhookSubscription<SubscriptionTypes>] | [SubscriptionMessage<WebhookConnection>, WebhookSubscription<SubscriptionTypes>] | [WebhookSubscription<SubscriptionTypes>]>[]

Inherited from

BaseConnection.rawListeners

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:16


removeAllListeners()

1
removeAllListeners<K>(event?: K): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
event?K

Returns

this

Inherited from

BaseConnection.removeAllListeners

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:12


removeListener()

1
removeListener<K>(eventName: K, listener: (...args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void): this

Type parameters

Type parameter
K extends keyof AsyncEventEmitterPredefinedEvents | keyof WebhookEvents

Parameters

ParameterType
eventNameK
listener(…args: K extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[K<K>] : WebhookEvents[K]) => void

Returns

this

Inherited from

BaseConnection.removeListener

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:10


setAuth()

1
setAuth(appToken: TokenAdapter<"app", boolean>): WebhookConnection

Sets a new app token for the connection.

Parameters

ParameterTypeDescription
appTokenTokenAdapter<"app", boolean>The new app token.

Returns

WebhookConnection

The connection.

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:158


setMaxListeners()

1
setMaxListeners(n: number): this

Parameters

ParameterType
nnumber

Returns

this

Inherited from

BaseConnection.setMaxListeners

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:13


start()

1
start(port?: number, callback?: () => void): Promise<boolean>

Starts the Webhook Connection.

Parameters

ParameterTypeDescription
port?numberThe port to start the server at if the startServer option is set to true.
callback?() => voidA callback to be called when the server is started if the startServer option is set to true.

Returns

Promise<boolean>

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:143


subscribe()

1
subscribe<T>(options: SubscriptionOptions<T>): Promise<WebhookSubscription<T>>

Subscribe to an EventSub event.

Type parameters

Type parameter
T extends SubscriptionTypes

Parameters

ParameterTypeDescription
optionsSubscriptionOptions<T>The options of the subscription.

Returns

Promise<WebhookSubscription<T>>

Overrides

BaseConnection.subscribe

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:90


subscribeAll()

1
subscribeAll<T>(...options: SubscriptionOptions<T>[]): Promise<WebhookSubscription<T>[]>

Subscribe to multiple EventSub events.

Type parameters

Type parameter
T extends SubscriptionTypes

Parameters

ParameterTypeDescription
optionsSubscriptionOptions<T>[]The options of the subscriptions.

Returns

Promise<WebhookSubscription<T>[]>

Overrides

BaseConnection.subscribeAll

Source

twitchfy/packages/eventsub/src/webhook/structures/WebhookConnection.ts:111


waitForAllListenersToComplete()

1
waitForAllListenersToComplete(): Promise<boolean>

Returns

Promise<boolean>

Inherited from

BaseConnection.waitForAllListenersToComplete

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:22


listenerCount()

1
static listenerCount<Emitter, EventNames, EventName>(emitter: Emitter, eventName: keyof AsyncEventEmitterPredefinedEvents | EventName): number

Type parameters

Type parameterValue
Emitter extends AsyncEventEmitter<any, any>-
EventNamesEmitter extends AsyncEventEmitter<Events, Events> ? Events : never
EventName extends PropertyKeyEventNames extends never ? string | symbol : keyof EventNames

Parameters

ParameterType
emitterEmitter
eventNamekeyof AsyncEventEmitterPredefinedEvents | EventName

Returns

number

Inherited from

BaseConnection.listenerCount

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:25


on()

1
static on<Emitter, EventNames, EventName, EventResult>(
2
emitter: Emitter,
3
eventName: EventName,
4
options?: AbortableMethods): AsyncGenerator<EventResult, void, unknown>

Type parameters

Type parameterValue
Emitter extends AsyncEventEmitter<any, any>-
EventNames extends objectEmitter extends AsyncEventEmitter<Events, any> ? Events : Record<PropertyKey, unknown[]>
EventName extends PropertyKeykeyof AsyncEventEmitterPredefinedEvents | keyof EventNames
EventResult extends unknown[]EventNames extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[EventName] : EventNames[EventName]

Parameters

ParameterType
emitterEmitter
eventNameEventName
options?AbortableMethods

Returns

AsyncGenerator<EventResult, void, unknown>

Inherited from

BaseConnection.on

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:29


once()

1
static once<Emitter, EventNames, EventName, EventResult>(
2
emitter: Emitter,
3
eventName: EventName,
4
options?: AbortableMethods): Promise<EventResult>

Type parameters

Type parameterValue
Emitter extends AsyncEventEmitter<any, any>-
EventNames extends objectEmitter extends AsyncEventEmitter<Events, any> ? Events : Record<PropertyKey, unknown[]>
EventName extends PropertyKeykeyof AsyncEventEmitterPredefinedEvents | keyof EventNames
EventResult extends unknown[]EventNames extends keyof AsyncEventEmitterPredefinedEvents ? AsyncEventEmitterPredefinedEvents[EventName] : EventNames[EventName]

Parameters

ParameterType
emitterEmitter
eventNameEventName
options?AbortableMethods

Returns

Promise<EventResult>

Inherited from

BaseConnection.once

Source

twitchfy/node_modules/@vladfrangu/async_event_emitter/dist/index.d.ts:27