UNPKG

polygonjs-engine

Version:

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

59 lines (58 loc) 2.14 kB
import { Number2, PolyDictionary } from '../../../../types/GlobalTypes'; import { TypedNode } from '../../../nodes/_Base'; import { NodeContext } from '../../../poly/NodeContext'; import { ParamJsonExporterData } from '../../../nodes/utils/io/IOController'; import { ParamType } from '../../../poly/ParamType'; import { BaseConnectionPointData } from '../../../nodes/utils/io/connections/_Base'; interface NamedInputData { index: number; node: string; output: string; } declare type IndexedInputData = string | null; export declare type InputData = NamedInputData | IndexedInputData; interface FlagsData { bypass?: boolean; display?: boolean; optimize?: boolean; } export interface IoConnectionPointsData { in?: BaseConnectionPointData[]; out?: BaseConnectionPointData[]; } export interface NodeJsonExporterData { type: string; nodes?: PolyDictionary<NodeJsonExporterData>; children_context?: NodeContext; params?: PolyDictionary<ParamJsonExporterData<ParamType>>; inputs?: InputData[]; connection_points?: IoConnectionPointsData; selection?: string[]; flags?: FlagsData; cloned_state_overriden?: boolean; persisted_config?: object; } export interface NodeJsonExporterUIData { pos?: Number2; comment?: string; nodes: PolyDictionary<NodeJsonExporterUIData>; } declare type BaseNodeTypeWithIO = TypedNode<NodeContext, any>; export interface DataRequestOption { showPolyNodesData?: boolean; } export declare class NodeJsonExporter<T extends BaseNodeTypeWithIO> { protected _node: T; private _data; constructor(_node: T); data(options?: DataRequestOption): NodeJsonExporterData; ui_data(options?: DataRequestOption): NodeJsonExporterUIData; protected ui_data_without_children(): NodeJsonExporterUIData; private is_root; protected inputs_data(): InputData[]; protected connection_points_data(): IoConnectionPointsData | undefined; protected params_data(): PolyDictionary<any>; protected nodes_data(options?: DataRequestOption): PolyDictionary<NodeJsonExporterData>; protected add_custom(): void; } export {};