@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
46 lines (45 loc) • 2.37 kB
TypeScript
import { NodeJsonExporterData } from './../export/Node';
import { BaseNodeType } from './../../../nodes/_Base';
import { PolyScene } from '../../../scene/PolyScene';
import { SceneJsonExporterData } from '../export/Scene';
import { ImportReport } from './ImportReport';
import { OperationsComposerSopNode } from '../../../nodes/sop/OperationsComposer';
import { CoreNodeSerializer } from '../../../nodes/utils/CoreNodeSerializer';
import { CoreParamSerializer } from '../../../params/utils/CoreParamSerializer';
import type { ParamType } from '../../../poly/ParamType';
export type ConfigureSceneCallback = (scene: PolyScene) => void;
export type NodeCookWatchCallback = (scene: PolyScene) => void;
export interface SerializerOptions {
nodeSerializerClass: typeof CoreNodeSerializer;
paramsSerializerClass: typeof CoreParamSerializer<ParamType>;
}
interface SceneJSONImporterOptions {
sceneName?: string;
configureScene?: ConfigureSceneCallback;
nodeCookWatcher?: NodeCookWatchCallback;
measurePerformanceOnLoad?: boolean;
serializers?: SerializerOptions;
}
interface MigrateHelper {
migrateData: (data: SceneJsonExporterData) => SceneJsonExporterData;
migrateNodeType: (parentNode: BaseNodeType, nodeData: NodeJsonExporterData) => string;
migrateParams: (parentNode: BaseNodeType, nodeData: NodeJsonExporterData) => void;
}
export declare class SceneJsonImporter {
private _data;
private _options?;
readonly report: ImportReport;
private _base_operations_composer_nodes_with_resolve_required;
constructor(_data: SceneJsonExporterData, _options?: SceneJSONImporterOptions | undefined);
static loadData(data: SceneJsonExporterData, options?: SceneJSONImporterOptions): Promise<PolyScene>;
private _migrateHelper;
setMigrateHelper(migrateHelper: MigrateHelper): void;
migrateHelper(): MigrateHelper | undefined;
oldPolygonjsSceneVersion(): string | undefined;
scene(options?: SerializerOptions): PolyScene;
shadersData(): import("./../export/Node").NodeJSONShadersData | undefined;
jsFunctionBodiesData(): import("./../export/Node").NodeJSONFunctionBodiesData | undefined;
add_operations_composer_node_with_path_param_resolve_required(operations_composer_node: OperationsComposerSopNode): void;
private _resolve_operation_containers_with_path_param_resolve;
}
export {};