import { DataCaptureLoader as CoreDataCaptureLoader, DataCaptureLoaderOptions } from "scandit-web-datacapture-core";
import { AnyDataCaptureActionMessage, DataCaptureActionMessageKey, DataCaptureWorker } from "./dataCaptureWorker+related";
declare type CommandAndPayload<A, C> = A extends {
    command: C;
} ? A : never;
declare type WorkerCommandPayload<C> = Omit<CommandAndPayload<AnyDataCaptureActionMessage, C>, "command" | "id">;
export declare class DataCaptureLoader extends CoreDataCaptureLoader {
    protected _dataCaptureWorker?: DataCaptureWorker;
    static create(options: DataCaptureLoaderOptions): Promise<DataCaptureLoader>;
    get dataCaptureWorker(): DataCaptureWorker;
    workerCommand<C extends DataCaptureActionMessageKey>(command: C, payload: WorkerCommandPayload<C>, transferables?: Transferable[]): Promise<any>;
}
export {};
