import { HalfFloatType, LinearSRGBColorSpace } from 'three'; import { Constructor, QuadRendererTextureOptions } from '../../core'; import { DecodeParametersWithRenderer } from './types'; /** * Configuration for decode function */ export interface DecodeConfig { renderer: TRenderer; createMaterial: (params: DecodeParametersWithRenderer>) => TMaterial; createQuadRenderer: (params: { width: number; height: number; type: typeof HalfFloatType; colorSpace: typeof LinearSRGBColorSpace; material: TMaterial; renderer: InstanceType; renderTargetOptions?: QuadRendererTextureOptions; }) => TQuadRenderer; } /** * Shared decode implementation factory * Creates a decode function that prepares a QuadRenderer with the given parameters */ export declare function createDecodeFunction(config: DecodeConfig): (params: DecodeParametersWithRenderer>) => TQuadRenderer;