UNPKG

@polygonjs/polygonjs

Version:

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

64 lines (63 loc) 3.73 kB
import { TypedNode } from '../_Base'; import { AssemblerControllerNode } from './code/Controller'; import { NodeContext } from '../../poly/NodeContext'; import { NodeParamsConfig } from '../utils/params/ParamsConfig'; import { ParamConfigsController } from '../utils/code/controllers/ParamConfigsController'; import { JsLinesCollectionController } from './code/utils/JsLinesCollectionController'; import { JsParamConfig } from './code/utils/JsParamConfig'; import { ParamType } from '../../poly/ParamType'; import { IntegerParam } from '../../params/Integer'; import { FloatParam } from '../../params/Float'; import { Vector2Param } from '../../params/Vector2'; import { Vector3Param } from '../../params/Vector3'; import { Vector4Param } from '../../params/Vector4'; import { ColorParam } from '../../params/Color'; import { BooleanParam } from '../../params/Boolean'; import { Color, Quaternion, Vector2, Vector3, Vector4 } from 'three'; import { BaseParamType } from '../../params/_Base'; import { EvaluatorEventData } from './code/assemblers/actor/ActorEvaluator'; import { StringParam } from '../../params/String'; import { BaseJsShaderAssembler } from './code/assemblers/_Base'; export declare const TRIGGER_CONNECTION_NAME = "trigger"; export interface WrappedBodyLines { methodNames: string[]; wrappedLines: string; } export declare function wrapIfComputed(varName: string, linesController: JsLinesCollectionController): string; export declare function variableFromParamRequired(param: BaseParamType): param is ColorParam | Vector2Param | Vector3Param | Vector4Param; export declare function createVariableFromParam(param: ColorParam | Vector2Param | Vector3Param | Vector4Param): Vector2 | Vector3 | Quaternion | Vector4 | Color; export declare class TypedJsNode<K extends NodeParamsConfig> extends TypedNode<NodeContext.JS, K> { static context(): NodeContext; protected _param_configs_controller: ParamConfigsController<JsParamConfig<ParamType>> | undefined; private _paramsEditableStatesController; eventData(): EvaluatorEventData | EvaluatorEventData[] | undefined; isTriggering(): boolean; initializeBaseNode(): void; cook(): void; private __setFunctionNodeToRecompileAllowed; protected _setFunctionNodeToRecompileAllowed(state: boolean): void; protected _setFunctionNodeToRecompile(): void; functionNode(): AssemblerControllerNode<BaseJsShaderAssembler> | undefined; jsVarName(name: string): string; inputVarName(inputName: string): string; static inputVarName(node: BaseJsNodeType, inputName: string): string; variableForInputParam(shadersCollectionController: JsLinesCollectionController, param: IntegerParam | FloatParam | Vector2Param | Vector3Param | Vector4Param | ColorParam | BooleanParam | StringParam): string; variableForInput(shadersCollectionController: JsLinesCollectionController, inputName: string): string; private _variableForInput; setLines(shadersCollectionController: JsLinesCollectionController): void; setTriggeringLines(shadersCollectionController: JsLinesCollectionController, triggeredMethods: string): void; setTriggerableLines(shadersCollectionController: JsLinesCollectionController): void; reset_code(): void; paramsGenerating(): boolean; setParamConfigs(): void; param_configs(): readonly JsParamConfig<ParamType>[] | undefined; } export type BaseJsNodeType = TypedJsNode<NodeParamsConfig>; export declare class BaseJsNodeClass extends TypedJsNode<NodeParamsConfig> { } declare class ParamlessJsParamsConfig extends NodeParamsConfig { } export declare class ParamlessTypedJsNode extends TypedJsNode<ParamlessJsParamsConfig> { paramsConfig: ParamlessJsParamsConfig; } export {};