/// import { RequiredOptions, Gradient } from "./QROptions"; import { QRCode } from "../types"; declare type FilterFunction = (i: number, j: number) => boolean; interface Canvas extends HTMLCanvasElement { toBuffer?: (type: string) => Buffer; } export default class QRCanvas { _canvas: Canvas; _options: RequiredOptions; _qr?: QRCode; _image?: HTMLImageElement; constructor(options: RequiredOptions); get context(): CanvasRenderingContext2D | null; get width(): number; get height(): number; getCanvas(): Canvas; clear(): void; drawQR(qr: QRCode): Promise; drawBackground(): void; drawDots(filter?: FilterFunction): void; drawCorners(filter?: FilterFunction): void; loadImage(): Promise; drawImage({ width, height, count, dotSize }: { width: number; height: number; count: number; dotSize: number; }): void; _createGradient({ context, options, additionalRotation, x, y, size }: { context: CanvasRenderingContext2D; options: Gradient; additionalRotation: number; x: number; y: number; size: number; }): CanvasGradient; } export {};