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.15 kB
/** @format */ import { Format } from '../color/format.js'; import { Palette } from './palette.js'; /** * Class representing a palette with Float16 color values. */ export declare class PaletteFloat16 implements Palette { /** * The underlying data array storing color values. * @private */ private readonly _data; /** * Gets the data array. * @returns {Uint16Array} The data array. */ get data(): Uint16Array; /** * 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 data array. * @returns {number} The byte length. */ get byteLength(): number; /** * Gets the buffer of the 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 PaletteFloat16. * @param {number} numColors - The number of colors. * @param {number} numChannels - The number of channels per color. * @param {Uint16Array} [data] - Optional data array. */ constructor(numColors: number, numChannels: number, data?: Uint16Array); /** * Creates a new instance of PaletteFloat16 from another instance. * @param {PaletteFloat16} other - The other instance. * @returns {PaletteFloat16} A new instance. */ static from(other: PaletteFloat16): PaletteFloat16; /** * Sets the RGB values at a specific 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 a specific 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 a specific 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 a specific 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 a specific index. * @param {number} index - The index. * @returns {number} The red value. */ getRed(index: number): number; /** * Gets the green value at a specific index. * @param {number} index - The index. * @returns {number} The green value. */ getGreen(index: number): number; /** * Gets the blue value at a specific index. * @param {number} index - The index. * @returns {number} The blue value. */ getBlue(index: number): number; /** * Gets the alpha value at a specific index. * @param {number} index - The index. * @returns {number} The alpha value. */ getAlpha(index: number): number; /** * Sets the red value at a specific index. * @param {number} index - The index. * @param {number} value - The red value. */ setRed(index: number, value: number): void; /** * Sets the green value at a specific index. * @param {number} index - The index. * @param {number} value - The green value. */ setGreen(index: number, value: number): void; /** * Sets the blue value at a specific index. * @param {number} index - The index. * @param {number} value - The blue value. */ setBlue(index: number, value: number): void; /** * Sets the alpha value at a specific index. * @param {number} index - The index. * @param {number} value - The alpha value. */ setAlpha(index: number, value: number): void; /** * Creates a clone of the current palette. * @returns {PaletteFloat16} A new instance that is a clone of the current palette. */ clone(): PaletteFloat16; /** * Converts the palette to a Uint8Array. * @returns {Uint8Array} The Uint8Array representation of the palette. */ toUint8Array(): Uint8Array; }