@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
30 lines (29 loc) • 1.79 kB
TypeScript
import { BaseNodeType } from './../../_Base';
import { NodeContext } from '../../../poly/NodeContext';
import { NodeParamsConfig } from '../params/ParamsConfig';
import { PolyNodeDefinition, PolyNodesInputsData } from './PolyNodeDefinition';
import { PolyNodeClassByContext } from './PolyNodeClassByContext';
import { PolyNodeDataRegister } from './PolyNodeDataRegister';
type CreatePolyNodeFunction = (nodeType: string, definition: PolyNodeDefinition, polyNodeControllerClass: typeof PolyNodeController) => any;
export declare class PolyNodeController {
private node;
private _definition;
private static _createPolyNodeFunctionByContext;
static registerCreatePolyNodeFunctionForContext(context: NodeContext, createPolyNodeFunction: CreatePolyNodeFunction): void;
private static _definitionRegister;
private _locked;
constructor(node: BaseNodeType, _definition: PolyNodeDefinition);
initializeNode(): void;
locked(): boolean;
setLockedState(state: boolean): void;
private _initInputs;
static setupParamsConfig(paramsConfig: NodeParamsConfig, data: PolyNodeDefinition): void;
createChildNodesFromDefinition(): void;
static inputsData(node: BaseNodeType): PolyNodesInputsData;
static polyNodeData(node: BaseNodeType, inputsData?: PolyNodesInputsData): Promise<PolyNodeDefinition>;
static _createNodeClass<NC extends NodeContext>(nodeContext: NC, nodeType: string, data: PolyNodeDefinition): PolyNodeClassByContext[NC] | undefined;
static createNodeClassAndRegister<NC extends NodeContext>(dataRegister: PolyNodeDataRegister<NC>): void;
static definition<NC extends NodeContext>(context: NC, type: string): PolyNodeDefinition | undefined;
static register(): Map<NodeContext, Map<string, PolyNodeDefinition>>;
}
export {};