import { type Nullable } from "@babylonjs/core/types.js"; import { type Node } from "@babylonjs/core/node.js"; import { type INode } from "babylonjs-gltf2interface"; import { type IGLTFExporterExtensionV2 } from "../glTFExporterExtension.js"; import { GLTFExporter } from "../glTFExporter.js"; /** * [Specification](https://github.com/KhronosGroup/glTF/blob/master/extensions/2.0/Khronos/EXT_lights_area/README.md) */ export declare class EXT_lights_area implements IGLTFExporterExtensionV2 { /** The name of this extension. */ readonly name = "EXT_lights_area"; /** Defines whether this extension is enabled. */ enabled: boolean; /** Defines whether this extension is required */ required: boolean; /** Reference to the glTF exporter */ private _exporter; private _lights; /** * @internal */ constructor(exporter: GLTFExporter); /** @internal */ dispose(): void; /** @internal */ get wasUsed(): boolean; /** @internal */ onExporting(): void; /** * Define this method to modify the default behavior when exporting a node * @param context The context when exporting the node * @param node glTF node * @param babylonNode BabylonJS node * @param nodeMap Node mapping of babylon node to glTF node index * @param convertToRightHanded Flag to convert the values to right-handed * @returns nullable INode promise */ postExportNodeAsync(context: string, node: INode, babylonNode: Node, nodeMap: Map, convertToRightHanded: boolean): Promise>; } /** * Registers the EXT_lights_area glTF serializer extension with the {@link GLTFExporter}. * Safe to call multiple times; only the first call has an effect. */ export declare function RegisterEXT_lights_area(): void;