import type { AnyDataType, GetDataType } from "dilswer"; import type { ElementLifecycle } from "../../element-extender"; import type { WindowElement } from "../../rg-types"; type KeysOf
= P extends P ? keyof P : never; export type _PropsReader
= { [K in KeysOf
]?: P extends Record = _PropsReader = {
propName: string;
instead(propertyName: KeysOf ): void;
isUpdatedInThisCycle(propertyName: KeysOf ): boolean;
};
export type PropUpdateCallback , mapperUpdateApi: MapperUpdateApi ) => void | (() => void);
export type PropCaseCollector > = (caseCollector: PropCaseCollector ;
addCustomCase: (nameMatch: (propName: string) => boolean, update: PropUpdateCallback > {
private element;
private properties;
private map;
private isFirstUpdate;
private customCases;
private collectorApi;
currentProps: PropsReader ;
private addCustomCase;
constructor(element: ElementLifecycle, ...getCases: Array