UNPKG

@polygonjs/polygonjs

Version:

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

36 lines (35 loc) 1.95 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 { EntityBuilderSopNode } from '../../../../sop/EntityBuilder'; export interface EntityBuilderFunctionDataAttributeDataItem { attribName: string; attribType: JsConnectionPointType; } export interface EntityBuilderFunctionDataAttributeDataReadWrite { read: EntityBuilderFunctionDataAttributeDataItem[]; write: EntityBuilderFunctionDataAttributeDataItem[]; } export interface EntityBuilderFunctionData extends SingleBodyFunctionData { attributesData: EntityBuilderFunctionDataAttributeDataReadWrite; } export interface EntityBuilderPersistedConfigBaseJsData extends SingleBodyPersistedConfigBaseJsData { functionBody: string; variableNames: string[]; variables: SerializedVariable<SerializedVariableType>[]; functionNames: Array<keyof NamedFunctionMap>; serializedParamConfigs: JsParamConfigJSON<ParamType>[]; attributesData: EntityBuilderFunctionDataAttributeDataReadWrite; } export declare class BaseEntityBuilderPersistedConfig extends BasePersistedConfig { protected node: EntityBuilderSopNode | InstanceBuilderSopNode; constructor(node: EntityBuilderSopNode | InstanceBuilderSopNode); toData(): Promise<EntityBuilderPersistedConfigBaseJsData | undefined>; load(data: EntityBuilderPersistedConfigBaseJsData): void; }