Merge pull request #234 from danmana/typescript

Update typings to match v0.12.1
pull/344/head
Eric Blade 7 years ago committed by GitHub
commit 42b5382510
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1,6 +1,6 @@
// Type definitions for QuaggaJS v2015.05.20 Project:
// http://serratus.github.io/quaggaJS/ Definitions by: Cam Birch, Peter
// Horwood aka Madman Pierre
// Type definitions for QuaggaJS v0.12.1 (2017-10-19)
// Project: http://serratus.github.io/quaggaJS/
// Definitions by: Cam Birch, Peter Horwood aka Madman Pierre, Dan Manastireanu <https://github.com/danmana>
declare var Quagga: QuaggaJSStatic;
export default Quagga;
@ -72,7 +72,7 @@ interface QuaggaJSStatic {
ResultCollector: QuaggaJSResultCollector;
registerResultCollector(resultCollector: QuaggaJSResultCollector): void;
setReaders(readers: any): void;
setReaders(readers: (QuaggaJSReaderConfig | string)[]): void;
/**
* In contrast to the calls described
@ -108,6 +108,24 @@ interface QuaggaJSStatic {
overlay: HTMLCanvasElement
}
};
CameraAccess: QuaggaJSCameraAccess;
}
/**
* Used for accessing information about the active stream track and available video devices.
*/
interface QuaggaJSCameraAccess {
request(video: HTMLVideoElement, videoConstraints: QuaggaJSConstraints): Promise<void>;
release(): void;
enumerateVideoDevices(): Promise<MediaDeviceInfo[]>;
getActiveStreamLabel(): string;
getActiveTrack(): MediaStreamTrack;
}
/**
@ -291,7 +309,9 @@ interface QuaggaJSConfigObject {
* Ex: '/test/fixtures/code_128/image-001.jpg'
* or: 'data:image/jpg;base64,' + data
*/
src?: string; inputStream?: {
src?: string;
inputStream?: {
/**
* @default "Live"
*/
@ -301,33 +321,10 @@ interface QuaggaJSConfigObject {
* @default "LiveStream"
*/
type?: string;
target?: HTMLElement,
constraints?: {
/**
* @default 640
*/
width?: number;
/**
* @default 480
*/
height?: number;
/**
* In cases where height/width does not suffice
*/
aspectRatio?: number
/**
* @default "environment"
*/
facingMode?: string;
/**
* Explicitly set the camera to the user's choice
*/
deviceId?: string
};
constraints?: QuaggaJSConstraints;
/**
* defines rectangle of the detection/localization area. Useful when you
@ -380,11 +377,19 @@ interface QuaggaJSConfigObject {
*/
numOfWorkers?: number;
/**
* This top-level property controls the scan-frequency of the video-stream.
* Its optional and defines the maximum number of scans per second.
* This renders useful for cases where the scan-session is long-running and
* resources such as CPU power are of concern.
*/
frequency?: number;
decoder?: {
/**
* @default [ "code_128_reader" ]
*/
readers?: string[];
readers?: (QuaggaJSReaderConfig | string)[];
debug?: {
/**
@ -406,7 +411,15 @@ interface QuaggaJSConfigObject {
* @default false
*/
showPattern?: boolean;
}
};
/**
* The multiple property tells the decoder if it should continue decoding after finding a valid barcode.
* If multiple is set to true, the results will be returned as an array of result objects.
* Each object in the array will have a box, and may have a codeResult
* depending on the success of decoding the individual box.
*/
multiple?: boolean;
};
locator?: {
@ -476,3 +489,40 @@ interface QuaggaJSConfigObject {
}
};
}
interface QuaggaJSConstraints {
/**
* @default 640
*/
width?: number;
/**
* @default 480
*/
height?: number;
/**
* In cases where height/width does not suffice
*/
aspectRatio?: number
/**
* @default "environment"
*/
facingMode?: string;
/**
* Explicitly set the camera to the user's choice
*/
deviceId?: string
}
/**
* Used for extending a reader with supplements (ex: EAN-2, EAN-5)
*/
interface QuaggaJSReaderConfig {
format: string;
config: {
supplements: string[];
}
}

Loading…
Cancel
Save