import { PartialWithUndefinedReactivePropsToNativeProps, ReactivePropsToNativePropsAndChanged } from "xbsj-xe2/dist-node/xe2-base-utils"; import { SceneObjectKey } from "xbsj-xe2/dist-node/xe2-utils"; import { ESSceneObject, SceneObject } from "../ESSceneObject"; export declare type WatcherEvalFuncType = (sceneObjects: (SceneObject | undefined)[]) => void; export declare class Watcher extends ESSceneObject { static readonly type: string; get typeName(): string; get defaultProps(): { execOnceFuncStr: string | undefined; updateFuncStr: string | undefined; toDestroyFuncStr: string | undefined; name: string; ref: string | undefined; devTags: import("xbsj-xe2/dist-node/xe2-base-utils").ReactiveVariable; extras: import("xbsj-xe2/dist-node/xe2-base-utils").ReactiveVariable; enabled: boolean; objIdAndPropChangedNames: import("xbsj-xe2/dist-node/xe2-base-utils").ReactiveVariable<[id: string, propChangedName: string][]>; evalFuncStr: string; evalMode: EvalModelType; evalOnlyWhenObjsAllExist: boolean; debug: boolean; }; get json(): JsonType; set json(value: JsonType); private _evalFunc?; get evalFunc(): WatcherEvalFuncType | undefined; set evalFunc(value: WatcherEvalFuncType | undefined); private _forceExecute; /** * 强制执行 */ forceExecute(): void; constructor(id?: SceneObjectKey); static defaultEvalFuncStr: string; static evalFuncStrReadMe: string; getProperties(language?: string): import("../ESSceneObject").Property[]; } export declare type EvalModelType = 'Immediate' | 'NextAnimateFrame'; export declare namespace Watcher { const createDefaultProps: () => { execOnceFuncStr: string | undefined; updateFuncStr: string | undefined; toDestroyFuncStr: string | undefined; name: string; ref: string | undefined; devTags: import("xbsj-xe2/dist-node/xe2-base-utils").ReactiveVariable; extras: import("xbsj-xe2/dist-node/xe2-base-utils").ReactiveVariable; enabled: boolean; objIdAndPropChangedNames: import("xbsj-xe2/dist-node/xe2-base-utils").ReactiveVariable<[id: string, propChangedName: string][]>; evalFuncStr: string; evalMode: EvalModelType; evalOnlyWhenObjsAllExist: boolean; debug: boolean; }; } export interface Watcher extends ReactivePropsToNativePropsAndChanged> { } declare type JsonType = PartialWithUndefinedReactivePropsToNativeProps & { type: string; }>; export {};