@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
33 lines (32 loc) • 1.65 kB
TypeScript
import { BaseNodeType } from '../_Base';
type NodeLifeCycleControllerCallback = () => void;
type NodeLifeCycleControllerCallbackWithChildNode = (childNode: BaseNodeType) => void;
export declare class NodeLifeCycleController {
protected node: BaseNodeType;
protected _creationCompleted: boolean;
protected _onChildAddCallbacks: NodeLifeCycleControllerCallbackWithChildNode[] | undefined;
private _onChildRemoveCallbacks;
private _onAfterCreatedCallbacks;
private _onAfterAddedCallbacks;
private _onBeforeDeletedCallbacks;
private _onAfterDeletedCallbacks;
constructor(node: BaseNodeType);
dispose(): void;
setCreationCompleted(): void;
creationCompleted(): boolean;
onChildAdd(callback: NodeLifeCycleControllerCallbackWithChildNode): void;
runOnChildAddCallbacks(node: BaseNodeType): void;
onChildRemove(callback: NodeLifeCycleControllerCallbackWithChildNode): void;
runOnChildRemoveCallbacks(node: BaseNodeType): void;
onAfterCreated(callback: NodeLifeCycleControllerCallback): void;
runOnAfterCreatedCallbacks(): void;
onAfterAdded(callback: NodeLifeCycleControllerCallback): void;
runOnAfterAddedCallbacks(): void;
onBeforeDeleted(callback: NodeLifeCycleControllerCallback): void;
runOnBeforeDeleteCallbacks(): void;
onAfterDeleted(callback: NodeLifeCycleControllerCallback): void;
runOnDeleteCallbacks(): void;
protected _runCallbacks(hooks: NodeLifeCycleControllerCallback[] | undefined): void;
protected _runCallbacksWithChildNode(hooks: NodeLifeCycleControllerCallbackWithChildNode[] | undefined, childNode: BaseNodeType): void;
}
export {};