/** * ZBar C/C++ WASM decode — primary live camera engine for retail EAN/UPC/Code128 + QR. * Uses @undecaf/zbar-wasm (same engine as the BarcodeDetector polyfill). * * Apps must call {@link setZbarWasmUrl} once at boot with a same-origin * `zbar.wasm?url` (Vite) so CSP + bundlers resolve the binary. */ import { ZBarScanner } from '@undecaf/zbar-wasm'; import type { BarcodeScannerFormatProfile } from './scannerFormats.js'; export interface ZbarDecodeFrameOptions { /** When true, decode full frame only (every other ticks — G9 CPU bound). */ readonly quickOnly?: boolean; } /** * CSP-safe same-origin URL for `zbar.wasm`. Call once before any scan session. */ export declare function setZbarWasmUrl(url: string): void; export declare function isZbarWasmUrlConfigured(): boolean; /** Test-only — reset boot flag between Jest cases. */ export declare function resetZbarWasmUrlForTests(): void; /** * Build a ZBar scanner enabled only for the active format profile. * Dense X/Y scan + inverted retry for close / low-contrast retail labels. */ export declare function createConfiguredZbarScanner(formatProfile?: BarcodeScannerFormatProfile): Promise; /** * Multi-pass digital crops → ZBar `scanImageData`. * Returns first non-empty payload or null. */ export declare function decodeVideoFrameWithZbar(video: HTMLVideoElement, canvas: HTMLCanvasElement, scanner: ZBarScanner, options?: ZbarDecodeFrameOptions): Promise; //# sourceMappingURL=zbarWasmEngine.d.ts.map