import { IAtom, IState } from "./states"; import type { ReflexIntrinsicElements } from "./jsx-types"; import type { VNode } from "./common"; export type IForProps = { each: IState | GItem[]; as?: GAs; children?: (item: GItem) => VNode; } & ReflexIntrinsicElements[GAs]; /** * This component can be attached to an array or a state with array as value to improve performances on changes. * This will add a dom element. Default is "div", can be changed with for example. * For will prevent rendering outside the loop and optimize list diffing. * @param props All other props are passed to container. * @constructor */ export declare function For(props: IForProps): (props: any) => VNode; /** * Advanced check between objects A and B. * Warning, can be very CPU intensive on big objects ! * But it's not a recursive check, only the first layers with "children" special case. * Can be used with "shouldUpdate" extension -> "shouldUpdate( advancedPropsCompare )" */ export declare const advancedPropsCompare: (a: object, b: object) => boolean; export declare function atom(value: GType): IAtom; export declare function atoms(value: GType): IAtom; export declare function particle(getter: () => GType): IAtom;