export type RawPtr = number & { __type: 'Hdr2Png.RawPtr' }; export type Bool = 0 | 1; export const enum Operation { MergeMetallicRoughness = 0, AlphaToTransmission = 1, RemoveAlpha = 2, HdrToRgbe = 4, SplitChromaLightmap = 5, MergeColorAlpha = 6, MergeWhiteAlpha = 7, GgxPrefilterHdr = 8, DiffuseIrradiance = 9, PrecomputeGgxDfg = 10, Resample = 11, FilterNormalMap = 12, } export const enum Result { Success = 0, OutOfMemory = -1, ValidationFailure = -2, InvalidInput = -3, ConversionFailed = -4, OutputUnavailable = -5, UnsupportedFormat = -6, OutOfBounds = -7, InvalidOperation = -8, } export interface IHdr2Png { _begin(): void; _allocInput(idxInput: number, byteLength: number): RawPtr; _execute(operation: Operation): Result; _getOutputSize(idxOutput: number): number; _getOutputPtr(idxOutput: number): RawPtr; _getParameterBuffer(): RawPtr; readonly HEAPU8: Uint8Array; readonly HEAPF32: Float32Array; readonly wasmMemory: WebAssembly.Memory; } export interface InstantiateOptions { wasmMemory: WebAssembly.Memory; } function Instantiate(options: InstantiateOptions): Promise; export = Instantiate;