UNPKG

@diffusionstudio/core-v4

Version:

2D motion graphics and video rendering engine

15 lines (14 loc) 898 B
import { Constructor } from '../../types'; import { BaseEvents, EmittedEvent } from './types'; export declare function EventEmitterMixin<Events = {}, T extends Constructor = Constructor>(Base: T): { new (...args: any[]): { _handlers: { [T_1 in keyof BaseEvents<Events>]?: { [x: string]: (event: EmittedEvent<BaseEvents<Events>[T_1], any>) => void; }; }; on<T_1 extends keyof BaseEvents<Events>>(eventType: T_1, callback: (event: EmittedEvent<BaseEvents<Events>[T_1], /*elided*/ any>) => void): string; off(id?: string | "*", ...ids: string[]): void; emit<T_1 extends keyof BaseEvents<Events>>(eventType: T_1, detail: BaseEvents<Events>[T_1]): void; bubble(target: /*elided*/ any): string; resolve(eventType: keyof BaseEvents<Events>): (resolve: (value: unknown) => void, reject: (reason?: any) => void) => void; }; } & T;