oceanic.js
Version:
A NodeJS library for interfacing with Discord.
20 lines (19 loc) • 1.27 kB
TypeScript
/// <reference types="node" />
import EventEmitter from "node:events";
declare interface TypedEmitter<Events extends Record<string | symbol, any>> extends EventEmitter {
addListener<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
emit<K extends keyof Events>(eventName: K, ...args: Events[K]): boolean;
listenerCount(eventName: keyof Events): number;
listeners(eventName: keyof Events): Array<Function>;
off<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
on<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
once<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
prependListener<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
prependOnceListener<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
rawListeners(eventName: keyof Events): Array<Function>;
removeAllListeners(event?: keyof Events): this;
removeListener<K extends keyof Events>(event: K, listener: (...args: Events[K]) => void): this;
}
declare class TypedEmitter<Events extends Record<string | symbol, any>> extends EventEmitter {
}
export default TypedEmitter;