import {BEAllProps, IEnhancement, IW} from '../trans-render/be/types'; import { Specifier } from "../trans-render/dss/types"; import {aggKeys, Handlers} from '../be-hive/types'; import { StringWithAutocompleteOptions } from '../trans-render/types'; import {AbsorbingObject} from '../trans-render/asmr/types'; export interface EndUserProps extends IEnhancement{ } export interface AllProps extends EndUserProps{ parsedStatements: Array, rawStatements?: Array, didInferring?: boolean, ws?: Array, //enhancementInfo: EnhancementInfo, enhKey: string, } export type AP = AllProps; export type PAP = Partial; export type ProPAP = Promise; export type BAP = AP & BEAllProps & Handlers; export interface Actions{ noAttrs(self: BAP): ProPAP; infer(self: BAP) : ProPAP; seek(self: BAP): ProPAP; // hydrate(self: this): ProPAP; warn(...data: any[]): void; } export interface AndIfThen{ ifCondition: string, passValue: string, } export interface ObservingParameters{ localPropToSet?: string, remoteSpecifiers: Array, punt: boolean, mappings?: Array, aggKey: StringWithAutocompleteOptions, interpolatingExpr: string, JSExpr: string, ONExpr: string, action: | 'set' | 'toggle' | 'increment' | 'decrement' | 'set-class' | 'set-part' //aggregateRemoteVals?: 'Union' | 'Conjunction' | 'ObjectAssign' | 'Sum' | 'Product' | 'ArrayPush' } // export interface ObserverOptions{ // abortControllers: Array, // remoteEl?: Element, // } export type LoadEventName = 'load'; export interface EventForObserver{ factors: {[key: string | number] : any}, setProps?: {[key: string]: any}; enh: string, } // export interface ObserverEventModel{ // factors: {[key: string] : any}, // vals: any[], // }