UNPKG

ts-lib-extended

Version:
43 lines (42 loc) 1.17 kB
import { DisposableBase } from '../disposable/base.js'; import type { EventArgs } from './args/index.js'; import { Event } from './index.js'; /** * A handler that provides subscribable, public events. * The handler is intended for internal (protected, private) use * * @export * @class EventHandler * @template TSender * @template {EventArgs | void} [TArgs=void] * @extends {DisposableBase} * @since 1.0.0 */ export declare class EventHandler<TSender, TArgs extends EventArgs | void = void> extends DisposableBase { private _callbacks; private _event; private _detachEvent; constructor(); /** * the subscribable event itself * * @readonly * @type {Event<TSender, TArgs>} * @memberof EventHandler * @since 1.0.0 */ get event(): Event<TSender, TArgs>; /** * trigger/invoke event * * @param {TSender} sender_ * @param {TArgs} eventArgs_ * @memberof EventHandler * @since 1.0.0 */ invoke(sender_: TSender, eventArgs_: TArgs): void; private subscribe; private unsubscribe; protected disposingInstance(): void; protected disposedInstance(): void; }