/// import { IComparerOptions, IRGBColor } from './options'; export interface IRGBAColor extends IRGBColor { a: number; } export type ImageOptions = Pick; export declare class Image { private inner; private buffer; private refreshRequired; private readonly options; constructor(buffer: Buffer, options?: ImageOptions); get width(): number; get height(): number; get length(): number; getPixel(index: number): number; setPixel(index: number, value: number): void; getPixelXY(x: number, y: number): number; setPixelXY(x: number, y: number, value: number): void; getPosition(x: number, y: number): number; private updateBuffer; write(fileName: string): void; getBuffer(): Buffer; clone(): Image; fill(color: number | IRGBColor | IRGBAColor): void; invert(): void; replace(source: Image, mask?: Image): void; private traverse; filter({ r, g, b }: IRGBColor): void; spreadBlack(radius: number): void; and(...from: Image[]): void; or(...from: Image[]): void; xor(...from: Image[]): void; normalize(): void; multiply(color: number | IRGBColor | IRGBAColor): void; do(callback: (x: Image) => Image | void, log?: (image: Image) => void): Image; as(callback: (x: Image) => Image | void, log?: (image: Image) => void): Image; with(callback: (x: Image) => T): T; dataClone(): number[]; } export declare function colorToString(color: IRGBColor): string;