UNPKG

@solana/qr-code-styling

Version:

Add a style and an image to your QR code

124 lines (123 loc) 3.75 kB
export interface UnknownObject { [key: string]: any; } export declare type DotType = "dots" | "rounded" | "classy" | "classy-rounded" | "square" | "extra-rounded"; export declare type CornerDotType = "dot" | "square"; export declare type CornerSquareType = "dot" | "square" | "extra-rounded"; export declare type FileExtension = "svg" | "png" | "jpeg" | "webp"; export declare type GradientType = "radial" | "linear"; export declare type DrawType = "canvas" | "svg"; export declare type ShapeType = "square" | "circle"; export declare type Gradient = { type: GradientType; rotation?: number; colorStops: { offset: number; color: string; }[]; }; export interface DotTypes { [key: string]: DotType; } export interface GradientTypes { [key: string]: GradientType; } export interface CornerDotTypes { [key: string]: CornerDotType; } export interface CornerSquareTypes { [key: string]: CornerSquareType; } export interface DrawTypes { [key: string]: DrawType; } export interface ShapeTypes { [key: string]: ShapeType; } export declare type TypeNumber = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40; export declare type ErrorCorrectionLevel = "L" | "M" | "Q" | "H"; export declare type Mode = "Numeric" | "Alphanumeric" | "Byte" | "Kanji"; export interface QRCode { addData(data: string, mode?: Mode): void; make(): void; getModuleCount(): number; isDark(row: number, col: number): boolean; createImgTag(cellSize?: number, margin?: number): string; createSvgTag(cellSize?: number, margin?: number): string; createSvgTag(opts?: { cellSize?: number; margin?: number; scalable?: boolean; }): string; createDataURL(cellSize?: number, margin?: number): string; createTableTag(cellSize?: number, margin?: number): string; createASCII(cellSize?: number, margin?: number): string; renderTo2dContext(context: CanvasRenderingContext2D, cellSize?: number): void; } export declare type Options = { type?: DrawType; shape?: ShapeType; width?: number; height?: number; margin?: number; data?: string; image?: string; qrOptions?: { typeNumber?: TypeNumber; mode?: Mode; errorCorrectionLevel?: ErrorCorrectionLevel; }; imageOptions?: { hideBackgroundDots?: boolean; imageSize?: number; crossOrigin?: string; margin?: number; }; dotsOptions?: { type?: DotType; color?: string; gradient?: Gradient; }; cornersSquareOptions?: { type?: CornerSquareType; color?: string; gradient?: Gradient; }; cornersDotOptions?: { type?: CornerDotType; color?: string; gradient?: Gradient; }; backgroundOptions?: { round?: number; color?: string; gradient?: Gradient; }; }; export declare type FilterFunction = (i: number, j: number) => boolean; export declare type DownloadOptions = { name?: string; extension?: FileExtension; }; export declare type DrawArgs = { x: number; y: number; size: number; rotation?: number; getNeighbor?: GetNeighbor; }; export declare type BasicFigureDrawArgs = { x: number; y: number; size: number; rotation?: number; }; export declare type RotateFigureArgs = { x: number; y: number; size: number; rotation?: number; draw: () => void; }; export declare type GetNeighbor = (x: number, y: number) => boolean; export declare type ExtensionFunction = (svg: SVGElement, options: Options) => void;