import { Matrix16T, VuerProps } from '../../vuer/interfaces'; import { URDFRobot } from '../../third_party/urdf-loader'; import { ColorRepresentation, Group, MeshPhysicalMaterialParameters } from 'three'; import { MaterialTypes } from '../primitives/three_materials'; import { ThreeEvent } from '@react-three/fiber'; export interface UrdfPointerHandlers { onPointerDown?: (e: ThreeEvent) => void; onPointerMove?: (e: ThreeEvent) => void; onPointerUp?: (e: ThreeEvent) => void; onPointerLeave?: (e: ThreeEvent) => void; } export type UrdfViewProps = VuerProps<{ robot: URDFRobot; matrix: Matrix16T; jointValues?: { [key: string]: number | number[]; }; /** * @dial appearance * @dial-cols 2 * @dial-dtype color */ color?: ColorRepresentation; /** * @dial appearance * @dial-dtype select */ materialType?: MaterialTypes; /** * Material parameters * @dial-ignore */ material?: MeshPhysicalMaterialParameters; /** * Hide the URDF model * @dial visibility * @dial-dtype boolean * @dial-default false */ hide?: boolean; /** * @dial appearance * @dial-dtype number * @dial-default 1 * @dial-min 0 * @dial-max 1 * @dial-step 0.001 */ opacity?: number; /** * Pointer handlers for joint drag manipulation * @dial-ignore */ pointerHandlers?: UrdfPointerHandlers; }, Group>; export declare function UrdfView({ robot, _ref, jointValues, matrix, materialType, material, hide, opacity, pointerHandlers, ...rest }: UrdfViewProps): import("react/jsx-runtime").JSX.Element;