import { DataTexture, WebGLRenderer, Texture } from "three"; import Channel from "./Channel.js"; import type { FuseChannel } from "./types.js"; export default class FusedChannelData { width: number; height: number; maskTexture: DataTexture; private fuseRequested; private channelsDataToFuse; private fuseGeometry; private fuseMaterialF; private fuseMaterialUI; private fuseMaterialI; private fuseMaterialProps; private fuseScene; private quadCamera; private fuseRenderTarget; constructor(atlasX: number, atlasY: number); private setupFuseMaterial; getFusedTexture(): Texture; cleanup(): void; private getShader; fuse(combination: FuseChannel[], channels: Channel[]): void; gpuFuse(renderer: WebGLRenderer): void; setChannelAsMask(idx: number, channel: Channel): boolean; }