UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

91 lines (90 loc) 4.3 kB
import { BaseNodeType } from '../../_Base'; import { BaseParamType } from '../../../params/_Base'; import { ParamOptions } from '../../../params/utils/OptionsController'; import { CoreGraphNode } from '../../../../core/graph/CoreGraphNode'; import { FloatParam } from '../../../params/Float'; import { ParamType } from '../../../poly/ParamType'; import { ParamConstructorMap } from '../../../params/types/ParamConstructorMap'; import { ParamInitValuesTypeMap } from '../../../params/types/ParamInitValuesTypeMap'; import { ParamValuesTypeMap } from '../../../params/types/ParamValuesTypeMap'; import { ParamInitValueSerializedTypeMap } from '../../../params/types/ParamInitValueSerializedTypeMap'; import { ParamInitData } from '../io/IOController'; export type OnSceneLoadHook = () => void; type PostCreateParamsHook = () => void; export interface ParamOptionToAdd<T extends ParamType> { name: string; type: T; initValue: ParamInitValueSerializedTypeMap[T]; rawInput: ParamInitValueSerializedTypeMap[T]; options?: ParamOptions; } export interface ParamsUpdateOptions { namesToDelete?: string[]; toAdd?: ParamOptionToAdd<ParamType>[]; } export declare class ParamsController { readonly node: BaseNodeType; private _param_create_mode; private _params_created; private _paramsByName; private _paramsList; private _paramNames; private _non_spare_params; private _spare_params; private _non_spare_param_names; private _spare_param_names; private _params_node; private _params_added_since_last_params_eval; private _post_create_params_hook_names; private _post_create_params_hooks; private _on_scene_load_hooks; private _on_scene_load_hook_names; constructor(node: BaseNodeType); dispose(): void; private initDependencyNode; init(): void; private _postCreateParams; postCreateSpareParams(): void; updateParams(options: ParamsUpdateOptions): void; private _initFromParamsConfig; private _initParamAccessors; private _removeUnneededAccessors; get params_node(): CoreGraphNode | undefined; get all(): BaseParamType[]; get non_spare(): BaseParamType[]; get spare(): BaseParamType[]; get names(): string[]; get non_spare_names(): string[]; get spare_names(): string[]; private set_with_type; set_float(paramName: string, value: ParamInitValuesTypeMap[ParamType.FLOAT]): void; set_vector3(paramName: string, value: ParamInitValuesTypeMap[ParamType.VECTOR3]): void; has_param(paramName: string): boolean; has(paramName: string): boolean; get(paramName: string): BaseParamType | null; paramWithType<T extends ParamType>(param_name: string, type: T): ParamConstructorMap[T] | undefined; getFloat(param_name: string): FloatParam; value(paramName: string): string | number | boolean | import("three").Vector2 | import("three").Vector3 | import("three").Vector4 | import("three").Color | import("../../../params/ramp/RampValue").RampValue | import("../../../../core/Walker").TypedParamPathParamValue | import("../../../../core/Walker").TypedNodePathParamValue | null | undefined; valueWithType<T extends ParamType>(paramName: string, type: T): ParamValuesTypeMap[T]; boolean(paramName: string): boolean; float(paramName: string): number; integer(paramName: string): number; string(paramName: string): string; vector2(paramName: string): import("three").Vector2; vector3(paramName: string): import("three").Vector3; color(paramName: string): import("three").Color; param(paramName: string): BaseParamType | null; private _deleteParam; addParam<T extends ParamType>(type: T, paramName: string, defaultValue: ParamInitValuesTypeMap[T], options?: ParamOptions, initData?: ParamInitData<T>): ParamConstructorMap[T] | undefined; private _updateCaches; _evalParam(param: BaseParamType): Promise<void>; private _promises; evalParams(params: BaseParamType[]): Promise<void>; paramsEvalRequired(): boolean; evalAll(): Promise<void>; onParamsCreated(hook_name: string, hook: PostCreateParamsHook): void; addOnSceneLoadHook(param_name: string, method: OnSceneLoadHook): void; private _runPostCreateParamsHooks; runOnSceneLoadHooks(): void; } export {};