UNPKG

eosplayer

Version:

eosplayer is the glue layer of eosjs, which is packaged based on eosjs and provides better usability for the application layer. It can be used on browsers already installed scatter or in Dapp wallets.

41 lines (40 loc) 1.35 kB
interface IEvent { cb: (...args: any[]) => any; ctx: any; } interface IEventMap { [event: string]: IEvent; } /** * Event Handler * @desc * - only enabled event can be emitted * - If the callback of an event is not set, alert will be called by default on the browser, and Error will be triggered in nodejs * @author kinghand@foxmail.com */ export default class EventHandler { protected _defaultCb: (...args: any[]) => any; protected _eventMap: IEventMap; protected _supportedEvents: string[]; constructor(supportedEvents?: string[] | IEventMap); /** * enable event names * @param {Array | Object} supportedEvents - keys will be used when it's an object */ enableEvents(supportedEvents: any): void; /** * set callback of an event name * @param {string} event - event name * @param {Function} fnCallback - if there is already a callback, then the new one will cover the previous one. * @param {*} instance - the instance of the callback. * @return {EventHandler} - for pipeline */ setEvent(event: string, fnCallback: (...args: any[]) => any, instance: any): this; /** * trigger an event by name * @param {string} event - event name * @param {Array} args - arguments */ emitEvent(event: string, ...args: any[]): any; } export {};