import type { InternalTexture } from "../Materials/Textures/internalTexture"; /** * for description see https://www.khronos.org/opengles/sdk/tools/KTX/ * for file layout see https://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/ */ export declare class KhronosTextureContainer { /** contents of the KTX container file */ data: ArrayBufferView; private static HEADER_LEN; private static COMPRESSED_2D; private static COMPRESSED_3D; private static TEX_2D; private static TEX_3D; /** * Gets the openGL type */ glType: number; /** * Gets the openGL type size */ glTypeSize: number; /** * Gets the openGL format */ glFormat: number; /** * Gets the openGL internal format */ glInternalFormat: number; /** * Gets the base internal format */ glBaseInternalFormat: number; /** * Gets image width in pixel */ pixelWidth: number; /** * Gets image height in pixel */ pixelHeight: number; /** * Gets image depth in pixels */ pixelDepth: number; /** * Gets the number of array elements */ numberOfArrayElements: number; /** * Gets the number of faces */ numberOfFaces: number; /** * Gets the number of mipmap levels */ numberOfMipmapLevels: number; /** * Gets the bytes of key value data */ bytesOfKeyValueData: number; /** * Gets the load type */ loadType: number; /** * If the container has been made invalid (eg. constructor failed to correctly load array buffer) */ isInvalid: boolean; /** * Creates a new KhronosTextureContainer * @param data contents of the KTX container file * @param facesExpected should be either 1 or 6, based whether a cube texture or or */ constructor( /** contents of the KTX container file */ data: ArrayBufferView, facesExpected: number); /** * Uploads KTX content to a Babylon Texture. * It is assumed that the texture has already been created & is currently bound * @internal */ uploadLevels(texture: InternalTexture, loadMipmaps: boolean): void; private _upload2DCompressedLevels; /** * Checks if the given data starts with a KTX file identifier. * @param data the data to check * @returns true if the data is a KTX file or false otherwise */ static IsValid(data: ArrayBufferView): boolean; }