import { Camera, Color, ColorRepresentation, Scene, Vector2 } from 'three'; import { EffectComposer } from 'three/examples/jsm/postprocessing/EffectComposer.js'; /** * Represents an object defining the dimensions and position of a viewport. */ export interface Viewport { /** Left coordinate of the viewport. */ left: number; /** Bottom coordinate of the viewport. */ bottom: number; /** Width of the viewport. */ width: number; /** Height of the viewport. */ height: number; } /** * Represents a set of parameters for configuring a view. */ export interface ViewParameters { /** Scene rendered in the view. */ scene: Scene; /** Camera used to view the scene (avoid using the same camera for different scenes). */ camera: Camera; /** Normalized viewport defining dimensions and position of the view (optional). Values range from 0 to 1. */ viewport?: Viewport; /** Tags of the view (optional). */ tags?: string[]; /** Determines if the view is visible (optional, default: true). */ visible?: boolean; /** Determines whether InteractionEvents will be triggered for the view (optional, default: true). */ enabled?: boolean; /** Background color of the view (optional, default: 'black'). */ backgroundColor?: ColorRepresentation; /** Background alpha value of the view (optional, default: 1). */ backgroundAlpha?: number; /** Effect composer used for post-processing (optional). */ composer?: EffectComposer; /** Function called before rendering the view (optional). */ onBeforeRender?: () => void; /** Function called after rendering the view (optional). */ onAfterRender?: () => void; } /** * Represents a render view with specific parameters. * Don't instantiate this manually. */ export declare class RenderView implements ViewParameters { scene: Scene; camera: Camera; viewport: Viewport; /** The viewport defining the dimensions and position of the view. */ computedViewport: { left: number; bottom: number; width: number; height: number; top: number; }; tags: string[]; enabled: boolean; backgroundColor: Color; backgroundAlpha: number; composer: EffectComposer; private readonly _rendererSize; private _visible; private readonly _onBeforeRender; private readonly _onAfterRender; get visible(): boolean; set visible(value: boolean); /** * Don't instantiate this manually. */ constructor(parameters: ViewParameters, rendererSize: Vector2); /** * Updates the dimensions of the viewport based on the renderer size. */ update(): void; onBeforeRender(): void; onAfterRender(): void; } //# sourceMappingURL=RenderView.d.ts.map