import { ColorType, Chunk, ChunkHeader } from "./Chunk"; import { ChunkText } from "./ChunkText"; import { ChunkTransparency } from "./ChunkTransparency"; import { ChunkPalette } from "./ChunkPalette"; import { PNGImage } from "./PNGImage"; import { PNGImageRGBA } from "./PNGImageRGB"; export interface PNGDelegate { chunk?(chunk: Chunk, buffer: ArrayBuffer): void; } export declare class PNGFile { chunks: Chunk[]; private constructor(); static create(header: ChunkHeader, palette?: ChunkPalette, transparency?: ChunkTransparency): PNGFile; static parse(buffer: ArrayBuffer, delegate?: PNGDelegate): PNGFile; toArrayBuffer(): ArrayBuffer; readonly width: number; readonly height: number; readonly colorType: ColorType; readonly interlace: number; readonly bitDepth: number; firstChunk(type: string): Chunk | undefined; firstText(keyword: string): ChunkText | undefined; private dpiFromPhysChunk; private dpiFromText; readonly dpi: { x: number; y: number; } | undefined; readonly componentCount: number; readonly pixelSize: number; private createPixelAccess; private rawPixels; private static validateBitDepth; renderImage(): PNGImage; updateImage(image: PNGImage): void; toRGBA(): [PNGFile, PNGImageRGBA]; clone(): PNGFile; }