UNPKG

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)

161 lines (160 loc) 5.23 kB
/** @format */ import { Format } from '../color/format.js'; import { Palette } from './palette.js'; /** * Class representing a palette of colors stored as 32-bit unsigned integers. */ export declare class PaletteUint32 implements Palette { /** * The underlying data array storing the color values. * @private */ private readonly _data; /** * Gets the underlying data array. * @returns {Uint32Array} The data array. */ get data(): Uint32Array; /** * The number of colors in the palette. * @private */ private readonly _numColors; /** * Gets the number of colors in the palette. * @returns {number} The number of colors. */ get numColors(): number; /** * The number of channels per color. * @private */ private readonly _numChannels; /** * Gets the number of channels per color. * @returns {number} The number of channels. */ get numChannels(): number; /** * Gets the byte length of the underlying data array. * @returns {number} The byte length. */ get byteLength(): number; /** * Gets the buffer of the underlying data array. * @returns {ArrayBufferLike} The buffer. */ get buffer(): ArrayBufferLike; /** * Gets the format of the palette. * @returns {Format} The format. */ get format(): Format; /** * Gets the maximum channel value. * @returns {number} The maximum channel value. */ get maxChannelValue(): number; /** * Creates an instance of PaletteUint32. * @param {number} numColors - The number of colors. * @param {number} numChannels - The number of channels per color. * @param {Uint32Array} [data] - Optional data array. */ constructor(numColors: number, numChannels: number, data?: Uint32Array); /** * Creates a new PaletteUint32 instance from another instance. * @param {PaletteUint32} other - The other PaletteUint32 instance. * @returns {PaletteUint32} The new instance. */ static from(other: PaletteUint32): PaletteUint32; /** * Sets the RGB values at the specified index. * @param {number} index - The index. * @param {number} r - The red value. * @param {number} g - The green value. * @param {number} b - The blue value. */ setRgb(index: number, r: number, g: number, b: number): void; /** * Sets the RGBA values at the specified index. * @param {number} index - The index. * @param {number} r - The red value. * @param {number} g - The green value. * @param {number} b - The blue value. * @param {number} a - The alpha value. */ setRgba(index: number, r: number, g: number, b: number, a: number): void; /** * Sets the value of a specific channel at the specified index. * @param {number} index - The index. * @param {number} channel - The channel. * @param {number} value - The value. */ set(index: number, channel: number, value: number): void; /** * Gets the value of a specific channel at the specified index. * @param {number} index - The index. * @param {number} channel - The channel. * @returns {number} The value. */ get(index: number, channel: number): number; /** * Gets the red value at the specified index. * @param {number} index - The index. * @returns {number} The red value. */ getRed(index: number): number; /** * Gets the green value at the specified index. * @param {number} index - The index. * @returns {number} The green value. */ getGreen(index: number): number; /** * Gets the blue value at the specified index. * @param {number} index - The index. * @returns {number} The blue value. */ getBlue(index: number): number; /** * Gets the alpha value at the specified index. * @param {number} index - The index. * @returns {number} The alpha value. */ getAlpha(index: number): number; /** * Sets the red value at the specified index. * @param {number} index - The index. * @param {number} value - The red value. */ setRed(index: number, value: number): void; /** * Sets the green value at the specified index. * @param {number} index - The index. * @param {number} value - The green value. */ setGreen(index: number, value: number): void; /** * Sets the blue value at the specified index. * @param {number} index - The index. * @param {number} value - The blue value. */ setBlue(index: number, value: number): void; /** * Sets the alpha value at the specified index. * @param {number} index - The index. * @param {number} value - The alpha value. */ setAlpha(index: number, value: number): void; /** * Creates a clone of the current PaletteUint32 instance. * @returns {PaletteUint32} The cloned instance. */ clone(): PaletteUint32; /** * Converts the palette to a Uint8Array. * @returns {Uint8Array} The Uint8Array representation of the palette. */ toUint8Array(): Uint8Array; }