import type { ReadonlyDeep } from "hry-types/src/Any/_api"; import type { IfExtends } from "hry-types/src/Any/IfExtends"; import type { Func } from "hry-types/src/Misc/Func"; import type { ComputeIntersection } from "hry-types/src/Object/ComputeIntersection"; import type { IReactionDisposer } from "mobx"; import type { WMComponentInstance, WMInstanceMethods, WMPageInstance } from "../../../types/OfficialTypeAlias"; import type { CustomEventMethods } from "./CustomEventMethods"; import type { CustomSetData } from "./CustomSetData"; export type RootComponentInstance = IfExtends & Omit, "setData"> & CustomSetData & IfExtends<{}, StoreDoc, unknown, { disposer?: { [k in keyof StoreDoc]: IReactionDisposer; }; applySetData: Func; }> & TMethods & CustomEventMethods & { data: ReadonlyDeep>; }; export type ComponentInstance = RootComponentInstance; export type PageInstance = RootComponentInstance;