UNPKG

@polygonjs/polygonjs

Version:

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

20 lines (19 loc) 1.36 kB
import { PersistedConfigWithShaders } from '../../.././utils/BasePersistedConfig'; import { BaseJsShaderAssembler, BaseFunctionData } from './_Base'; import { RegisterableVariable, SerializedVariable, SerializedVariableType } from './_BaseJsPersistedConfigUtils'; import { NamedFunctionMap } from '../../../../poly/registers/functions/All'; import { JsParamConfigJSON } from '../utils/JsParamConfig'; import { ParamType } from '../../../../poly/ParamType'; import { AssemblerControllerNode } from '../Controller'; export interface PersistedConfigBaseJsData extends PersistedConfigWithShaders { variableNames: string[]; variables: SerializedVariable<SerializedVariableType>[]; functionNames: Array<keyof NamedFunctionMap>; serializedParamConfigs: JsParamConfigJSON<ParamType>[]; } export interface SingleBodyPersistedConfigBaseJsData extends PersistedConfigBaseJsData { functionBody: string; } export declare function serializedVariablesFromFunctionData(functionData: BaseFunctionData): SerializedVariable<SerializedVariableType>[]; export declare function variablesByNameFromPersistedConfigData(data: PersistedConfigBaseJsData): Record<string, RegisterableVariable>; export declare function functionsByNameFromPersistedConfigData(data: PersistedConfigBaseJsData, node: AssemblerControllerNode<BaseJsShaderAssembler>): Record<string, Function>;