UNPKG

@yaelg/tresjs-core

Version:

Declarative ThreeJS using Vue Components

19 lines (18 loc) 794 B
import type { Object3D, type Intersection } from 'three'; import type { Ref } from 'vue'; import { type TresContext } from '../useTresContextProvider'; export type Intersects = Intersection<THREE.Object3D<THREE.Event>>[]; interface PointerMoveEventPayload { intersects?: Intersects; event: PointerEvent; } interface PointerClickEventPayload { intersects: Intersects; event: PointerEvent; } export declare const useRaycaster: (objects: Ref<THREE.Object3D[]>, { renderer, camera, raycaster }: Pick<TresContext, 'renderer' | 'camera' | 'raycaster'>) => { intersects: import("vue").ComputedRef<Intersects>; onClick: (fn: (value: PointerClickEventPayload) => void) => () => void; onPointerMove: (fn: (value: PointerMoveEventPayload) => void) => () => void; }; export {};