lingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
59 lines (58 loc) • 2.45 kB
TypeScript
import { Events } from "@lincode/events";
import { Cancellable, Disposable } from "@lincode/promiselikes";
import { GetGlobalState, Reactive } from "@lincode/reactivity";
import IAppendable from "../../interface/IAppendable";
import Nullable from "../../interface/utils/Nullable";
import type MeshAppendable from "./MeshAppendable";
import { GameObjectType } from "../../api/serializer/types";
type EventName = "name" | "runtimeSchema" | "loaded";
export default class Appendable extends Disposable implements IAppendable {
constructor();
get componentName(): GameObjectType;
runtimeData: Nullable<Record<string, any>>;
runtimeDefaults: Nullable<Record<string, any>>;
parent?: Appendable | MeshAppendable;
children?: Set<Appendable>;
get firstChild(): Appendable | undefined;
private _firstChildState?;
protected get firstChildState(): Reactive<Appendable | undefined>;
private refreshFirstChildState;
$appendNode(child: Appendable): void;
append(child: Appendable): void;
attach(child: Appendable): void;
private _deleteSystemSet?;
get $deleteSystemSet(): Set<(self: any) => void>;
protected disposeNode(): void;
private disposeChildren;
dispose(): this;
traverse(cb: (appendable: Appendable) => void): void;
traverseSome(cb: (appendable: Appendable) => unknown): boolean;
private _events?;
get $events(): Events<any, EventName>;
$emitEvent(key: EventName, payload?: any): void;
protected _name?: string;
get name(): string | undefined;
set name(val: string | undefined);
protected _id?: string;
get id(): string | undefined;
set id(val: string | undefined);
private _uuid?;
get uuid(): string;
set uuid(val: string);
private _proxy?;
get proxy(): Appendable | undefined;
set proxy(val: Appendable | undefined);
protected createEffect(cb: () => (() => void) | void, getStates: Array<GetGlobalState<any> | any>): Cancellable;
private handles?;
cancelHandle(name: string, lazyHandle: undefined | false | "" | (() => Cancellable)): Cancellable | undefined;
private _onLoop?;
get onLoop(): ((dt: number) => void) | undefined;
set onLoop(cb: ((dt: number) => void) | undefined);
$disableSerialize?: boolean;
$disableSceneGraph?: boolean;
$disableUnload?: boolean;
$disableSelection?: boolean;
$ghost(disableSelection?: boolean): void;
$unghost(): void;
}
export {};