import { PropsWithChildren } from 'react'; import { Matrix16T, QuaternionT } from '../vuer/interfaces'; export type HUDPlaneProps = PropsWithChildren<{ /** * @dial geometry * @dial-cols 2 * @dial-dtype number * @dial-default 10 * @dial-step 0.01 * @dial-min 0.1 */ distanceToCamera?: number; /** * @dial geometry * @dial-dtype number * @dial-step 0.01 */ aspect?: number; /** * @dial geometry * @dial-dtype number * @dial-step 0.01 */ height?: number; /** * @dial transform * @dial-cols 2 * @dial-dtype vector3 */ position?: [number, number, number]; /** * @dial transform * @dial-dtype vector3 */ rotation?: [number, number, number]; quaternion?: QuaternionT; matrix?: Matrix16T; /** * @dial behavior * @dial-dtype boolean * @dial-default false */ fixed?: boolean | undefined; /** * @dial appearance * @dial-dtype int * @dial-default 2 * @dial-min 0 * @dial-max 2 */ side?: number; /** * @dial rendering * @dial-dtype int */ layers?: number; }>; /** * Head-up display plane that follows the camera. * * This is a container component - a plane mesh that stays at a fixed distance * from the camera. Children (typically materials) are rendered on the plane. * * From Python, pass image data via children that will be serialized as * material props. The plane geometry is 1x1 and scaled dynamically based * on camera FOV and distanceToCamera. * * @example * ```tsx * // With a material child * * * * * // Fixed position (doesn't follow camera) * * * * ``` */ export declare function HUDPlane({ distanceToCamera, aspect, height, position, rotation, quaternion, matrix, fixed, layers, children, }: HUDPlaneProps): import("react/jsx-runtime").JSX.Element;