import { Object3D, LoadingManager } from 'three'; import { URDFRobot } from './URDFClasses'; /** * Processes a string tuple into a number array. * @param val - A string containing three space-separated numbers. * @returns An array of three numbers. */ export declare function processTuple(val: string | null | undefined): [number, number, number]; /** * Applies a rotation to a js object in URDF order. * @param obj - The js object to rotate. * @param rpy - An array containing roll, pitch, and yaw angles. * @param additive - If true, the rotation is additive. */ export declare function applyRotation(obj: Object3D, rpy: [number, number, number], additive?: boolean): void; /** * Loads and parses a URDF file into a js Object3D format. */ export declare class URDFLoader { manager: LoadingManager; loadMeshCb: (path: string, manager: LoadingManager, done: (obj: Object3D | null, err?: any) => void) => void; parseVisual: boolean; parseCollision: boolean; packages: string | ((pkg: string) => string) | Record; workingPath: string; fetchOptions: RequestInit; constructor(manager?: LoadingManager); /** * Asynchronously loads a URDF file. * @param urdf - The path to the URDF file. * @returns A promise that resolves to a URDFRobot object. */ loadAsync(urdf: string): Promise; /** * Loads a URDF file. * @param urdf - The path to the URDF file. * @param onComplete - Callback invoked upon successful load. * @param onProgress - Callback invoked to report progress. * @param onError - Callback invoked upon error. */ load(urdf: string, onComplete: (model: URDFRobot) => void, onProgress?: (event: ProgressEvent | null) => void, onError?: (e: any) => void): void; /** * Parses URDF content into a URDFRobot object. * @param content - The URDF content as a string, Document, or Element. * @returns A URDFRobot object. */ parse(content: string | Document | Element): URDFRobot; /** * Default mesh loading function. * @param path - The path to the mesh file. * @param manager - The LoadingManager instance. * @param done - Callback invoked upon completion. */ private defaultMeshLoader; }