/**
 * Sphere with radius 1 (diameter 2), centred at the origin.
 *
 * @deprecated Use {@link SphereShape3D} instead — UnitSphereShape3D is now a
 * thin subclass that just pins `radius` to `1`. All geometry (`support`,
 * `signed_distance_at_point`, `volume`, `surface_area`,
 * `nearest_point_on_surface`, ...) is inherited from {@link SphereShape3D}.
 *
 * Kept only for:
 *   - the `UnitSphereShape3D.INSTANCE` shared singleton that scenes, colliders,
 *     and tests embed by reference
 *   - the JSON `'sphere'` type-tag round-trip in `shape_to_type` /
 *     `type_adapters` (an `instanceof` check, which is why we still need a
 *     distinct subclass rather than a constant `SphereShape3D` instance)
 *
 * For new code prefer:
 *   - `new SphereShape3D()` — also defaults to `radius = 1`
 *   - `SphereShape3D.from(radius)` — express by radius
 */
export class UnitSphereShape3D extends SphereShape3D {
    /**
     * Shared singleton. Many call sites — JSON deserialisation, the default
     * {@link Collider} shape, tests — embed this by reference rather than
     * allocating a fresh sphere.
     * @type {UnitSphereShape3D}
     */
    static INSTANCE: UnitSphereShape3D;
    /**
     * @deprecated Prefer dispatching on `isSphereShape3D`, which is `true` for both
     * UnitSphereShape3D (inherited via prototype chain) and {@link SphereShape3D}.
     * Retained so any older external code that already narrowed via this marker
     * keeps working.
     * @readonly
     * @type {boolean}
     */
    readonly isUnitSphereShape3D: boolean;
}
import { SphereShape3D } from "./SphereShape3D.js";
//# sourceMappingURL=UnitSphereShape3D.d.ts.map