import { Container } from "../Container"; import * as THREE from "three"; import { EffectComposer } from "../jsm/postprocessing/EffectComposer.js"; import { RenderPass } from "../jsm/postprocessing/RenderPass.js"; import { ShaderPass } from "../jsm/postprocessing/ShaderPass.js"; import { SSAARenderPass } from "../jsm/postprocessing/SSAARenderPass.js"; import { SMAAPass } from "../jsm/postprocessing/SMAAPass.js"; import { EAntiAlias } from "./types"; import type { ICameraData, IBloomOptions, IAliasOptions } from "./types"; export declare abstract class ABaseGarden extends THREE.Scene { container: Container; touchModels: THREE.Object3D[]; composer?: EffectComposer; renderPass?: RenderPass; oldCameraData?: ICameraData; levelStrategys: THREE.LOD[]; constructor(container: Container, originalLight?: boolean); render(): void; addTouchModel(models: THREE.Object3D | THREE.Object3D[]): void; removeTouchModel(uuids: string | string[]): void; private renderTarget?; createBasePass(msaa?: boolean): void; private antiAliasType; antiAliasPass: ShaderPass | SSAARenderPass | SMAAPass | undefined; private effectColorSpaceConversion; setAntiAlias(antiAlias: EAntiAlias, options?: IAliasOptions): void; updateAntiAliasSize(width: number, height: number): void; private materials; private darkMaterial; private bloomLayer; private bloomComposer?; private bloomMixPass?; createBloomPass(options?: IBloomOptions): void; createExposurePass(): void; bloomRender(): void; }