linkup-bot-lib
Version:
20 lines (19 loc) • 647 B
TypeScript
/**
* This class is used for TypeSafe events.
* @internal
*/
export declare class TypedEventEmitter<TEvents extends Record<string, any>> {
private emitter;
/**
* @internal
*/
emit<TEventName extends keyof TEvents & string>(eventName: TEventName, ...eventArg: TEvents[TEventName]): void;
/**
* @internal
*/
on<TEventName extends keyof TEvents & string>(eventName: TEventName, handler: (...eventArg: TEvents[TEventName]) => void): void;
/**
* @internal
*/
off<TEventName extends keyof TEvents & string>(eventName: TEventName, handler: (...eventArg: TEvents[TEventName]) => void): void;
}