UNPKG

threepipe

Version:

A modern 3D viewer framework built on top of three.js, written in TypeScript, designed to make creating high-quality, modular, and extensible 3D experiences on the web simple and enjoyable.

35 lines 1.53 kB
import { IAnimationLoopEvent, IObject3D } from '../../../core'; import { UiObjectConfig } from 'uiconfig.js'; import { ComponentCtx, ComponentDefn, ComponentJSON } from './componentTypes'; export type TObject3DComponent = typeof Object3DComponent; export declare class Object3DComponent { ['constructor']: TObject3DComponent & ComponentDefn; enabled: boolean; static StateProperties: ComponentDefn['StateProperties']; static ComponentType: string; readonly isObject3DComponent = true; protected _object: IObject3D | null; get object(): IObject3D; set object(_: IObject3D); uuid: string; uiConfig?: UiObjectConfig; state: never; protected _state: ComponentJSON['state']; get stateRef(): Record<string, any>; setState(state: ComponentJSON['state']): this | undefined; ctx: ComponentCtx; constructor(); start(): void; stop(): void; update(_e: IAnimationLoopEvent): boolean | void; init(object: IObject3D, state: ComponentJSON['state']): void; destroy(): Record<string, any>; stateChangeHandlers: Record<string, ((value: any, oldValue: any, key?: string) => void)[]>; onStateChange<K extends keyof this & string>(key: K, fn: (value: this[K], oldValue: this[K], key?: K) => void): void; /** * @internal */ ['_sType']?: string; getComponent<T extends TObject3DComponent>(type: T | string, self?: boolean): InstanceType<T> | null; } //# sourceMappingURL=../../../src/plugins/extras/components/Object3DComponent.d.ts.map