import {BEAllProps, EventListenerOrFn, IEnhancement} from '../trans-render/be/types'; import {StringWithAutocompleteOptions} from '../trans-render/types'; import { Specifier } from '../trans-render/dss/types'; import {AbsorbingObject} from '../trans-render/asmr/types'; import {Handlers} from '../be-hive/types'; export interface EndUserProps extends IEnhancement{ forAttr?: string, handler: string eventArg: string, js: string, } export interface AllProps extends EndUserProps{ //calculator: {new: () => EventListenerObject}, // value: any; // isParsed: boolean; // attrExpr?: string | null; //publishEventType: 'input' | 'change' | 'load', handlerObj?: EventListenerOrFn, defaultEventType: StringWithAutocompleteOptions< | 'input' | 'change' >, forArgs: string[], remoteSpecifiers: Array, isAttached?: boolean, isOutputEl?: boolean, enhElLocalName: string, enhKey: string, categorized?: boolean, remSpecifierLen?: number, propToAO: {[key: string] : AbsorbingObject}, checkedRegistry: boolean, notYetParsedJS: boolean, } export type AP = AllProps; export type PAP = Partial; export type ProPAP = Promise; export type BAP = AP & BEAllProps & Handlers; export interface Actions{ categorizeEl(self: BAP): PAP; getEvtHandler(self: BAP): PAP; parseForAttr(self: BAP): PAP; getDefltEvtType(self: BAP): PAP; // findScriptEl(self: BAP): PAP; // importSymbols(self: BAP): ProPAP; genRemoteSpecifiers(self: BAP): PAP; seek(self: BAP): ProPAP; hydrate(self: BAP): ProPAP; parseJS(self: BAP): ProPAP; }