import type { Document } from '@gltf-transform/core'; export type Ktx2Mode = 'etc1s' | 'uastc'; export interface Ktx2Result { encoder: 'basis-wasm'; mode: Ktx2Mode; encoded: { name: string; before: number; after: number; }[]; } /** * Encodes the document's color textures to KTX2 / Basis (KHR_texture_basisu) via the BasisU WASM * encoder — GPU-compressed in VRAM (ETC1S ~6–8×, UASTC ~4×) and transcoded once at load by the * client's KTX2Loader. Run on the FINAL merged web GLB. The import pipeline carries a single baked * base-color atlas, so every remaining texture is an sRGB color/albedo map. Textures already in * image/ktx2 are skipped (idempotent). */ export declare function encodeKtx2(document: Document, opts?: { mode?: Ktx2Mode; quality?: number; }): Promise;