UNPKG

@polygonjs/polygonjs

Version:

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

36 lines (35 loc) 1.94 kB
import { BasePersistedConfig } from '../../../../utils/BasePersistedConfig'; import { SingleBodyFunctionData } from '../_Base'; import { SerializedVariable, SerializedVariableType } from '../_BaseJsPersistedConfigUtils'; import { NamedFunctionMap } from '../../../../../poly/registers/functions/All'; import { JsParamConfigJSON } from '../../utils/JsParamConfig'; import { ParamType } from '../../../../../poly/ParamType'; import { SingleBodyPersistedConfigBaseJsData } from '../_BaseJsPersistedConfig'; import { JsConnectionPointType } from '../../../../utils/io/connections/Js'; import type { InstanceBuilderSopNode } from '../../../../sop/InstanceBuilder'; import type { PointBuilderSopNode } from '../../../../sop/PointBuilder'; export interface PointBuilderFunctionDataAttributeDataItem { attribName: string; attribType: JsConnectionPointType; } export interface PointBuilderFunctionDataAttributeDataReadWrite { read: PointBuilderFunctionDataAttributeDataItem[]; write: PointBuilderFunctionDataAttributeDataItem[]; } export interface PointBuilderFunctionData extends SingleBodyFunctionData { attributesData: PointBuilderFunctionDataAttributeDataReadWrite; } export interface PointBuilderPersistedConfigBaseJsData extends SingleBodyPersistedConfigBaseJsData { functionBody: string; variableNames: string[]; variables: SerializedVariable<SerializedVariableType>[]; functionNames: Array<keyof NamedFunctionMap>; serializedParamConfigs: JsParamConfigJSON<ParamType>[]; attributesData: PointBuilderFunctionDataAttributeDataReadWrite; } export declare class BasePointBuilderPersistedConfig extends BasePersistedConfig { protected node: PointBuilderSopNode | InstanceBuilderSopNode; constructor(node: PointBuilderSopNode | InstanceBuilderSopNode); toData(): Promise<PointBuilderPersistedConfigBaseJsData | undefined>; load(data: PointBuilderPersistedConfigBaseJsData): void; }