image-in-browser
Version:
Package for encoding / decoding images, transforming images, applying filters, drawing primitives on images on the client side (no need for server Node.js)
102 lines (101 loc) • 3.62 kB
TypeScript
/** @format */
import { VP8L } from './vp8l.js';
import { VP8LTransform } from './vp8l-transform.js';
/**
* Class representing internal VP8L operations.
*/
export declare class VP8LInternal extends VP8L {
/**
* Gets the transforms.
* @returns {VP8LTransform[]} The array of VP8LTransform objects.
*/
get transforms(): VP8LTransform[];
/**
* Gets the pixels.
* @returns {Uint32Array | undefined} The pixel data.
*/
get pixels(): Uint32Array | undefined;
/**
* Gets the opaque data.
* @returns {Uint8Array | undefined} The opaque data.
*/
get opaque(): Uint8Array | undefined;
/**
* Sets the opaque data.
* @param {Uint8Array | undefined} v - The opaque data.
*/
set opaque(v: Uint8Array | undefined);
/**
* Gets the IO width.
* @returns {number | undefined} The IO width.
*/
get ioWidth(): number | undefined;
/**
* Sets the IO width.
* @param {number | undefined} v - The IO width.
*/
set ioWidth(v: number | undefined);
/**
* Gets the IO height.
* @returns {number | undefined} The IO height.
*/
get ioHeight(): number | undefined;
/**
* Sets the IO height.
* @param {number | undefined} v - The IO height.
*/
set ioHeight(v: number | undefined);
/**
* Decodes image data.
* @param {Uint32Array} data - The image data.
* @param {number} width - The width of the image.
* @param {number} height - The height of the image.
* @param {number} lastRow - The last row of the image.
* @param {(_: number) => void} processFunc - The function to process each pixel.
* @returns {boolean} True if decoding was successful, otherwise false.
*/
decodeImageData(data: Uint32Array, width: number, height: number, lastRow: number, processFunc: (_: number) => void): boolean;
/**
* Decodes image stream.
* @param {number} xsize - The width of the image.
* @param {number} ysize - The height of the image.
* @param {boolean} isLevel0 - Indicates if it is level 0.
* @returns {Uint32Array | undefined} The decoded image stream.
*/
decodeImageStream(xsize: number, ysize: number, isLevel0: boolean): Uint32Array | undefined;
/**
* Allocates internal buffers for 32-bit data.
* @returns {boolean} True if allocation was successful, otherwise false.
*/
allocateInternalBuffers32b(): boolean;
/**
* Allocates internal buffers for 8-bit data.
* @returns {boolean} True if allocation was successful, otherwise false.
*/
allocateInternalBuffers8b(): boolean;
/**
* Decodes alpha data.
* @param {number} width - The width of the image.
* @param {number} height - The height of the image.
* @param {number} lastRow - The last row of the image.
* @returns {boolean} True if decoding was successful, otherwise false.
*/
decodeAlphaData(width: number, height: number, lastRow: number): boolean;
/**
* Checks if 8-bit optimization is possible.
* @returns {boolean} True if 8-bit optimization is possible, otherwise false.
*/
is8bOptimizable(): boolean;
/**
* Extracts alpha rows.
* @param {number} row - The row to extract.
*/
extractAlphaRows(row: number): void;
/**
* Calculates the subsample size.
* @param {number} size - The original size.
* @param {number} samplingBits - The number of sampling bits.
* @returns {number} The subsample size.
*/
static subSampleSize(size: number, samplingBits: number): number;
}