/** * Add userData property to AnimationClip */ declare module 'three' { interface AnimationClip { userData: Record; } } /** Animation type */ export type AnimationType = string; /** Animation configuration interface */ export interface AnimationConfig { /** Model path (file path or URL) */ url: string; /** Whether the animation should loop * @defaultValue `true` */ loop: boolean; /** Optional animation duration in seconds * @defaultValue `undefined` */ duration?: number; /** * Whether to clamp the animation at the last frame when finished * @defaultValue `false` */ clampWhenFinished?: boolean; } /** * Animation configuration map type */ export type AnimationConfigMap = Record;