export declare enum Html5QrcodeSupportedFormats {
QR_CODE = 0,
AZTEC = 1,
CODABAR = 2,
CODE_39 = 3,
CODE_93 = 4,
CODE_128 = 5,
DATA_MATRIX = 6,
MAXICODE = 7,
ITF = 8,
EAN_13 = 9,
EAN_8 = 10,
PDF_417 = 11,
RSS_14 = 12,
RSS_EXPANDED = 13,
UPC_A = 14,
UPC_E = 15,
UPC_EAN_EXTENSION = 16
}
export declare enum DecodedTextType {
UNKNOWN = 0,
URL = 1
}
export declare function isValidHtml5QrcodeSupportedFormats(format: any): boolean;
export declare enum Html5QrcodeScanType {
SCAN_TYPE_CAMERA = 0,
SCAN_TYPE_FILE = 1
}
export declare class Html5QrcodeConstants {
static GITHUB_PROJECT_URL: string;
static SCAN_DEFAULT_FPS: number;
static DEFAULT_DISABLE_FLIP: boolean;
static DEFAULT_REMEMBER_LAST_CAMERA_USED: boolean;
static DEFAULT_SUPPORTED_SCAN_TYPE: Html5QrcodeScanType[];
}
export interface QrDimensions {
width: number;
height: number;
}
export type QrDimensionFunction = (viewfinderWidth: number, viewfinderHeight: number) => QrDimensions;
export interface QrBounds extends QrDimensions {
x: number;
y: number;
}
export declare class QrcodeResultFormat {
readonly format: Html5QrcodeSupportedFormats;
readonly formatName: string;
private constructor();
toString(): string;
static create(format: Html5QrcodeSupportedFormats): QrcodeResultFormat;
}
export interface QrcodeResultDebugData {
decoderName?: string;
}
export interface QrcodeResult {
text: string;
format?: QrcodeResultFormat;
bounds?: QrBounds;
decodedTextType?: DecodedTextType;
debugData?: QrcodeResultDebugData;
}
export interface Html5QrcodeResult {
decodedText: string;
result: QrcodeResult;
}
export declare class Html5QrcodeResultFactory {
static createFromText(decodedText: string): Html5QrcodeResult;
static createFromQrcodeResult(qrcodeResult: QrcodeResult): Html5QrcodeResult;
}
export declare enum Html5QrcodeErrorTypes {
UNKWOWN_ERROR = 0,
IMPLEMENTATION_ERROR = 1,
NO_CODE_FOUND_ERROR = 2
}
export interface Html5QrcodeError {
errorMessage: string;
type: Html5QrcodeErrorTypes;
}
export declare class Html5QrcodeErrorFactory {
static createFrom(error: any): Html5QrcodeError;
}
export type QrcodeSuccessCallback = (decodedText: string, result: Html5QrcodeResult) => void;
export type QrcodeErrorCallback = (errorMessage: string, error: Html5QrcodeError) => void;
export interface QrcodeDecoderAsync {
decodeAsync(canvas: HTMLCanvasElement): Promise;
}
export interface RobustQrcodeDecoderAsync extends QrcodeDecoderAsync {
decodeRobustlyAsync(canvas: HTMLCanvasElement): Promise;
}
export interface Logger {
log(message: string): void;
warn(message: string): void;
logError(message: string, isExperimental?: boolean): void;
logErrors(errors: Array): void;
}
export declare class BaseLoggger implements Logger {
private verbose;
constructor(verbose: boolean);
log(message: string): void;
warn(message: string): void;
logError(message: string, isExperimental?: boolean): void;
logErrors(errors: Array): void;
}
export declare function isNullOrUndefined(obj?: any): boolean;
export declare function clip(value: number, minValue: number, maxValue: number): number;