import { ElementEnhancementGateway, SpawnContext } from "../assign-gingerly/types"; import { StatementsResult } from "../nested-regex-groups/types"; export interface EndUserProps{} export interface AllProps extends EndUserProps{ enhancedElement: Element & ElementEnhancementGateway; parsedStatements: StatementsResult; resolved?: boolean; } export type AP = AllProps; export type PAP = Partial; export type ProPAP = Promise export interface Actions{ init(self: AllProps, enhancedElement: Element, ctx: SpawnContext, initVals: PAP): Promise; hydrate(self: AP): ProPAP; handleEvent(self: AP, e: Event, parsedStatement: TogglingParameters): void; } export interface TogglingParameters { prop?: string | null; localEventType?: string; targetSpecifier: { prop?: string; targetElementId?: string; }; }