UNPKG

@polygonjs/polygonjs

Version:

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

66 lines (65 loc) 3.23 kB
import { CoreGraphNode } from './graph/CoreGraphNode'; import { BaseNodeType } from '../engine/nodes/_Base'; import { BaseParamType } from '../engine/params/_Base'; import { DecomposedPath } from './DecomposedPath'; import { NodeContext, BaseNodeByContextMap } from '../engine/poly/NodeContext'; import { NodeErrorState } from '../engine/nodes/utils/states/Error'; import { ParamType } from '../engine/poly/ParamType'; import { ParamErrorState } from '../engine/params/utils/states/Error'; import { ParamConstructorMap } from '../engine/params/types/ParamConstructorMap'; type NodeOrParam = BaseNodeType | BaseParamType; export declare const NODE_PATH_DEFAULT: { NODE: { EMPTY: string; UV: string; ENV_MAP: string; CUBE_MAP: string; }; }; declare abstract class GraphNodePathParamValue<T extends CoreGraphNode> { protected _path: string; protected _graphNode: T | null; constructor(_path?: string); graphNode(): T | null; private _setGraphNode; abstract graphNodePath(): string | undefined; path(): string; setPath(path: string): void; clone(): this; } export declare class TypedNodePathParamValue extends GraphNodePathParamValue<BaseNodeType> { setNode(node: BaseNodeType | null): void; node(): BaseNodeType | null; graphNodePath(): string | undefined; resolve(nodeStart: BaseNodeType, decomposedPath?: DecomposedPath): void; nodeWithContext<N extends NodeContext, K extends NodeContext>(context: N, errorState?: NodeErrorState<K>): BaseNodeByContextMap[N] | undefined; } export declare class TypedParamPathParamValue extends GraphNodePathParamValue<BaseParamType> { setParam(param: BaseParamType | null): void; param(): BaseParamType | null; graphNodePath(): string | undefined; resolve(nodeStart: BaseNodeType, decomposedPath?: DecomposedPath): void; paramWithType<T extends ParamType>(paramType: T, error_state?: ParamErrorState): ParamConstructorMap[T] | undefined; } export declare class CoreWalker { static readonly SEPARATOR = "/"; static readonly DOT = "."; static readonly CURRENT = "."; static readonly PARENT = ".."; static readonly CURRENT_WITH_SLASH: string; static readonly PARENT_WITH_SLASH: string; static readonly NON_LETTER_PREFIXES: string[]; static splitParentChild(path: string): { parent: string; child: string | undefined; }; static findNode(nodeSrc: BaseNodeType, path: string, decomposedPath?: DecomposedPath): BaseNodeType | null; static findParam(nodeSrc: BaseNodeType, path: string, decomposedPath?: DecomposedPath): BaseParamType | null; static relativePath(srcGraphNode: Readonly<BaseNodeType>, destGraphNode: Readonly<BaseNodeType>): string; static sanitizePath(path: string): string; static closestCommonParent(graphNode1: Readonly<BaseNodeType>, graphNode2: Readonly<BaseNodeType>): Readonly<BaseNodeType> | null; static parents(graphNode: Readonly<NodeOrParam>): Readonly<BaseNodeType>[]; static distanceToParent(graphNode: Readonly<NodeOrParam>, dest: Readonly<BaseNodeType>): number; static makeAbsolutePath(nodeSrc: BaseNodeType | BaseParamType, path: string): string | null; } export {};