@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
33 lines (32 loc) • 1.39 kB
TypeScript
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>;