scandit-sdk
Version:
Scandit Barcode Scanner SDK for the Web
85 lines (84 loc) • 2.53 kB
TypeScript
import { ImageSettings } from "../imageSettings";
import { Parser } from "../parser";
/**
* @hidden
*
* Defined here as we cannot use too recent typescript type definitions...
*/
declare namespace WebAssembly {
interface Instance {
readonly exports: any;
}
interface WebAssemblyInstantiatedSource {
instance: Instance;
module: {};
}
}
/**
* @hidden
*/
export declare type Module = {
HEAPU8: Uint8Array;
lengthBytesUTF8(str: string): number;
UTF8ToString(ptr: number): string;
stringToUTF8(str: string, outPtr: number, maxBytesToWrite: number): void;
_malloc(size: number): number;
_free(ptr: number): void;
_create_context(ptr: number, debug: boolean): void;
_scanner_settings_new_from_json(ptr: number, blurryDecodingEnabled: boolean, matrixScanEnabled: boolean, highQualitySingleFrameMode: boolean, gpuEnabled: boolean): number;
_scanner_image_settings_new(width: number, height: number, channels: number): void;
_scanner_session_clear(): void;
_can_hide_logo(): number;
_scanner_scan(ptr: number): number;
_parser_parse_string(parserType: number, ptr: number, stringDataLength: number, ptr2: number): number;
canvas(): HTMLCanvasElement;
instantiateWasm(importObject: object, successCallback: (instance: WebAssembly.Instance) => void): void;
preRun(): void;
onRuntimeInitialized(): void;
callMain(): void;
};
/**
* @hidden
*/
declare type ScanWorkUnit = {
requestId: number;
data: Uint8ClampedArray;
highQualitySingleFrameMode: boolean;
};
/**
* @hidden
*/
declare type ParseWorkUnit = {
requestId: number;
dataFormat: Parser.DataFormat;
dataString: string;
options: string;
};
/**
* @hidden
*/
export declare type Engine = {
loadLibrary(deviceId: string, libraryLocation: string, locationPath: string, deviceModelName: string | undefined, uaBrowserName: string | undefined): Promise<void>;
createContext(newLicenseKey: string): void;
setSettings(newSettings: string): void;
setImageSettings(newImageSettings: ImageSettings): void;
workOnScanQueue(): void;
workOnParseQueue(): void;
addScanWorkUnit(scanWorkUnit: ScanWorkUnit): void;
addParseWorkUnit(parseWorkUnit: ParseWorkUnit): void;
clearSession(): void;
};
/**
* @hidden
* @returns Engine
*/
export declare function engine(): Engine;
/**
* @hidden
*/
export declare function engineWorkerFunction(): void;
/**
* @hidden
*/
export declare const engineWorkerBlob: Blob;
export {};