import type { DetectedBarcode, BarcodeFormat } from 'barcode-detector/pure';
import { type PropType } from 'vue';
declare function __VLS_template(): {
    default?(_: {}): any;
};
declare const __VLS_component: import("vue").DefineComponent<{
    /**
     * Passes an object with various camera configuration options.
     */
    constraints: {
        type: PropType<MediaTrackConstraints>;
        default(): MediaTrackConstraints;
    };
    /**
     * Passes formats that will be recognized during detection.
     */
    formats: {
        type: PropType<BarcodeFormat[]>;
        default: () => BarcodeFormat[];
    };
    /**
     * Setting this prop to true freezes the camera. Set to false to resume.
     */
    paused: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Enables or disables camera torch during detection.
     */
    torch: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Defines callback function that will be responsible for drawing detected code tracking rectangle
     */
    track: {
        type: PropType<(detectedCodes: DetectedBarcode[], ctx: CanvasRenderingContext2D | null) => void>;
    };
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    detect: (detectedCodes: DetectedBarcode[]) => void;
    "camera-on": (capabilities: Partial<MediaTrackCapabilities>) => void;
    "camera-off": () => void;
    error: (error: EmmitedError) => void;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * Passes an object with various camera configuration options.
     */
    constraints: {
        type: PropType<MediaTrackConstraints>;
        default(): MediaTrackConstraints;
    };
    /**
     * Passes formats that will be recognized during detection.
     */
    formats: {
        type: PropType<BarcodeFormat[]>;
        default: () => BarcodeFormat[];
    };
    /**
     * Setting this prop to true freezes the camera. Set to false to resume.
     */
    paused: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Enables or disables camera torch during detection.
     */
    torch: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Defines callback function that will be responsible for drawing detected code tracking rectangle
     */
    track: {
        type: PropType<(detectedCodes: DetectedBarcode[], ctx: CanvasRenderingContext2D | null) => void>;
    };
}>> & {
    onError?: (error: EmmitedError) => any;
    onDetect?: (detectedCodes: DetectedBarcode[]) => any;
    "onCamera-on"?: (capabilities: Partial<MediaTrackCapabilities>) => any;
    "onCamera-off"?: () => any;
}, {
    formats: ("aztec" | "code_128" | "code_39" | "code_93" | "codabar" | "databar" | "databar_expanded" | "data_matrix" | "dx_film_edge" | "ean_13" | "ean_8" | "itf" | "maxi_code" | "micro_qr_code" | "pdf417" | "qr_code" | "rm_qr_code" | "upc_a" | "upc_e" | "linear_codes" | "matrix_codes" | "unknown")[];
    torch: boolean;
    constraints: MediaTrackConstraints;
    paused: boolean;
}, {}>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
