smartuniverse/ts/smartuniverse.classes.broadcastevent.ts
2019-11-10 16:55:17 +01:00

24 lines
528 B
TypeScript

import * as plugins from './smartuniverse.plugins';
/**
* broadcasts an event to multiple channels
* also handles subsription
*/
export class BroadcastEvent<T extends plugins.typedrequestInterfaces.IBroadCastEvent<any>> {
public eventSubject = new plugins.smartrx.rxjs.Subject<T['payload']>();
constructor() {
};
public fire(eventArg: T['payload']) {
};
public subscribe(funcArg: (nextArg: T['payload']) => void): plugins.smartrx.rxjs.Subscription {
return this.eventSubject.subscribe(funcArg);
}
}