vue-events-backbone
Version:
This plugin is an Event Bus that, by default, simulates DOM events propagation through vue components.
48 lines (47 loc) • 2.29 kB
TypeScript
import { ComponentInternalInstance, ObjectDirective } from 'vue';
import { EventsBackboneEventHandler, EventsBackboneDirectiveParams, EventsBackboneSpineInterface } from '../types';
export type dopedComponentInternalInstance = ComponentInternalInstance & {
watchedIsUnmounted: boolean;
isUnmountedCallbacks: Array<() => void>;
};
export declare const dopeComponentInstance: (c: ComponentInternalInstance | dopedComponentInternalInstance) => dopedComponentInternalInstance;
export declare class EventsBackboneSpine implements EventsBackboneSpineInterface {
private readonly evntsTree;
private readonly lstnrsRegistry;
private readonly compsRegistry;
private readonly listenAllSymbol;
private readonly emptyMap;
constructor();
private _getComponentFromUid;
private _callHandler;
private _callHandlers;
private _internalEmitEvent;
private _getBranchSymbols;
emitEvent<T>(cInst: ComponentInternalInstance, ev: string, d?: T, configs?: {
global?: boolean;
eager?: boolean;
}): Promise<void>;
private _addEventEntry;
private _checkEventEntryValidity;
private _removeEventEntry;
private _rebuildEventNameFromSymbol;
private _rebuildEventNameFromEventEntry;
private _findEventEntryFromNodeName;
private _getEventEntry;
private _checkEventNameValidity;
private _addListener;
private _addListenerEntry;
private _addCompEntrySymbol;
private _removeCompEntry;
private _removeCompEntrySymbol;
private _removeListenerEntry;
private _removeListener;
on(c: ComponentInternalInstance, ev: string, h: EventsBackboneEventHandler): void;
off(uid: number, ev: string, h?: EventsBackboneEventHandler): void;
offAll(c: ComponentInternalInstance): void;
}
export declare const BB: EventsBackboneSpine;
export declare function removeAllEventBackboneListeners(comp?: ComponentInternalInstance): void;
export declare function removeEventListeners(dp: EventsBackboneDirectiveParams, comp?: ComponentInternalInstance): void;
export declare function addEventBackboneListeners(dp: EventsBackboneDirectiveParams, comp?: ComponentInternalInstance, replace?: boolean): void;
export declare const EventsBackBoneDirective: ObjectDirective<any, EventsBackboneDirectiveParams>;