/** * 4×4 IDCT. `coeffs` is 16 quantised-then-dequantised DCT coefficients * in raster order. `dst` is a 4×4 patch (16 entries with stride * `dstStride`, starting at `dstOffset`) that the residual is added to * and clipped to [0, 255]. The patch is read+written so the caller can * pre-fill it with the prediction. */ export declare function idct4x4Add(coeffs: Int16Array, dst: Uint8Array, dstStride: number, dstOffset: number): void; /** * Walsh-Hadamard transform for the Y2 block — port of libwebp's * `TransformWHT_C`. Decoded coefficients (16 entries, raster order) * are transformed in-place; the result holds the 16 DCs that the * per-block IDCT will inject as `coeffs[0]` of each of the 16 luma * sub-blocks. */ export declare function iwht4x4(io: Int16Array): void; /** * libwebp also has `TransformDC` and `TransformDCUV` shortcuts that * skip the full IDCT when only the DC coefficient is non-zero — they * compute `dc = (coef[0] + 4) >> 3` and add `dc` to every pixel. * We provide it here for use by the orchestrator. */ export declare function transformDC(coef: Int16Array, dst: Uint8Array, dstStride: number, dstOffset: number): void; /** Clip a value to [0, 255]. */ export declare function clip255(v: number): number;