@tresjs/core 5.9.1 → 5.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/tres.d.ts CHANGED
@@ -1,31 +1,28 @@
1
1
  /**
2
2
  * name: @tresjs/core
3
- * version: v5.9.1
3
+ * version: v5.9.3
4
4
  * (c) 2026
5
5
  * description: Declarative ThreeJS using Vue Components
6
6
  * author: Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)
7
7
  */
8
- import * as vue20 from "vue";
9
8
  import { App, ComputedRef, DefineComponent, MaybeRef, MaybeRefOrGetter, Reactive, Ref, ShallowRef, VNode, VNodeRef } from "vue";
10
9
  import * as THREE from "three";
11
10
  import { BufferGeometry, Camera, Color, ColorRepresentation, ColorSpace, Event, Fog, Group, Layers, Light, Loader, LoadingManager, Material, Mesh, Object3D, Object3DEventMap, OrthographicCamera, PerspectiveCamera, Scene, ShadowMapType, ToneMapping, Vector3, WebGLRenderer } from "three";
12
- import * as _vueuse_core0 from "@vueuse/core";
13
11
  import { EventHookOff, UseAsyncStateOptions, UseAsyncStateReturn } from "@vueuse/core";
14
12
  import { PointerEvent, PointerEventsMap } from "@pmndrs/pointer-events";
15
13
  import { Renderer } from "three/webgpu";
16
-
17
14
  //#region src/composables/useLoader/index.d.ts
18
- interface LoaderMethods {
15
+ export interface LoaderMethods {
19
16
  setDRACOLoader: (dracoLoader: any) => void;
20
17
  setMeshoptDecoder: (meshoptDecoder: any) => void;
21
18
  setKTX2Loader: (ktx2Loader: any) => void;
22
19
  }
23
- type TresLoader<T> = Loader & Partial<LoaderMethods> & {
20
+ export type TresLoader<T> = Loader & Partial<LoaderMethods> & {
24
21
  load: (url: string, onLoad: (result: T) => void, onProgress?: (event: ProgressEvent<EventTarget>) => void, onError?: (err: unknown) => void) => void;
25
22
  loadAsync: (url: string, onProgress?: (event: ProgressEvent) => void) => Promise<T>;
26
23
  };
27
- type LoaderProto<T> = new (manager?: LoadingManager) => TresLoader<T>;
28
- interface TresLoaderOptions<T, Shallow extends boolean> {
24
+ export type LoaderProto<T> = new (manager?: LoadingManager) => TresLoader<T>;
25
+ export interface TresLoaderOptions<T, Shallow extends boolean> {
29
26
  manager?: LoadingManager;
30
27
  extensions?: (loader: TresLoader<T>) => void;
31
28
  initialValue?: T;
@@ -37,7 +34,7 @@ interface TresLoaderOptions<T, Shallow extends boolean> {
37
34
  * @template Shallow - Whether to use shallow reactivity for better performance
38
35
  * @extends {UseAsyncStateReturn<T, [string], Shallow>} - Extends VueUse's useAsyncState return type
39
36
  */
40
- type UseLoaderReturn<T, Shallow extends boolean> = UseAsyncStateReturn<T, [string], Shallow> & {
37
+ export type UseLoaderReturn<T, Shallow extends boolean> = UseAsyncStateReturn<T, [string], Shallow> & {
41
38
  /**
42
39
  * Loads a new asset from the given path
43
40
  * @param path - The URL or path to the asset to load
@@ -62,7 +59,7 @@ type UseLoaderReturn<T, Shallow extends boolean> = UseAsyncStateReturn<T, [strin
62
59
  * @param options - Optional configuration for the loader
63
60
  * @returns UseAsyncState composable with the loaded model
64
61
  */
65
- declare function useLoader<T, Shallow extends boolean = false>(Loader: LoaderProto<T>, path: MaybeRef<string>, options?: TresLoaderOptions<T, Shallow>): UseLoaderReturn<T, Shallow>;
62
+ export declare function useLoader<T, Shallow extends boolean = true>(Loader: LoaderProto<T>, path: MaybeRef<string>, options?: TresLoaderOptions<T, Shallow>): UseLoaderReturn<T, Shallow>;
66
63
  //#endregion
67
64
  //#region src/composables/useCreateRafLoop/index.d.ts
68
65
  interface RafLoopContext {
@@ -82,7 +79,7 @@ interface SizesType {
82
79
  /**
83
80
  * Interface for the return value of the useCamera composable
84
81
  */
85
- interface UseCameraReturn {
82
+ export interface UseCameraReturn {
86
83
  activeCamera: ComputedRef<TresCamera>;
87
84
  /**
88
85
  * The list of cameras
@@ -117,13 +114,11 @@ interface UseCameraParams {
117
114
  * @param params.sizes - The sizes object containing window dimensions
118
115
  * @returns The camera management functions and state
119
116
  */
120
- declare const useCameraManager: ({
121
- sizes
122
- }: UseCameraParams) => UseCameraReturn;
117
+ export declare const useCameraManager: ({ sizes }: UseCameraParams) => UseCameraReturn;
123
118
  //#endregion
124
119
  //#region src/utils/error.d.ts
125
- type TresRendererErrorCode = 'INITIALIZATION_FAILED';
126
- declare class TresRendererError extends Error {
120
+ export type TresRendererErrorCode = 'INITIALIZATION_FAILED';
121
+ export declare class TresRendererError extends Error {
127
122
  readonly code: TresRendererErrorCode;
128
123
  readonly name = "TresRendererError";
129
124
  constructor(message: string, code: TresRendererErrorCode, options?: ErrorOptions);
@@ -135,10 +130,10 @@ declare class TresRendererError extends Error {
135
130
  * If set to 'manual', the scene will only be rendered when advance() is called
136
131
  * If set to 'always', the scene will be rendered every frame
137
132
  */
138
- type RenderMode = 'always' | 'on-demand' | 'manual';
139
- type RenderFunction = (notifySuccess: () => void) => void;
140
- type TresRenderer = WebGLRenderer | Renderer;
141
- interface RendererOptions {
133
+ export type RenderMode = 'always' | 'on-demand' | 'manual';
134
+ export type RenderFunction = (notifySuccess: () => void) => void;
135
+ export type TresRenderer = WebGLRenderer | Renderer;
136
+ export interface RendererOptions {
142
137
  /**
143
138
  * WebGL Context options (Readonly because they are passed to the renderer constructor)
144
139
  * They can't be changed after the renderer is created because they are passed to the canvas context
@@ -181,22 +176,22 @@ interface RendererOptions {
181
176
  preserveDrawingBuffer?: boolean;
182
177
  /**
183
178
  * Power preference for the renderer.
184
- * Power preference for the renderer.
185
- * - `default`: Automatically chooses the most suitable power setting.
186
- * - `high-performance`: Prioritizes rendering performance.
187
- * - `low-power`: Tries to reduce power usage.
179
+ * Power preference for the renderer.
180
+ * - `default`: Automatically chooses the most suitable power setting.
181
+ * - `high-performance`: Prioritizes rendering performance.
182
+ * - `low-power`: Tries to reduce power usage.
188
183
  * @see {@link https://threejs.org/docs/#api/en/renderers/WebGLRenderer}
189
184
  * @default 'default'
190
185
  * @readonly
191
186
  */
192
187
  powerPreference?: WebGLPowerPreference;
193
188
  /**
194
- * Whether to create the WebGL context with an alpha buffer.
195
- * This is a WebGL context option that must be set during context creation and cannot be changed later.
196
- * When true, the canvas can be transparent, showing content behind it.
197
- * @readonly
198
- * @default false
199
- */
189
+ * Whether to create the WebGL context with an alpha buffer.
190
+ * This is a WebGL context option that must be set during context creation and cannot be changed later.
191
+ * When true, the canvas can be transparent, showing content behind it.
192
+ * @readonly
193
+ * @default false
194
+ */
200
195
  alpha?: boolean;
201
196
  /**
202
197
  * Whether to premultiply the alpha of the canvas.
@@ -247,10 +242,10 @@ interface RendererOptions {
247
242
  * Type of shadow map to use for shadow calculations
248
243
  * - `BasicShadowMap`: Basic shadow map.
249
244
  * - `PCFShadowMap`: Percentage-Closer Filtering shadow map.
250
- * - `PCFSoftShadowMap`: Deprecated on WebGL, three falls back to `PCFShadowMap`. Still supported on WebGPU.
245
+ * - `PCFSoftShadowMap`: Deprecated. three falls back to `PCFShadowMap` on WebGL, and on WebGPU since r186.
251
246
  * - `VSMShadowMap`: Variance shadow map.
252
247
  * @see {@link https://threejs.org/docs/#api/en/constants/Renderer}
253
- * @default PCFShadowMap on WebGL, PCFSoftShadowMap on WebGPU (Opinionated default by TresJS)
248
+ * @default PCFShadowMap. On WebGPU before r186, PCFSoftShadowMap (Opinionated default by TresJS)
254
249
  */
255
250
  shadowMapType?: ShadowMapType;
256
251
  /**
@@ -287,63 +282,47 @@ interface RendererOptions {
287
282
  */
288
283
  renderer?: (ctx: TresRendererSetupContext) => TresRenderer;
289
284
  }
290
- interface TresRendererSetupContext {
285
+ export interface TresRendererSetupContext {
291
286
  sizes: SizesType;
292
287
  scene: ShallowRef<TresScene>;
293
288
  camera: UseCameraReturn;
294
289
  canvas: MaybeRef<HTMLCanvasElement>;
295
290
  }
296
- interface UseRendererOptions {
291
+ export interface UseRendererOptions {
297
292
  scene: ShallowRef<TresScene>;
298
293
  canvas: MaybeRef<HTMLCanvasElement>;
299
294
  options: Reactive<RendererOptions>;
300
295
  fpsLimit?: MaybeRefOrGetter<number>;
301
296
  contextParts: Pick<TresContext, 'sizes' | 'camera'>;
302
297
  }
303
- declare function useRendererManager({
304
- scene,
305
- canvas,
306
- options,
307
- fpsLimit,
308
- contextParts: {
309
- sizes,
310
- camera
311
- }
312
- }: UseRendererOptions): {
298
+ export declare function useRendererManager({ scene, canvas, options, fpsLimit, contextParts: { sizes, camera } }: UseRendererOptions): {
313
299
  loop: {
314
300
  start: () => void;
315
301
  stop: () => void;
316
302
  isActive: Readonly<ShallowRef<boolean>>;
317
- onBeforeLoop: _vueuse_core0.EventHookOn<RafLoopContext>;
318
- onLoop: _vueuse_core0.EventHookOn<RafLoopContext>;
303
+ onBeforeLoop: import("@vueuse/core").EventHookOn<RafLoopContext>;
304
+ onLoop: import("@vueuse/core").EventHookOn<RafLoopContext>;
319
305
  };
320
306
  instance: TresRenderer;
321
307
  advance: () => void;
322
- onReady: _vueuse_core0.EventHookOn<TresRenderer>;
323
- onRender: _vueuse_core0.EventHookOn<TresRenderer>;
324
- onError: _vueuse_core0.EventHookOn<TresRendererError>;
308
+ onReady: import("@vueuse/core").EventHookOn<TresRenderer>;
309
+ onRender: import("@vueuse/core").EventHookOn<TresRenderer>;
310
+ onError: import("@vueuse/core").EventHookOn<TresRendererError>;
325
311
  invalidate: (amountOfFramesToInvalidate?: number) => void;
326
- canBeInvalidated: vue20.ComputedRef<boolean>;
312
+ canBeInvalidated: import("vue").ComputedRef<boolean>;
327
313
  mode: "always" | "on-demand" | "manual" | undefined;
328
314
  replaceRenderFunction: (fn: RenderFunction) => void;
329
- isInitialized: vue20.Ref<boolean, boolean>;
330
- error: vue20.Ref<TresRendererError | null, TresRendererError | null>;
315
+ isInitialized: import("vue").Ref<boolean, boolean>;
316
+ error: import("vue").Ref<TresRendererError | null, TresRendererError | null>;
331
317
  };
332
- type UseRendererManagerReturn = ReturnType<typeof useRendererManager>;
318
+ export type UseRendererManagerReturn = ReturnType<typeof useRendererManager>;
333
319
  //#endregion
334
320
  //#region src/composables/useEventManager/index.d.ts
335
- declare function useEventManager({
336
- canvas,
337
- contextParts: {
338
- scene,
339
- camera,
340
- renderer
341
- }
342
- }: {
321
+ declare function useEventManager({ canvas, contextParts: { scene, camera, renderer } }: {
343
322
  canvas: MaybeRef<HTMLCanvasElement>;
344
323
  contextParts: Pick<TresContext, 'scene' | 'camera' | 'renderer'>;
345
324
  }): {
346
- onPointerMissed: _vueuse_core0.EventHookOn<TresPointerEvent & Event<"click", Object3D<Object3DEventMap & PointerEventsMap>>>;
325
+ onPointerMissed: import("@vueuse/core").EventHookOn<TresPointerEvent & Event<"click", Object3D<Object3DEventMap & PointerEventsMap>>>;
347
326
  };
348
327
  //#endregion
349
328
  //#region src/composables/useTresContextProvider/index.d.ts
@@ -365,7 +344,7 @@ interface TresContext {
365
344
  isWebGPU: ComputedRef<boolean>;
366
345
  events: ReturnType<typeof useEventManager>;
367
346
  }
368
- declare const INJECTION_KEY = "useTres";
347
+ export declare const INJECTION_KEY = "useTres";
369
348
  declare const useTresContextProvider: (args_0: {
370
349
  scene: TresScene;
371
350
  canvas: MaybeRef<HTMLCanvasElement>;
@@ -380,29 +359,29 @@ declare const supportedPointerEvents: readonly ["onClick", "onContextmenu", "onP
380
359
  type SupportedVuePointerEvent = typeof supportedPointerEvents[number];
381
360
  type TresPointerEventName = 'click' | 'contextmenu' | 'pointermove' | 'pointerenter' | 'pointerleave' | 'pointerover' | 'pointerout' | 'dblclick' | 'pointerdown' | 'pointerup' | 'pointercancel' | 'lostpointercapture' | 'wheel';
382
361
  type TresPointerEvent = PointerEvent<MouseEvent>;
383
- type PointerEventHandlers = { [key in SupportedVuePointerEvent]: (event: TresPointerEvent) => void };
362
+ type PointerEventHandlers = { [key in SupportedVuePointerEvent]: (event: TresPointerEvent) => void; };
384
363
  //#endregion
385
364
  //#region src/types/index.d.ts
386
- type AttachFnType = (parent: any, self: TresInstance) => () => void;
387
- type AttachType = string | AttachFnType;
388
- type DisposeType = ((self: TresInstance) => void) | boolean | 'default' | null;
389
- type ConstructorRepresentation = new (...args: any[]) => any;
390
- type NonFunctionKeys<P> = { [K in keyof P]-?: P[K] extends ((...args: any[]) => any) ? never : K }[keyof P];
391
- type Overwrite<P, O> = Omit<P, NonFunctionKeys<O>> & O;
392
- type Properties<T> = Pick<T, NonFunctionKeys<T>>;
393
- type Mutable<P> = { [K in keyof P]: P[K] | Readonly<P[K]> };
394
- type Args<T> = T extends ConstructorRepresentation ? ConstructorParameters<T> : any[];
395
- interface TresCatalogue {
365
+ export type AttachFnType = (parent: any, self: TresInstance) => () => void;
366
+ export type AttachType = string | AttachFnType;
367
+ export type DisposeType = ((self: TresInstance) => void) | boolean | 'default' | null;
368
+ export type ConstructorRepresentation = new (...args: any[]) => any;
369
+ export type NonFunctionKeys<P> = { [K in keyof P]-?: P[K] extends ((...args: any[]) => any) ? never : K; }[keyof P];
370
+ export type Overwrite<P, O> = Omit<P, NonFunctionKeys<O>> & O;
371
+ export type Properties<T> = Pick<T, NonFunctionKeys<T>>;
372
+ export type Mutable<P> = { [K in keyof P]: P[K] | Readonly<P[K]>; };
373
+ export type Args<T> = T extends ConstructorRepresentation ? ConstructorParameters<T> : any[];
374
+ export interface TresCatalogue {
396
375
  [name: string]: ConstructorRepresentation;
397
376
  }
398
- type TresCamera = THREE.OrthographicCamera | THREE.PerspectiveCamera;
377
+ export type TresCamera = THREE.OrthographicCamera | THREE.PerspectiveCamera;
399
378
  /**
400
379
  * Represents the properties of an instance.
401
380
  *
402
381
  * @template T - The type of the object.
403
382
  * @template P - The type of the arguments.
404
383
  */
405
- interface InstanceProps<T = any, P = any> {
384
+ export interface InstanceProps<T = any, P = any> {
406
385
  args?: Args<P>;
407
386
  object?: T;
408
387
  visible?: boolean;
@@ -414,7 +393,7 @@ interface TresBaseObject {
414
393
  dispose?: () => void;
415
394
  [prop: string]: any;
416
395
  }
417
- interface LocalState {
396
+ export interface LocalState {
418
397
  type: string;
419
398
  root: TresContext;
420
399
  memoizedProps: {
@@ -427,11 +406,11 @@ interface LocalState {
427
406
  attach?: AttachType;
428
407
  previousAttach: any;
429
408
  }
430
- interface TresObject3D extends THREE.Object3D<THREE.Object3DEventMap> {
409
+ export interface TresObject3D extends THREE.Object3D<THREE.Object3DEventMap> {
431
410
  geometry?: THREE.BufferGeometry & TresBaseObject;
432
411
  material?: THREE.Material & TresBaseObject;
433
412
  }
434
- type TresObject = TresBaseObject & (TresObject3D | THREE.BufferGeometry | THREE.Material | THREE.Fog) & {
413
+ export type TresObject = TresBaseObject & (TresObject3D | THREE.BufferGeometry | THREE.Material | THREE.Fog) & {
435
414
  __tres?: LocalState;
436
415
  };
437
416
  /**
@@ -439,15 +418,15 @@ type TresObject = TresBaseObject & (TresObject3D | THREE.BufferGeometry | THREE.
439
418
  * This provides better TypeScript intellisense and type checking
440
419
  * when accessing specific material properties
441
420
  */
442
- type TresMaterial = THREE.MeshBasicMaterial | THREE.MeshStandardMaterial | THREE.MeshPhysicalMaterial | THREE.MeshLambertMaterial | THREE.MeshPhongMaterial | THREE.MeshToonMaterial | THREE.MeshNormalMaterial | THREE.MeshMatcapMaterial | THREE.MeshDepthMaterial | THREE.MeshDistanceMaterial | THREE.LineBasicMaterial | THREE.LineDashedMaterial | THREE.PointsMaterial | THREE.SpriteMaterial | THREE.ShaderMaterial | THREE.RawShaderMaterial | THREE.ShadowMaterial | THREE.Material;
443
- type TresInstance = TresObject & {
421
+ export type TresMaterial = THREE.MeshBasicMaterial | THREE.MeshStandardMaterial | THREE.MeshPhysicalMaterial | THREE.MeshLambertMaterial | THREE.MeshPhongMaterial | THREE.MeshToonMaterial | THREE.MeshNormalMaterial | THREE.MeshMatcapMaterial | THREE.MeshDepthMaterial | THREE.MeshDistanceMaterial | THREE.LineBasicMaterial | THREE.LineDashedMaterial | THREE.PointsMaterial | THREE.SpriteMaterial | THREE.ShaderMaterial | THREE.RawShaderMaterial | THREE.ShadowMaterial | THREE.Material;
422
+ export type TresInstance = TresObject & {
444
423
  __tres: LocalState;
445
424
  };
446
- type TresPrimitive = TresInstance & {
425
+ export type TresPrimitive = TresInstance & {
447
426
  object: TresInstance;
448
427
  isPrimitive: true;
449
428
  };
450
- interface TresScene extends THREE.Scene {
429
+ export interface TresScene extends THREE.Scene {
451
430
  __tres: {
452
431
  root: TresContext;
453
432
  objects: TresObject[];
@@ -461,48 +440,48 @@ interface VectorRepresentation extends MathRepresentation {
461
440
  setScalar(s: number): any;
462
441
  }
463
442
  type MathTypes = MathRepresentation | THREE.Euler | THREE.Color;
464
- interface VectorCoordinates {
443
+ export interface VectorCoordinates {
465
444
  x: number;
466
445
  y: number;
467
446
  z: number;
468
447
  }
469
- type MathType<T extends MathTypes> = T extends THREE.Color ? ConstructorParameters<typeof THREE.Color> | THREE.ColorRepresentation : T extends VectorRepresentation | THREE.Layers | THREE.Euler ? T | Parameters<T['set']> | number | VectorCoordinates : T | Parameters<T['set']>;
448
+ export type MathType<T extends MathTypes> = T extends THREE.Color ? ConstructorParameters<typeof THREE.Color> | THREE.ColorRepresentation : T extends VectorRepresentation | THREE.Layers | THREE.Euler ? T | Parameters<T['set']> | number | VectorCoordinates : T | Parameters<T['set']>;
470
449
  type VectorLike$1<VectorClass extends THREE.Vector2 | THREE.Vector3 | THREE.Vector4> = VectorClass | Parameters<VectorClass['set']> | Readonly<Parameters<VectorClass['set']>> | Parameters<VectorClass['setScalar']>[0];
471
- type TresVector2 = VectorLike$1<THREE.Vector2>;
472
- type TresVector3 = VectorLike$1<THREE.Vector3>;
473
- type TresVector4 = VectorLike$1<THREE.Vector4>;
474
- type TresColor = ConstructorParameters<typeof THREE.Color> | THREE.Color | number | string;
475
- type TresColorArray = typeof THREE.Color | [color: THREE.ColorRepresentation];
476
- type TresLayers = THREE.Layers | Parameters<THREE.Layers['set']>[0];
477
- type TresQuaternion = THREE.Quaternion | Parameters<THREE.Quaternion['set']>;
478
- type TresEuler = THREE.Euler;
479
- type TresControl = THREE.EventDispatcher & {
450
+ export type TresVector2 = VectorLike$1<THREE.Vector2>;
451
+ export type TresVector3 = VectorLike$1<THREE.Vector3>;
452
+ export type TresVector4 = VectorLike$1<THREE.Vector4>;
453
+ export type TresColor = ConstructorParameters<typeof THREE.Color> | THREE.Color | number | string;
454
+ export type TresColorArray = typeof THREE.Color | [color: THREE.ColorRepresentation];
455
+ export type TresLayers = THREE.Layers | Parameters<THREE.Layers['set']>[0];
456
+ export type TresQuaternion = THREE.Quaternion | Parameters<THREE.Quaternion['set']>;
457
+ export type TresEuler = THREE.Euler;
458
+ export type TresControl = THREE.EventDispatcher & {
480
459
  enabled: boolean;
481
460
  };
482
- type TresContextWithClock = TresContext & {
461
+ export type TresContextWithClock = TresContext & {
483
462
  delta: number;
484
463
  elapsed: number;
485
464
  };
486
- type WithMathProps<P> = { [K in keyof P]: P[K] extends MathTypes ? MathType<P[K]> : P[K] };
465
+ export type WithMathProps<P> = { [K in keyof P]: P[K] extends MathTypes ? MathType<P[K]> : P[K]; };
487
466
  interface RaycastableRepresentation {
488
467
  raycast: (raycaster: THREE.Raycaster, intersects: THREE.Intersection[]) => void;
489
468
  }
490
469
  type EventProps<P> = P extends RaycastableRepresentation ? Partial<PointerEventHandlers> : unknown;
491
- interface VueProps {
470
+ export interface VueProps {
492
471
  children?: VNode[];
493
472
  ref?: VNodeRef;
494
473
  key?: string | number | symbol;
495
474
  }
496
- type ElementProps<T extends ConstructorRepresentation, P = InstanceType<T>> = Partial<Overwrite<P, WithMathProps<P> & VueProps & EventProps<P>>>;
497
- type ThreeElement<T extends ConstructorRepresentation> = Mutable<Overwrite<ElementProps<T>, Omit<InstanceProps<InstanceType<T>, T>, 'object'>>>;
475
+ export type ElementProps<T extends ConstructorRepresentation, P = InstanceType<T>> = Partial<Overwrite<P, WithMathProps<P> & VueProps & EventProps<P>>>;
476
+ export type ThreeElement<T extends ConstructorRepresentation> = Mutable<Overwrite<ElementProps<T>, Omit<InstanceProps<InstanceType<T>, T>, 'object'>>>;
498
477
  type ThreeExports = typeof THREE;
499
- type ThreeInstancesImpl = { [K in keyof ThreeExports as Uncapitalize<K>]: ThreeExports[K] extends ConstructorRepresentation ? ThreeElement<ThreeExports[K]> : never };
500
- interface ThreeInstances extends ThreeInstancesImpl {
478
+ type ThreeInstancesImpl = { [K in keyof ThreeExports as Uncapitalize<K>]: ThreeExports[K] extends ConstructorRepresentation ? ThreeElement<ThreeExports[K]> : never; };
479
+ export interface ThreeInstances extends ThreeInstancesImpl {
501
480
  primitive: Omit<ThreeElement<any>, 'args'> & {
502
481
  object: object;
503
482
  };
504
483
  }
505
- type TresComponents = { [K in keyof ThreeInstances as `Tres${Capitalize<string & K>}`]: DefineComponent<ThreeInstances[K]> };
484
+ export type TresComponents = { [K in keyof ThreeInstances as `Tres${Capitalize<string & K>}`]: DefineComponent<ThreeInstances[K]>; };
506
485
  declare module 'vue' {
507
486
  interface GlobalComponents extends TresComponents {
508
487
  primitive: DefineComponent<TresPrimitive>;
@@ -510,7 +489,7 @@ declare module 'vue' {
510
489
  }
511
490
  //#endregion
512
491
  //#region src/utils/graph.d.ts
513
- interface TresObjectMap {
492
+ export interface TresObjectMap {
514
493
  nodes: {
515
494
  [name: string]: TresObject;
516
495
  };
@@ -522,11 +501,11 @@ interface TresObjectMap {
522
501
  };
523
502
  scene?: Scene;
524
503
  }
525
- declare function buildGraph(object: Object3D | TresObject): TresObjectMap;
504
+ export declare function buildGraph(object: Object3D | TresObject): TresObjectMap;
526
505
  //#endregion
527
506
  //#region src/composables/useLoader/component.vue.d.ts
528
507
  declare const __VLS_export$3: <T extends TresObjectMap>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
529
- props: vue20.PublicProps & __VLS_PrettifyLocal<{
508
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<{
530
509
  /**
531
510
  * The THREE.js loader to use
532
511
  */
@@ -550,20 +529,20 @@ declare const __VLS_export$3: <T extends TresObjectMap>(__VLS_props: NonNullable
550
529
  attrs: any;
551
530
  slots: {
552
531
  default?: (props: {
553
- state: vue20.UnwrapRef<T>;
532
+ state: T;
554
533
  isLoading: boolean;
555
534
  error: unknown;
556
535
  }) => any;
557
536
  };
558
537
  emit: ((evt: "error", error: unknown) => void) & ((evt: "loaded", result: T) => void);
559
- }>) => vue20.VNode & {
560
- __ctx?: Awaited<typeof __VLS_setup>;
538
+ }>) => import("vue").VNode & {
539
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
561
540
  };
562
541
  declare const _default$3: typeof __VLS_export$3;
563
- type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {};
542
+ type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {};
564
543
  //#endregion
565
544
  //#region src/composables/useGraph/index.d.ts
566
- declare const useGraph: (object: MaybeRef<TresObject | undefined>) => vue20.ComputedRef<TresObjectMap | undefined>;
545
+ export declare const useGraph: (object: MaybeRef<TresObject | undefined>) => import("vue").ComputedRef<TresObjectMap | undefined>;
567
546
  //#endregion
568
547
  //#region src/utils/createPriorityEventHook.d.ts
569
548
  type Callback<T> = Parameters<EventHookOff<T>>[0];
@@ -572,7 +551,7 @@ type PriorityEventHookOn<T> = (fn: Callback<T>, priority?: number) => {
572
551
  };
573
552
  //#endregion
574
553
  //#region src/composables/useTres/index.d.ts
575
- interface TresPartialContext extends Omit<TresContext, 'renderer' | 'camera'> {
554
+ export interface TresPartialContext extends Omit<TresContext, 'renderer' | 'camera'> {
576
555
  /**
577
556
  * The renderer instance
578
557
  *
@@ -604,17 +583,17 @@ interface TresPartialContext extends Omit<TresContext, 'renderer' | 'camera'> {
604
583
  */
605
584
  advance: () => void;
606
585
  }
607
- declare function useTres(): TresPartialContext;
586
+ export declare function useTres(): TresPartialContext;
608
587
  //#endregion
609
588
  //#region src/composables/useLoop/index.d.ts
610
- type LoopContext = RafLoopContext & TresPartialContext;
589
+ export type LoopContext = RafLoopContext & TresPartialContext;
611
590
  /**
612
591
  * Composable that provides control over the render loop and animation lifecycle.
613
592
  */
614
- declare const useLoop: () => {
593
+ export declare const useLoop: () => {
615
594
  stop: () => void;
616
595
  start: () => void;
617
- isActive: Readonly<vue20.ShallowRef<boolean>>;
596
+ isActive: Readonly<import("vue").ShallowRef<boolean>>;
618
597
  onBeforeRender: PriorityEventHookOn<LoopContext>;
619
598
  onRender: PriorityEventHookOn<LoopContext>;
620
599
  render: (fn: RenderFunction) => void;
@@ -630,7 +609,7 @@ interface TresCustomRendererOptions {
630
609
  * Logger utility for TresJS
631
610
  * @module logger
632
611
  */
633
- declare const isProd: boolean;
612
+ export declare const isProd: boolean;
634
613
  type OneOrMore<T> = {
635
614
  0: T;
636
615
  } & Array<T>;
@@ -638,18 +617,18 @@ type OneOrMore<T> = {
638
617
  * Logs an error message with the TresJS prefix
639
618
  * @param args - Arguments to log
640
619
  */
641
- declare function logError(...args: OneOrMore<any>): void;
620
+ export declare function logError(...args: OneOrMore<any>): void;
642
621
  /**
643
622
  * Logs a warning message with the TresJS prefix
644
623
  * @param args - Arguments to log
645
624
  */
646
- declare function logWarning(...args: OneOrMore<any>): void;
625
+ export declare function logWarning(...args: OneOrMore<any>): void;
647
626
  /**
648
627
  * Logs a message with the TresJS prefix (only in development mode)
649
628
  * @param name - Name of the message
650
629
  * @param value - Value to log
651
630
  */
652
- declare function logMessage(name: string, value: any): void;
631
+ export declare function logMessage(name: string, value: any): void;
653
632
  //#endregion
654
633
  //#region src/utils/index.d.ts
655
634
  declare function disposeObject3D(object: TresObject): void;
@@ -665,8 +644,8 @@ interface Vector3PropInterface extends Vector2PropInterface {
665
644
  z?: number;
666
645
  }
667
646
  type VectorFlexibleParams = Vector3 | number[] | Vector3PropInterface | number;
668
- declare function normalizeVectorFlexibleParam(value: VectorFlexibleParams): Array<number>;
669
- declare function normalizeColor(value: Color | Array<number> | string | number | ColorRepresentation): Color;
647
+ export declare function normalizeVectorFlexibleParam(value: VectorFlexibleParams): Array<number>;
648
+ export declare function normalizeColor(value: Color | Array<number> | string | number | ColorRepresentation): Color;
670
649
  //#endregion
671
650
  //#region src/utils/template-compiler-options.d.ts
672
651
  declare const templateCompilerOptions: {
@@ -714,17 +693,17 @@ type ContextEmits = {
714
693
  render: [context: TresContext];
715
694
  beforeLoop: [context: TresContextWithClock];
716
695
  loop: [context: TresContextWithClock];
717
- } & { [key in TresPointerEventName]: [event: TresPointerEvent] };
696
+ } & { [key in TresPointerEventName]: [event: TresPointerEvent]; };
718
697
  type __VLS_Props$1 = ContextProps & {
719
698
  canvas: HTMLCanvasElement;
720
699
  };
721
700
  type __VLS_Slots$2 = {
722
701
  default: () => any;
723
702
  };
724
- declare const __VLS_base$2: vue20.DefineComponent<__VLS_Props$1, {
725
- context: vue20.ShallowRef<TresContext, TresContext>;
703
+ declare const __VLS_base$2: import("vue").DefineComponent<__VLS_Props$1, {
704
+ context: import("vue").ShallowRef<TresContext, TresContext>;
726
705
  dispose: () => void;
727
- }, {}, {}, {}, vue20.ComponentOptionsMixin, vue20.ComponentOptionsMixin, {
706
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
728
707
  render: (context: TresContext) => any;
729
708
  click: (event: TresPointerEvent) => any;
730
709
  contextmenu: (event: TresPointerEvent) => any;
@@ -744,7 +723,7 @@ declare const __VLS_base$2: vue20.DefineComponent<__VLS_Props$1, {
744
723
  pointermissed: (event: TresPointerEvent) => any;
745
724
  beforeLoop: (context: TresContextWithClock) => any;
746
725
  loop: (context: TresContextWithClock) => any;
747
- }, string, vue20.PublicProps, Readonly<__VLS_Props$1> & Readonly<{
726
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props$1> & Readonly<{
748
727
  onRender?: ((context: TresContext) => any) | undefined;
749
728
  onClick?: ((event: TresPointerEvent) => any) | undefined;
750
729
  onContextmenu?: ((event: TresPointerEvent) => any) | undefined;
@@ -764,7 +743,7 @@ declare const __VLS_base$2: vue20.DefineComponent<__VLS_Props$1, {
764
743
  onPointermissed?: ((event: TresPointerEvent) => any) | undefined;
765
744
  onBeforeLoop?: ((context: TresContextWithClock) => any) | undefined;
766
745
  onLoop?: ((context: TresContextWithClock) => any) | undefined;
767
- }>, {}, {}, {}, {}, string, vue20.ComponentProvideOptions, false, {}, any>;
746
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
768
747
  declare const __VLS_export$2: __VLS_WithSlots$2<typeof __VLS_base$2, __VLS_Slots$2>;
769
748
  declare const _default$1: typeof __VLS_export$2;
770
749
  type __VLS_WithSlots$2<T, S> = T & {
@@ -783,7 +762,7 @@ interface TresCanvasInstance {
783
762
  type __VLS_Slots$1 = {
784
763
  default: () => any;
785
764
  };
786
- declare const __VLS_base$1: vue20.DefineComponent<ContextProps, TresCanvasInstance, {}, {}, {}, vue20.ComponentOptionsMixin, vue20.ComponentOptionsMixin, {
765
+ declare const __VLS_base$1: import("vue").DefineComponent<ContextProps, TresCanvasInstance, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
787
766
  render: (context: TresContext) => any;
788
767
  click: (event: TresPointerEvent) => any;
789
768
  contextmenu: (event: TresPointerEvent) => any;
@@ -803,7 +782,7 @@ declare const __VLS_base$1: vue20.DefineComponent<ContextProps, TresCanvasInstan
803
782
  pointermissed: (event: TresPointerEvent) => any;
804
783
  beforeLoop: (context: TresContextWithClock) => any;
805
784
  loop: (context: TresContextWithClock) => any;
806
- }, string, vue20.PublicProps, Readonly<ContextProps> & Readonly<{
785
+ }, string, import("vue").PublicProps, Readonly<ContextProps> & Readonly<{
807
786
  onRender?: ((context: TresContext) => any) | undefined;
808
787
  onClick?: ((event: TresPointerEvent) => any) | undefined;
809
788
  onContextmenu?: ((event: TresPointerEvent) => any) | undefined;
@@ -826,10 +805,10 @@ declare const __VLS_base$1: vue20.DefineComponent<ContextProps, TresCanvasInstan
826
805
  }>, {
827
806
  alpha: boolean;
828
807
  logarithmicDepthBuffer: boolean;
829
- toneMapping: THREE.ToneMapping;
808
+ toneMapping: import("three").ToneMapping;
830
809
  depth: boolean;
831
810
  stencil: boolean;
832
- clearColor: THREE.ColorRepresentation;
811
+ clearColor: import("three").ColorRepresentation;
833
812
  windowSize: boolean;
834
813
  enableProvideBridge: boolean;
835
814
  customRendererOptions: TresCustomRendererOptions;
@@ -838,10 +817,10 @@ declare const __VLS_base$1: vue20.DefineComponent<ContextProps, TresCanvasInstan
838
817
  failIfMajorPerformanceCaveat: boolean;
839
818
  clearAlpha: number;
840
819
  shadows: boolean;
841
- shadowMapType: THREE.ShadowMapType;
820
+ shadowMapType: import("three").ShadowMapType;
842
821
  useLegacyLights: boolean;
843
822
  renderMode: "always" | "on-demand" | "manual";
844
- }, {}, {}, {}, string, vue20.ComponentProvideOptions, false, {}, any>;
823
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
845
824
  declare const __VLS_export$1: __VLS_WithSlots$1<typeof __VLS_base$1, __VLS_Slots$1>;
846
825
  declare const _default: typeof __VLS_export$1;
847
826
  type __VLS_WithSlots$1<T, S> = T & {
@@ -861,7 +840,7 @@ declare var __VLS_7: {};
861
840
  type __VLS_Slots = {} & {
862
841
  default?: (props: typeof __VLS_7) => any;
863
842
  };
864
- declare const __VLS_base: vue20.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue20.ComponentOptionsMixin, vue20.ComponentOptionsMixin, {}, string, vue20.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue20.ComponentProvideOptions, false, {}, any>;
843
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
865
844
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
866
845
  declare const _default$2: typeof __VLS_export;
867
846
  type __VLS_WithSlots<T, S> = T & {
@@ -871,29 +850,29 @@ type __VLS_WithSlots<T, S> = T & {
871
850
  };
872
851
  //#endregion
873
852
  //#region src/core/catalogue.d.ts
874
- declare const catalogue: Ref<TresCatalogue>;
875
- declare const extend: (objects: any) => any;
853
+ export declare const catalogue: Ref<TresCatalogue>;
854
+ export declare const extend: (objects: any) => any;
876
855
  //#endregion
877
856
  //#region src/devtools/DevtoolsMessenger.d.ts
878
- type DevtoolsMessageType = 'performance' | 'context' | 'asset-load';
879
- interface AssetLoadData {
857
+ export type DevtoolsMessageType = 'performance' | 'context' | 'asset-load';
858
+ export interface AssetLoadData {
880
859
  url: string;
881
860
  type: string;
882
861
  loaded: boolean;
883
862
  size: number;
884
863
  asset: HTMLImageElement | HTMLScriptElement | HTMLLinkElement | Blob | ArrayBuffer | null;
885
864
  }
886
- interface DevtoolsMessage<T = any> {
865
+ export interface DevtoolsMessage<T = any> {
887
866
  type: DevtoolsMessageType;
888
867
  data: T;
889
868
  timestamp?: number;
890
869
  }
891
- type DevtoolsSubscriber = (message: DevtoolsMessage) => void;
870
+ export type DevtoolsSubscriber = (message: DevtoolsMessage) => void;
892
871
  /**
893
872
  * Messenger class for communicating with Tres DevTools
894
873
  * This class will be attached to window.__TRES__DEVTOOLS__
895
874
  */
896
- declare class DevtoolsMessenger {
875
+ export declare class DevtoolsMessenger {
897
876
  private subscribers;
898
877
  private messageQueue;
899
878
  private maxQueueSize;
@@ -930,30 +909,30 @@ declare class DevtoolsMessenger {
930
909
  }
931
910
  //#endregion
932
911
  //#region src/devtools/plugin.d.ts
933
- declare function registerTresDevtools(app: App, tres: TresContext): void;
912
+ export declare function registerTresDevtools(app: App, tres: TresContext): void;
934
913
  //#endregion
935
914
  //#region src/directives/vDistanceTo.d.ts
936
- declare const vDistanceTo: {
915
+ export declare const vDistanceTo: {
937
916
  updated: (el: TresObject, binding: Ref<TresObject>) => void;
938
917
  unmounted: (el: TresObject) => void;
939
918
  };
940
919
  //#endregion
941
920
  //#region src/directives/vLightHelper.d.ts
942
- declare const vLightHelper: {
921
+ export declare const vLightHelper: {
943
922
  mounted: (el: TresObject) => void;
944
923
  updated: (el: TresObject) => void;
945
924
  unmounted: (el: TresObject) => void;
946
925
  };
947
926
  //#endregion
948
927
  //#region src/directives/vLog.d.ts
949
- declare const vLog: {
928
+ export declare const vLog: {
950
929
  mounted: (el: TresObject, binding: {
951
930
  arg: string;
952
931
  }) => void;
953
932
  };
954
933
  //#endregion
955
934
  //#region src/utils/createTimer.d.ts
956
- interface TresTimer {
935
+ export interface TresTimer {
957
936
  getDelta: () => number;
958
937
  getElapsed: () => number;
959
938
  update: () => void;
@@ -968,7 +947,7 @@ interface TresTimer {
968
947
  * - On older versions: uses `Clock` with `start`/`stop`.
969
948
  *
970
949
  */
971
- declare function createTimer(): TresTimer;
950
+ export declare function createTimer(): TresTimer;
972
951
  //#endregion
973
952
  //#region src/utils/is/three.d.ts
974
953
  /**
@@ -986,7 +965,7 @@ declare function createTimer(): TresTimer;
986
965
  * }
987
966
  * ```
988
967
  */
989
- declare const isObject3D: (value: unknown) => value is Object3D<THREE.Object3DEventMap>;
968
+ export declare const isObject3D: (value: unknown) => value is Object3D<import("three").Object3DEventMap>;
990
969
  /**
991
970
  * Type guard to check if a value is a Three.js Mesh
992
971
  * @param value - The value to check
@@ -998,7 +977,7 @@ declare const isObject3D: (value: unknown) => value is Object3D<THREE.Object3DEv
998
977
  * // TypeScript knows value is Mesh here
999
978
  * value.geometry // OK
1000
979
  */
1001
- declare const isMesh: (value: unknown) => value is Mesh<BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, Material<THREE.MaterialEventMap> | Material<THREE.MaterialEventMap>[], THREE.Object3DEventMap>;
980
+ export declare const isMesh: (value: unknown) => value is Mesh<BufferGeometry<import("three").NormalBufferAttributes, import("three").BufferGeometryEventMap>, Material<import("three").MaterialEventMap> | Material<import("three").MaterialEventMap>[], import("three").Object3DEventMap>;
1002
981
  /**
1003
982
  * Type guard to check if a value is a Three.js Camera
1004
983
  * @param value - The value to check
@@ -1014,37 +993,37 @@ declare const isMesh: (value: unknown) => value is Mesh<BufferGeometry<THREE.Nor
1014
993
  * }
1015
994
  * ```
1016
995
  */
1017
- declare const isCamera: (value: unknown) => value is Camera;
996
+ export declare const isCamera: (value: unknown) => value is Camera;
1018
997
  /**
1019
998
  * Type guard to check if a value is a Three.js OrthographicCamera
1020
999
  * @param value - The value to check
1021
1000
  * @returns True if the value is a Three.js OrthographicCamera instance, false otherwise
1022
1001
  */
1023
- declare const isOrthographicCamera: (value: unknown) => value is OrthographicCamera;
1002
+ export declare const isOrthographicCamera: (value: unknown) => value is OrthographicCamera;
1024
1003
  /**
1025
1004
  * Type guard to check if a value is a Three.js PerspectiveCamera
1026
1005
  * @param value - The value to check
1027
1006
  * @returns True if the value is a Three.js PerspectiveCamera instance, false otherwise
1028
1007
  */
1029
- declare const isPerspectiveCamera: (value: unknown) => value is PerspectiveCamera;
1008
+ export declare const isPerspectiveCamera: (value: unknown) => value is PerspectiveCamera;
1030
1009
  /**
1031
1010
  * Type guard to check if a value is a Three.js Color
1032
1011
  * @param value - The value to check
1033
1012
  * @returns True if the value is a Three.js Color instance, false otherwise
1034
1013
  */
1035
- declare const isColor: (value: unknown) => value is Color;
1014
+ export declare const isColor: (value: unknown) => value is Color;
1036
1015
  /**
1037
1016
  * Type guard to check if a value is a Three.js ColorRepresentation
1038
1017
  * @param value - The value to check
1039
1018
  * @returns True if the value is a Three.js ColorRepresentation instance, false otherwise
1040
1019
  */
1041
- declare const isColorRepresentation: (value: unknown) => value is ColorRepresentation;
1020
+ export declare const isColorRepresentation: (value: unknown) => value is ColorRepresentation;
1042
1021
  /**
1043
1022
  * Type guard to check if a value is a Three.js Layers
1044
1023
  * @param value - The value to check
1045
1024
  * @returns True if the value is a Three.js Layers instance, false otherwise
1046
1025
  */
1047
- declare const isLayers: (value: unknown) => value is Layers;
1026
+ export declare const isLayers: (value: unknown) => value is Layers;
1048
1027
  /**
1049
1028
  * Type guard to check if a value is a Three.js BufferGeometry
1050
1029
  * @param value - The value to check
@@ -1060,7 +1039,7 @@ declare const isLayers: (value: unknown) => value is Layers;
1060
1039
  * }
1061
1040
  * ```
1062
1041
  */
1063
- declare const isBufferGeometry: (value: unknown) => value is BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>;
1042
+ export declare const isBufferGeometry: (value: unknown) => value is BufferGeometry<import("three").NormalBufferAttributes, import("three").BufferGeometryEventMap>;
1064
1043
  /**
1065
1044
  * Type guard to check if a value is a Three.js Material
1066
1045
  * @param value - The value to check
@@ -1076,7 +1055,7 @@ declare const isBufferGeometry: (value: unknown) => value is BufferGeometry<THRE
1076
1055
  * }
1077
1056
  * ```
1078
1057
  */
1079
- declare const isMaterial: (value: unknown) => value is Material<THREE.MaterialEventMap>;
1058
+ export declare const isMaterial: (value: unknown) => value is Material<import("three").MaterialEventMap>;
1080
1059
  /**
1081
1060
  * Type guard to check if a value is a Three.js Light
1082
1061
  * @param value - The value to check
@@ -1092,7 +1071,7 @@ declare const isMaterial: (value: unknown) => value is Material<THREE.MaterialEv
1092
1071
  * }
1093
1072
  * ```
1094
1073
  */
1095
- declare const isLight: (value: unknown) => value is Light;
1074
+ export declare const isLight: (value: unknown) => value is Light;
1096
1075
  /**
1097
1076
  * Type guard to check if a value is a Three.js Fog
1098
1077
  * @param value - The value to check
@@ -1108,7 +1087,7 @@ declare const isLight: (value: unknown) => value is Light;
1108
1087
  * }
1109
1088
  * ```
1110
1089
  */
1111
- declare const isFog: (value: unknown) => value is Fog;
1090
+ export declare const isFog: (value: unknown) => value is Fog;
1112
1091
  /**
1113
1092
  * Type guard to check if a value is a Three.js Scene
1114
1093
  * @param value - The value to check
@@ -1124,36 +1103,36 @@ declare const isFog: (value: unknown) => value is Fog;
1124
1103
  * }
1125
1104
  * ```
1126
1105
  */
1127
- declare const isScene: (value: unknown) => value is Scene<THREE.Object3DEventMap>;
1106
+ export declare const isScene: (value: unknown) => value is Scene<import("three").Object3DEventMap>;
1128
1107
  /**
1129
1108
  * Type guard to check if a value is a Three.js Group
1130
1109
  * @param value - The value to check
1131
1110
  * @returns True if the value is a Three.js Group instance, false otherwise
1132
1111
  * ```
1133
1112
  */
1134
- declare const isGroup: (value: unknown) => value is Group<THREE.Object3DEventMap>;
1113
+ export declare const isGroup: (value: unknown) => value is Group<import("three").Object3DEventMap>;
1135
1114
  //#endregion
1136
1115
  //#region src/utils/is/tres.d.ts
1137
1116
  interface VectorLike {
1138
1117
  set: (...args: any[]) => void;
1139
1118
  constructor?: (...args: any[]) => any;
1140
1119
  }
1141
- declare const isVectorLike: (value: unknown) => value is VectorLike;
1120
+ export declare const isVectorLike: (value: unknown) => value is VectorLike;
1142
1121
  interface Copyable {
1143
1122
  copy: (...args: any[]) => void;
1144
1123
  constructor?: (...args: any[]) => any;
1145
1124
  }
1146
- declare const isCopyable: (value: unknown) => value is Copyable;
1125
+ export declare const isCopyable: (value: unknown) => value is Copyable;
1147
1126
  interface ClassInstance {
1148
1127
  constructor?: (...args: any[]) => any;
1149
1128
  }
1150
- declare const isClassInstance: (object: unknown) => object is ClassInstance;
1129
+ export declare const isClassInstance: (object: unknown) => object is ClassInstance;
1151
1130
  /**
1152
1131
  * Type guard to check if a value is a TresCamera
1153
1132
  * @param value - The value to check
1154
1133
  * @returns True if the value is a TresCamera instance, false otherwise
1155
1134
  */
1156
- declare const isTresCamera: (value: unknown) => value is TresCamera;
1135
+ export declare const isTresCamera: (value: unknown) => value is TresCamera;
1157
1136
  /**
1158
1137
  * Type guard to check if a value is a TresObject
1159
1138
  * @param value - The value to check
@@ -1170,7 +1149,7 @@ declare const isTresCamera: (value: unknown) => value is TresCamera;
1170
1149
  * TresObject is a union type that represents the core Three.js objects that can be used in TresJS.
1171
1150
  * This includes Object3D, BufferGeometry, Material, and Fog instances.
1172
1151
  */
1173
- declare const isTresObject: (value: unknown) => value is TresObject;
1152
+ export declare const isTresObject: (value: unknown) => value is TresObject;
1174
1153
  /**
1175
1154
  * Type guard to check if a value is a TresPrimitive
1176
1155
  * @param value - The value to check
@@ -1187,7 +1166,7 @@ declare const isTresObject: (value: unknown) => value is TresObject;
1187
1166
  * TresPrimitive is a special type in TresJS that represents primitive objects
1188
1167
  * that can be used directly in the scene without needing to be wrapped in a Three.js object.
1189
1168
  */
1190
- declare const isTresPrimitive: (value: unknown) => value is TresPrimitive;
1169
+ export declare const isTresPrimitive: (value: unknown) => value is TresPrimitive;
1191
1170
  /**
1192
1171
  * Type guard to check if a value is a TresInstance (has __tres property)
1193
1172
  * @param value - The value to check
@@ -1201,7 +1180,7 @@ declare const isTresPrimitive: (value: unknown) => value is TresPrimitive;
1201
1180
  * }
1202
1181
  * ```
1203
1182
  */
1204
- declare const isTresInstance: (value: unknown) => value is TresInstance;
1183
+ export declare const isTresInstance: (value: unknown) => value is TresInstance;
1205
1184
  /**
1206
1185
  * Type guard to check if a value is a Three.js WebGPU `Renderer`.
1207
1186
  *
@@ -1220,25 +1199,25 @@ declare const isTresInstance: (value: unknown) => value is TresInstance;
1220
1199
  * }
1221
1200
  * ```
1222
1201
  */
1223
- declare const isWebGPURenderer: (value: unknown) => value is Renderer;
1202
+ export declare const isWebGPURenderer: (value: unknown) => value is Renderer;
1224
1203
  /**
1225
1204
  * Type guard to check if a value is a Three.js `WebGLRenderer`.
1226
1205
  * @param value - The value to check
1227
1206
  * @returns True if the value is a `WebGLRenderer` instance, false otherwise
1228
1207
  * @see {@link isWebGPURenderer}
1229
1208
  */
1230
- declare const isWebGLRenderer: (value: unknown) => value is WebGLRenderer & {
1209
+ export declare const isWebGLRenderer: (value: unknown) => value is WebGLRenderer & {
1231
1210
  isWebGLRenderer: true;
1232
1211
  };
1233
1212
  //#endregion
1234
1213
  //#region src/index.d.ts
1235
- interface TresOptions {
1214
+ export interface TresOptions {
1236
1215
  extends?: Record<string, unknown>;
1237
1216
  }
1238
- interface TresPlugin {
1217
+ export interface TresPlugin {
1239
1218
  [key: string]: any;
1240
1219
  install: (app: App, options?: TresOptions) => void;
1241
1220
  }
1242
1221
  declare const plugin: TresPlugin;
1243
1222
  //#endregion
1244
- export { Args, AssetLoadData, AttachFnType, AttachType, ConstructorRepresentation, DevtoolsMessage, DevtoolsMessageType, DevtoolsMessenger, DevtoolsSubscriber, DisposeType, ElementProps, INJECTION_KEY, InstanceProps, LoaderMethods, LoaderProto, LocalState, LoopContext, MathType, Mutable, NonFunctionKeys, Overwrite, Properties, RenderFunction, RenderMode, RendererOptions, ThreeElement, ThreeInstances, TresCamera, _default as TresCanvas, _default$1 as TresCanvasContext, type TresCanvasEmits, type TresCanvasInstance, type TresCanvasProps, TresCatalogue, TresColor, TresColorArray, TresComponents, type TresContext, TresContextWithClock, TresControl, type TresCustomRendererOptions, TresEuler, TresInstance, TresLayers, TresLoader, TresLoaderOptions, TresMaterial, TresObject, TresObject3D, TresObjectMap, TresOptions, TresPartialContext, TresPlugin, type TresPointerEvent, _default$2 as TresPortal, TresPrimitive, TresQuaternion, TresRenderer, TresRendererError, TresRendererErrorCode, TresRendererSetupContext, TresScene, TresTimer, TresVector2, TresVector3, TresVector4, UseCameraReturn, _default$3 as UseLoader, UseLoaderReturn, UseRendererManagerReturn, UseRendererOptions, VectorCoordinates, type VectorFlexibleParams, VueProps, WithMathProps, buildGraph, catalogue, createTimer, plugin as default, disposeObject3D as dispose, extend, isBufferGeometry, isCamera, isClassInstance, isColor, isColorRepresentation, isCopyable, isFog, isGroup, isLayers, isLight, isMaterial, isMesh, isObject3D, isOrthographicCamera, isPerspectiveCamera, isProd, isScene, isTresCamera, isTresInstance, isTresObject, isTresPrimitive, isVectorLike, isWebGLRenderer, isWebGPURenderer, logError, logMessage, logWarning, normalizeColor, normalizeVectorFlexibleParam, registerTresDevtools, templateCompilerOptions, useCameraManager, useGraph, useLoader, useLoop, useRendererManager, useTres, useTresContext, useTresContextProvider, vDistanceTo, vLightHelper, vLog };
1223
+ export { _default as TresCanvas, _default$1 as TresCanvasContext, type TresCanvasEmits, type TresCanvasInstance, type TresCanvasProps, type TresContext, type TresCustomRendererOptions, type TresPointerEvent, _default$2 as TresPortal, _default$3 as UseLoader, type VectorFlexibleParams, plugin as default, disposeObject3D as dispose, templateCompilerOptions, useTresContext, useTresContextProvider };