be-enhanced
Version:
be-enhanced provides a base class that enables casting spells, or enhancing server-rendered DOM elements based on cross-cutting custom attributes
26 lines (19 loc) • 669 B
TypeScript
import {IEnhancement} from '../trans-render/be/types';
export interface EndUserProps extends IEnhancement{
propagate?: string[],
}
export interface AllProps extends EndUserProps{
propagators: Map<string, EventTarget>;
}
export type AP = AllProps;
export type PAP = Partial<AP>;
export type ProPAP = Promise<PAP>;
export interface ISignal extends EventTarget{
value: any;
}
export interface Actions{
hydrate(self: this): ProPAP;
setKeyVal(key: string, val: any, tsKey?: string): Promise<EventTarget>;
getPropagator(key: string): Promise<EventTarget>;
getGate(prop: string, key?: string): Promise<ISignal>
}