import { Symbology } from "../Barcode";
import type { BarcodeCaptureSettings } from "../index";
import type { ListenerFn } from "eventemitter3";
import { Logger } from "scandit-web-datacapture-core";
declare type EventName = "blurryTablesUpdate";
export declare class BlurryRecognitionPreloader {
    private static readonly writableDataPath;
    private static readonly fsObjectStoreName;
    private static readonly defaultBlurryTableFiles;
    private static readonly highEndBlurryTableFiles;
    private static readonly availableBlurryRecognitionSymbologies;
    private readonly eventEmitter;
    private readonly licenseKey;
    private readonly preload;
    private readonly libraryLocation;
    private readonly logLevel;
    private queuedBlurryRecognitionSymbologies;
    private readyBlurryRecognitionSymbologies;
    private dataCaptureWorker;
    private context;
    private constructor();
    static create(options: {
        licenseKey: string;
        libraryLocation: string;
        logLevel: Logger.Level;
    }): Promise<BlurryRecognitionPreloader>;
    private static workerIndexedDBSupportTestFunction;
    prepareBlurryTables(highEndBlurryRecognition: boolean): Promise<void>;
    on(eventName: EventName, listener: ListenerFn): void;
    updateBlurryRecognitionPriority(scanSettings: BarcodeCaptureSettings): void;
    isBlurryRecognitionAvailable(scanSettings: BarcodeCaptureSettings): boolean;
    getEnabledSymbologies(scanSettings: BarcodeCaptureSettings): Symbology[];
    private createNextBlurryTableSymbology;
    private checkBlurryTablesAlreadyAvailable;
    private dataCaptureWorkerOnMessage;
}
export {};
