import * as THREE from 'three'; import type { CullingVolume } from '../../utils/volume'; export type TileRequestOrder = 'SCREEN_SPACE_ERROR' | 'SCREEN_LEVEL_VERTICAL' | 'SCREEN_VERTICAL'; export type FrameState = { frameNumber: number; time: number; camera: { type: "PerspectiveCamera" | "OrthographicCamera"; position: THREE.Vector3; direction: THREE.Vector3; up: THREE.Vector3; projectionMatrix: THREE.Matrix4; visible: boolean; refine: boolean; }; height: number; pixelRatio: number; cullingVolume: CullingVolume; sseDenominator: number; minLevelOfDetail: number; maxLevelOfDetail: number; minGeometricError: number; maxGeometricError: number; skipLevelOfDetail: boolean; mostDetail: boolean; loadSiblings: boolean; cameraCulling: boolean; maxRequests: number; requestOrder: TileRequestOrder; maxScreenSpaceError: number; memoryAdjustedScreenSpaceError: boolean; maxMemoryUsage: number; };