UNPKG

@polygonjs/polygonjs

Version:

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

33 lines (32 loc) 1.39 kB
import { CoreGraphNodeId } from '../../../core/graph/CoreGraph'; import { TypedParam } from '../_Base'; import { ParamValueSerializedTypeMap, ParamValuePreConversionSerializedTypeMap } from '../types/ParamValueSerializedTypeMap'; import { ParamType } from '../../poly/ParamType'; import { ParamInitValueSerializedTypeMap } from '../types/ParamInitValueSerializedTypeMap'; export interface ParamSerializerData<T extends ParamType> { name: string; type: T; raw_input: ParamInitValueSerializedTypeMap[T]; value: ParamValueSerializedTypeMap[T]; value_pre_conversion: ParamValuePreConversionSerializedTypeMap[T]; expression?: string; graph_node_id: CoreGraphNodeId; error_message?: string; is_visible: boolean; editable: boolean; folder_name?: string; components?: Readonly<CoreGraphNodeId[]>; } export declare class CoreParamSerializer<T extends ParamType> { readonly param: TypedParam<T>; constructor(param: TypedParam<T>); toJSON(): ParamSerializerData<T>; rawInput(): ParamInitValueSerializedTypeMap[T]; value(): ParamValueSerializedTypeMap[T]; value_pre_conversion(): ParamValuePreConversionSerializedTypeMap[T]; expression(): string | undefined; error_message(): string | undefined; is_visible(): boolean; editable(): boolean; } export type BaseParamSerializer = typeof CoreParamSerializer<ParamType>;