@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
45 lines (44 loc) • 1.79 kB
TypeScript
import { BaseNodeType } from '../_Base';
import { NodeUIDataJson } from './UIData';
import { BaseConnectionPointData } from './io/connections/_Base';
import { CoreGraphNodeId } from '../../../core/graph/CoreGraph';
export interface NodeSerializerData {
name: string;
type: string;
graph_node_id: CoreGraphNodeId;
is_dirty: boolean;
ui_data_json: NodeUIDataJson;
error_message: string | undefined;
children: CoreGraphNodeId[];
maxInputsCount: number;
inputs: Readonly<Array<CoreGraphNodeId | undefined>>;
input_connection_output_indices: Readonly<Array<number | undefined>> | undefined;
named_input_connection_points: Readonly<BaseConnectionPointData[]>;
named_output_connection_points: Readonly<BaseConnectionPointData[]>;
param_ids: CoreGraphNodeId[];
override_cloned_state_allowed: boolean;
inputs_clone_required_states: boolean | boolean[];
flags?: {
display?: boolean;
bypass?: boolean;
optimize?: boolean;
};
selection?: CoreGraphNodeId[];
polyNode?: {
locked: boolean;
};
}
export declare class CoreNodeSerializer {
protected node: BaseNodeType;
constructor(node: BaseNodeType);
dispose(): void;
toJSON(includeParamComponents?: boolean): NodeSerializerData;
childrenIds(): number[];
maxInputsCount(): number;
inputIds(): Readonly<(CoreGraphNodeId | undefined)[]>;
inputConnectionOutputIndices(): Readonly<(number | undefined)[]> | undefined;
namedInputConnectionPoints(): Readonly<BaseConnectionPointData[]>;
namedOutputConnectionPoints(): Readonly<BaseConnectionPointData[]>;
to_json_params_from_names(param_names: string[], include_components?: boolean): number[];
to_json_params(include_components?: boolean): number[];
}