Socket
Socket
Sign inDemoInstall

@types/qrcode

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@types/qrcode - npm Package Compare versions

Comparing version 1.4.3 to 1.5.0

qrcode/build/qrcode.d.ts

395

qrcode/index.d.ts

@@ -1,2 +0,2 @@

// Type definitions for qrcode 1.4
// Type definitions for qrcode 1.5
// Project: https://github.com/soldair/node-qrcode

@@ -6,4 +6,4 @@ // Definitions by: York Yao <https://github.com/plantain-00>

// Rémi Sormain <https://github.com/Marchelune>
// BendingBender <https://github.com/BendingBender>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.1

@@ -15,5 +15,5 @@ /// <reference types="node" />

export type QRCodeErrorCorrectionLevel = 'low' | 'medium' | 'quartile' | 'high' | 'L' | 'M' | 'Q' | 'H';
export type QRCodeMaskPattern = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7;
export type QRCodeToSJISFunc = (codePoint: string) => number;
export type QRCodeMAskPattern = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | '1' | '2' | '3' | '4' | '5' | '6' | '7';
export interface QRCodeOptions {

@@ -26,12 +26,11 @@ /**

* Error correction level.
* Possible values are low, medium, quartile, high or L, M, Q, H.
* Default: M
* @default 'M'
*/
errorCorrectionLevel?: QRCodeErrorCorrectionLevel | undefined;
/**
* maskPattern.
* Possible values are numbers 0 to 7 or strings representing numbers 0 to 7.
* Default: undefined - most suitable value will be calculated.
* Mask pattern used to mask the symbol.
*
* If not specified the more suitable value will be calculated.
*/
maskPattern?: QRCodeMAskPattern;
maskPattern?: QRCodeMaskPattern | undefined;
/**

@@ -41,67 +40,107 @@ * Helper function used internally to convert a kanji to its Shift JIS value.

*/
toSJISFunc?: ((codePoint: string) => number) | undefined;
toSJISFunc?: QRCodeToSJISFunc | undefined;
}
export interface QRCodeToDataURLOptions extends QRCodeRenderersOptions {
export type QRCodeDataURLType = 'image/png' | 'image/jpeg' | 'image/webp';
export type QRCodeToDataURLOptions = QRCodeToDataURLOptionsJpegWebp | QRCodeToDataURLOptionsOther;
export interface QRCodeToDataURLOptionsJpegWebp extends QRCodeRenderersOptions {
/**
* Data URI format.
* Default: image/png
* @default 'image/png'
*/
type?: 'image/png' | 'image/jpeg' | 'image/webp' | undefined;
rendererOpts?: {
/**
* A Number between 0 and 1 indicating image quality if the requested type is image/jpeg or image/webp.
* Default: 0.92
*/
quality?: number | undefined;
} | undefined;
type: 'image/jpeg' | 'image/webp';
rendererOpts?:
| {
/**
* A number between `0` and `1` indicating image quality.
* @default 0.92
*/
quality?: number | undefined;
}
| undefined;
}
export interface QRCodeToDataURLOptionsOther extends QRCodeRenderersOptions {
/**
* Data URI format.
* @default 'image/png'
*/
type?: Exclude<QRCodeDataURLType, 'image/jpeg' | 'image/webp'> | undefined;
}
export interface QRCodeToStringOptions extends QRCodeRenderersOptions {
export type QRCodeStringType = 'utf8' | 'svg' | 'terminal';
export type QRCodeToStringOptions = QRCodeToStringOptionsTerminal | QRCodeToStringOptionsOther;
export interface QRCodeToStringOptionsTerminal extends QRCodeRenderersOptions {
/**
* Output format.
* Default: utf8
* @default 'utf8'
*/
type?: 'utf8' | 'svg' | 'terminal' | undefined;
type: 'terminal';
/**
* Outputs smaller QR code.
* @default false
*/
small?: boolean | undefined;
}
export interface QRCodeToStringOptionsOther extends QRCodeRenderersOptions {
/**
* Output format.
* @default 'utf8'
*/
type?: Exclude<QRCodeStringType, 'terminal'> | undefined;
}
export interface QRCodeToFileOptions extends QRCodeRenderersOptions {
export type QRCodeFileType = 'png' | 'svg' | 'utf8';
export type QRCodeToFileOptions = QRCodeToFileOptionsPng | QRCodeToFileOptionsOther;
export interface QRCodeToFileOptionsPng extends QRCodeRenderersOptions {
/**
* Output format.
* Default: png
* @default 'png'
*/
type?: 'png' | 'svg' | 'utf8' | undefined;
rendererOpts?: {
/**
* Compression level for deflate.
* Default: 9
*/
deflateLevel?: number | undefined;
/**
* Compression strategy for deflate.
* Default: 3
*/
deflateStrategy?: number | undefined;
} | undefined;
type?: 'png' | undefined;
rendererOpts?:
| {
/**
* Compression level for deflate.
* @default 9
*/
deflateLevel?: number | undefined;
/**
* Compression strategy for deflate.
* @default 3
*/
deflateStrategy?: number | undefined;
}
| undefined;
}
export interface QRCodeToFileOptionsOther extends QRCodeRenderersOptions {
/**
* Output format.
* @default 'png'
*/
type: Exclude<QRCodeFileType, 'png'> | undefined;
}
export type QRCodeFileStreamType = 'png';
export interface QRCodeToFileStreamOptions extends QRCodeRenderersOptions {
/**
* Output format. Only png supported for file stream
* Output format. Only png supported for file stream.
*/
type?: 'png' | undefined;
rendererOpts?: {
/**
* Compression level for deflate.
* Default: 9
*/
deflateLevel?: number | undefined;
/**
* Compression strategy for deflate.
* Default: 3
*/
deflateStrategy?: number | undefined;
} | undefined;
type?: QRCodeFileStreamType | undefined;
rendererOpts?:
| {
/**
* Compression level for deflate.
* @default 9
*/
deflateLevel?: number | undefined;
/**
* Compression strategy for deflate.
* @default 3
*/
deflateStrategy?: number | undefined;
}
| undefined;
}
export type QRCodeBufferType = 'png';
export interface QRCodeToBufferOptions extends QRCodeRenderersOptions {

@@ -111,15 +150,17 @@ /**

*/
type?: 'png' | undefined;
rendererOpts?: {
/**
* Compression level for deflate.
* Default: 9
*/
deflateLevel?: number | undefined;
/**
* Compression strategy for deflate.
* Default: 3
*/
deflateStrategy?: number | undefined;
} | undefined;
type?: QRCodeBufferType | undefined;
rendererOpts?:
| {
/**
* Compression level for deflate.
* @default 9
*/
deflateLevel?: number | undefined;
/**
* Compression strategy for deflate.
* @default 3
*/
deflateStrategy?: number | undefined;
}
| undefined;
}

@@ -130,8 +171,8 @@

* Define how much wide the quiet zone should be.
* Default: 4
* @default 4
*/
margin?: number | undefined;
/**
* Scale factor. A value of 1 means 1px per modules (black dots).
* Default: 4
* Scale factor. A value of `1` means 1px per modules (black dots).
* @default 4
*/

@@ -142,30 +183,57 @@ scale?: number | undefined;

* If width is too small to contain the qr symbol, this option will be ignored.
* Takes precedence over scale.
* Takes precedence over `scale`.
*/
width?: number | undefined;
color?: {
/**
* Color of dark module. Value must be in hex format (RGBA).
* Note: dark color should always be darker than color.light.
* Default: #000000ff
*/
dark?: string | undefined;
/**
* Color of light module. Value must be in hex format (RGBA).
* Default: #ffffffff
*/
light?: string | undefined;
} | undefined;
color?:
| {
/**
* Color of dark module. Value must be in hex format (RGBA).
* Note: dark color should always be darker than `color.light`.
* @default '#000000ff'
*/
dark?: string | undefined;
/**
* Color of light module. Value must be in hex format (RGBA).
* @default '#ffffffff'
*/
light?: string | undefined;
}
| undefined;
}
export interface QRCodeSegment {
data: string | Buffer | Uint8ClampedArray;
mode: 'alphanumeric' | 'numeric' | 'kanji' | 'byte';
export type QRCodeSegmentMode = 'alphanumeric' | 'numeric' | 'byte' | 'kanji';
export type QRCodeSegment =
| QRCodeNumericSegment
| QRCodeAlphanumericSegment
| QRCodeByteSegment
| QRCodeKanjiSegment
| {
data: string | Buffer | Uint8ClampedArray | Uint8Array;
};
export interface QRCodeNumericSegment {
mode: 'numeric';
data: string | number;
}
export interface QRCodeAlphanumericSegment {
mode: 'alphanumeric';
data: string;
}
export interface QRCodeByteSegment {
mode: 'byte';
data: Buffer | Uint8ClampedArray | Uint8Array;
}
export interface QRCodeKanjiSegment {
mode: 'kanji';
data: string;
}
export interface QRCode {
/**
* Bitmatrix class with modules data
* BitMatrix class with modules data
*/
modules: any;
modules: BitMatrix;
/**

@@ -178,17 +246,85 @@ * Calculated QR Code version

*/
errorCorrectionLevel: number;
errorCorrectionLevel: ErrorCorrectionLevel;
/**
* Calculated Mask pattern
*/
maskPattern: QRCodeMAskPattern;
maskPattern: QRCodeMaskPattern | undefined;
/**
* Generated segments
*/
segments: QRCodeSegment[];
segments: GeneratedQRCodeSegment[];
}
/**
* Helper class to handle QR Code symbol modules.
*/
export interface BitMatrix {
/**
* Symbol size.
*/
size: number;
data: Uint8Array;
reservedBit: Uint8Array;
/**
* Set bit value at specified location
* If reserved flag is set, this bit will be ignored during masking process.
*/
set(row: number, col: number, value: number, reserved: boolean): void;
/**
* @return Bit value at specified location.
*/
get(row: number, col: number): number;
/**
* Applies xor operator at specified location (used during masking process).
*/
xor(row: number, col: number, value: number): void;
/**
* Check if bit at specified location is reserved.
*/
isReserved(row: number, col: number): number;
}
export interface ErrorCorrectionLevel {
bit: 0 | 1 | 2 | 3;
}
export type ModeId = 'Numeric' | 'Alphanumeric' | 'Byte' | 'Kanji';
export interface Mode<TModeId extends ModeId = ModeId> {
id: TModeId;
bit: number;
ccBits: readonly number[];
}
export type GeneratedQRCodeSegment = NumericData | AlphanumericData | ByteData | KanjiData;
export interface DataSegment {
getLength(): number;
getBitsLength(): number;
}
export interface NumericData extends DataSegment {
mode: Mode<'Numeric'>;
data: string;
}
export interface AlphanumericData extends DataSegment {
mode: Mode<'Alphanumeric'>;
data: string;
}
export interface ByteData extends DataSegment {
mode: Mode<'Byte'>;
data: Uint8Array;
}
export interface KanjiData extends DataSegment {
mode: Mode<'Kanji'>;
data: string;
}
/**
* Creates QR Code symbol and returns a qrcode object.
* @param text Text to encode or a list of objects describing segments.
*/
export function create(text: string | QRCodeSegment[], options: QRCodeOptions): QRCode;
export function create(text: string | QRCodeSegment[], options?: QRCodeOptions): QRCode;

@@ -201,3 +337,3 @@ /**

text: string | QRCodeSegment[],
callback: (error: Error) => void,
callback: (error: Error | null | undefined) => void,
): void;

@@ -211,3 +347,3 @@ /**

options?: QRCodeRenderersOptions,
): Promise<any>;
): Promise<void>;
/**

@@ -220,3 +356,3 @@ * Draws qr code symbol to canvas.

options: QRCodeRenderersOptions,
callback: (error: Error) => void,
callback: (error: Error | null | undefined) => void,
): void;

@@ -228,3 +364,3 @@ /**

text: string | QRCodeSegment[],
callback: (error: Error, canvas: HTMLCanvasElement) => void,
callback: (error: Error | null | undefined, canvas: HTMLCanvasElement) => void,
): void;

@@ -234,3 +370,3 @@ /**

*/
export function toCanvas(text: string | QRCodeSegment[], options?: QRCodeRenderersOptions): Promise<any>;
export function toCanvas(text: string | QRCodeSegment[], options?: QRCodeRenderersOptions): Promise<HTMLCanvasElement>;
/**

@@ -242,3 +378,3 @@ * Draws qr code symbol to canvas.

options: QRCodeRenderersOptions,
callback: (error: Error, canvas: HTMLCanvasElement) => void,
callback: (error: Error | null | undefined, canvas: HTMLCanvasElement) => void,
): void;

@@ -248,7 +384,11 @@ /**

*/
export function toCanvas(canvas: any, text: string | QRCodeSegment[], callback: (error: Error) => void): void;
export function toCanvas(
canvas: any,
text: string | QRCodeSegment[],
callback: (error: Error | null | undefined) => void,
): void;
/**
* Draws qr code symbol to node canvas.
*/
export function toCanvas(canvas: any, text: string | QRCodeSegment[], options?: QRCodeRenderersOptions): Promise<any>;
export function toCanvas(canvas: any, text: string | QRCodeSegment[], options?: QRCodeRenderersOptions): Promise<void>;
/**

@@ -261,3 +401,3 @@ * Draws qr code symbol to node canvas.

options: QRCodeRenderersOptions,
callback: (error: Error) => void,
callback: (error: Error | null | undefined) => void,
): void;

@@ -271,3 +411,3 @@

text: string | QRCodeSegment[],
callback: (error: Error, url: string) => void,
callback: (error: Error | null | undefined, url: string) => void,
): void;

@@ -289,3 +429,3 @@ /**

options: QRCodeToDataURLOptions,
callback: (error: Error, url: string) => void,
callback: (error: Error | null | undefined, url: string) => void,
): void;

@@ -296,3 +436,6 @@

*/
export function toDataURL(text: string | QRCodeSegment[], callback: (error: Error, url: string) => void): void;
export function toDataURL(
text: string | QRCodeSegment[],
callback: (error: Error | null | undefined, url: string) => void,
): void;
/**

@@ -308,3 +451,3 @@ * Returns a Data URI containing a representation of the QR Code image.

options: QRCodeToDataURLOptions,
callback: (error: Error, url: string) => void,
callback: (error: Error | null | undefined, url: string) => void,
): void;

@@ -314,8 +457,9 @@

* Returns a string representation of the QR Code.
* If choosen output format is svg it will returns a string containing xml code.
*/
export function toString(text: string | QRCodeSegment[], callback: (error: Error, string: string) => void): void;
export function toString(
text: string | QRCodeSegment[],
callback: (error: Error | null | undefined, string: string) => void,
): void;
/**
* Returns a string representation of the QR Code.
* If choosen output format is svg it will returns a string containing xml code.
*/

@@ -325,3 +469,2 @@ export function toString(text: string | QRCodeSegment[], options?: QRCodeToStringOptions): Promise<string>;

* Returns a string representation of the QR Code.
* If choosen output format is svg it will returns a string containing xml code.
*/

@@ -331,3 +474,3 @@ export function toString(

options: QRCodeToStringOptions,
callback: (error: Error, string: string) => void,
callback: (error: Error | null | undefined, string: string) => void,
): void;

@@ -337,16 +480,17 @@

* Saves QR Code to image file.
* If options.type is not specified, the format will be guessed from file extension.
* Recognized extensions are png, svg, txt.
* If `options.type` is not specified, the format will be guessed from file extension.
*/
export function toFile(path: string, text: string | QRCodeSegment[], callback: (error: Error) => void): void;
export function toFile(
path: string,
text: string | QRCodeSegment[],
callback: (error: Error | null | undefined) => void,
): void;
/**
* Saves QR Code to image file.
* If options.type is not specified, the format will be guessed from file extension.
* Recognized extensions are png, svg, txt.
* If `options.type` is not specified, the format will be guessed from file extension.
*/
export function toFile(path: string, text: string | QRCodeSegment[], options?: QRCodeToFileOptions): Promise<any>;
export function toFile(path: string, text: string | QRCodeSegment[], options?: QRCodeToFileOptions): Promise<void>;
/**
* Saves QR Code to image file.
* If options.type is not specified, the format will be guessed from file extension.
* Recognized extensions are png, svg, txt.
* If `options.type` is not specified, the format will be guessed from file extension.
*/

@@ -357,3 +501,3 @@ export function toFile(

options: QRCodeToFileOptions,
callback: (error: Error) => void,
callback: (error: Error | null | undefined) => void,
): void;

@@ -367,3 +511,3 @@

text: string | QRCodeSegment[],
callback: (error: Error) => void,
callback: (error: Error | null | undefined) => void,
): void;

@@ -377,3 +521,3 @@ /**

options?: QRCodeToFileStreamOptions,
): Promise<any>;
): Promise<void>;
/**

@@ -386,3 +530,3 @@ * Writes QR Code image to stream. Only works with png format for now.

options: QRCodeToFileStreamOptions,
callback: (error: Error) => void,
callback: (error: Error | null | undefined) => void,
): void;

@@ -393,3 +537,6 @@

*/
export function toBuffer(text: string | QRCodeSegment[], callback: (error: Error, buffer: Buffer) => void): void;
export function toBuffer(
text: string | QRCodeSegment[],
callback: (error: Error | null | undefined, buffer: Buffer) => void,
): void;
/**

@@ -405,3 +552,3 @@ * Returns a Buffer containing a representation of the QR Code image. Only works with png format.

options: QRCodeToBufferOptions,
callback: (error: Error, buffer: Buffer) => void,
callback: (error: Error | null | undefined, buffer: Buffer) => void,
): void;
{
"name": "@types/qrcode",
"version": "1.4.3",
"version": "1.5.0",
"description": "TypeScript definitions for qrcode",

@@ -22,2 +22,7 @@ "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/qrcode",

"githubUsername": "Marchelune"
},
{
"name": "BendingBender",
"url": "https://github.com/BendingBender",
"githubUsername": "BendingBender"
}

@@ -36,4 +41,4 @@ ],

},
"typesPublisherContentHash": "2695799b86e6e0c53b25dee11373065eb8819d4923e223407482d5bc69a9baac",
"typesPublisherContentHash": "5842f76f0969762cb2555454982dcb9f7cad6cafb29039b98e95a58880308fab",
"typeScriptVersion": "4.0"
}

@@ -11,3 +11,3 @@ # Installation

### Additional Details
* Last updated: Tue, 16 Aug 2022 12:32:38 GMT
* Last updated: Fri, 19 Aug 2022 06:32:32 GMT
* Dependencies: [@types/node](https://npmjs.com/package/@types/node)

@@ -17,2 +17,2 @@ * Global values: none

# Credits
These definitions were written by [York Yao](https://github.com/plantain-00), [Michael Nahkies](https://github.com/mnahkies), and [Rémi Sormain](https://github.com/Marchelune).
These definitions were written by [York Yao](https://github.com/plantain-00), [Michael Nahkies](https://github.com/mnahkies), [Rémi Sormain](https://github.com/Marchelune), and [BendingBender](https://github.com/BendingBender).
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc