import { b as PolyAmbientLight, a as PolyDirectionalLight, C as CameraState, c as PolyPointLight, V as Vec3, P as Polygon } from './camera-VU-yix11.cjs'; type Vector3Tuple = [number, number, number]; interface PolyCameraFromThreeOptions { /** PolyCSS CSS-pixel scale per world unit. Defaults to BASE_TILE. */ zoom?: number; /** Viewport height in CSS px for fov/frustum conversion. Defaults to 420. */ viewportHeight?: number; } interface PolyPerspectiveCameraFromThreeOptions extends PolyCameraFromThreeOptions { /** CSS perspective distance in px. Defaults to the value derived from fov. */ perspective?: number; } type PolyOrthographicCameraFromThreeOptions = PolyCameraFromThreeOptions; interface PolyPerspectiveCameraOptionsFromThree extends CameraState { perspective: number; } type PolyOrthographicCameraOptionsFromThree = CameraState; declare class Vector3 { x: number; y: number; z: number; constructor(x?: number, y?: number, z?: number); set(x: number, y: number, z: number): this; copy(v: Vector3): this; clone(): Vector3; add(v: Vector3): this; sub(v: Vector3): this; multiplyScalar(s: number): this; dot(v: Vector3): number; cross(v: Vector3): this; length(): number; normalize(): this; toArray(): Vector3Tuple; } declare class Euler { #private; x: number; y: number; z: number; readonly order = "XYZ"; constructor(x?: number, y?: number, z?: number, onChange?: () => void); set(x: number, y: number, z: number): this; } declare class Object3D { #private; readonly position: Vector3; readonly rotation: Euler; readonly scale: Vector3; up: Vector3; constructor(); lookAt(x: number | Vector3, y?: number, z?: number): this; get lookAtTarget(): Vector3 | null; localToWorld(v: Vector3): Vector3; worldForward(): Vector3; } declare class PerspectiveCamera extends Object3D { readonly type = "PerspectiveCamera"; fov: number; aspect: number; near: number; far: number; zoom: number; constructor(fov?: number, aspect?: number, near?: number, far?: number); toPolyCameraState(options?: PolyPerspectiveCameraFromThreeOptions): PolyPerspectiveCameraOptionsFromThree; } declare class OrthographicCamera extends Object3D { readonly type = "OrthographicCamera"; left: number; right: number; top: number; bottom: number; near: number; far: number; zoom: number; constructor(left?: number, right?: number, top?: number, bottom?: number, near?: number, far?: number); toPolyCameraState(options?: PolyOrthographicCameraFromThreeOptions): PolyOrthographicCameraOptionsFromThree; } declare class DirectionalLight extends Object3D { readonly target: Object3D; color: string; intensity: number; constructor(color?: string, intensity?: number); toPolyDirectionalLight(): PolyDirectionalLight; } declare class PointLight extends Object3D { color: string; intensity: number; distance: number; decay: number; castShadow: boolean; constructor(color?: string, intensity?: number, distance?: number, decay?: number); toPolyPointLight(): PolyPointLight; } declare class AmbientLight { color: string; intensity: number; constructor(color?: string, intensity?: number); toPolyAmbientLight(): PolyAmbientLight; } declare function threeToPolyPoint(v: Vector3 | Vector3Tuple): Vec3; declare function polyToThreePoint(v: Vec3): Vector3; declare function threeToPolyDirection(v: Vector3 | Vector3Tuple): Vec3; declare function polyToThreeDirection(v: Vec3): Vector3; declare function transformPointToPoly(point: Vector3 | Vector3Tuple, object: Object3D): Vec3; declare function transformPolygonsToPoly(polygons: Polygon[], object: Object3D): Polygon[]; export { AmbientLight, DirectionalLight, Euler, Object3D, OrthographicCamera, PerspectiveCamera, PointLight, type PolyCameraFromThreeOptions, type PolyOrthographicCameraFromThreeOptions, type PolyOrthographicCameraOptionsFromThree, type PolyPerspectiveCameraFromThreeOptions, type PolyPerspectiveCameraOptionsFromThree, Vector3, type Vector3Tuple, polyToThreeDirection, polyToThreePoint, threeToPolyDirection, threeToPolyPoint, transformPointToPoly, transformPolygonsToPoly };