import { type App } from 'vue'; import { type ComponentInstance } from '../utils'; import type { QrScannerOptions } from './types'; declare const QrScanner: { (options?: QrScannerOptions): ComponentInstance | undefined; Component: import("../utils").WithInstall; default: string; }; tip: { type: import("vue").PropType; default: string; }; processingText: { type: import("vue").PropType; default: string; }; startupTimeout: { type: (NumberConstructor | StringConstructor)[]; default: number; }; startupTexts: import("vue").PropType>>; formats: { type: import("vue").PropType; default: () => never[]; } & { default: () => import("./types").QrScannerFormat[]; }; facingMode: { type: import("vue").PropType<"environment" | "user">; default: "environment" | "user"; }; showAlbum: { type: BooleanConstructor; default: true; }; showTorch: { type: BooleanConstructor; default: true; }; showSwitchCamera: { type: BooleanConstructor; default: true; }; closeAfterScan: { type: BooleanConstructor; default: true; }; scanInterval: { type: (NumberConstructor | StringConstructor)[]; default: number; }; duplicateInterval: { type: (NumberConstructor | StringConstructor)[]; default: number; }; maxImageSize: { type: (NumberConstructor | StringConstructor)[]; default: number; }; paused: BooleanConstructor; wasmUrl: StringConstructor; beforeConfirm: import("vue").PropType; nativeScan: import("vue").PropType; teleport: { type: import("vue").PropType; default: string; }; zIndex: (NumberConstructor | StringConstructor)[]; closeOnPopstate: { type: BooleanConstructor; default: true; }; }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "error" | "closed" | "update:show" | "cancel" | "scan" | "ready" | "stageChange")[], "close" | "error" | "closed" | "update:show" | "cancel" | "scan" | "ready" | "stageChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly; default: string; }; tip: { type: import("vue").PropType; default: string; }; processingText: { type: import("vue").PropType; default: string; }; startupTimeout: { type: (NumberConstructor | StringConstructor)[]; default: number; }; startupTexts: import("vue").PropType>>; formats: { type: import("vue").PropType; default: () => never[]; } & { default: () => import("./types").QrScannerFormat[]; }; facingMode: { type: import("vue").PropType<"environment" | "user">; default: "environment" | "user"; }; showAlbum: { type: BooleanConstructor; default: true; }; showTorch: { type: BooleanConstructor; default: true; }; showSwitchCamera: { type: BooleanConstructor; default: true; }; closeAfterScan: { type: BooleanConstructor; default: true; }; scanInterval: { type: (NumberConstructor | StringConstructor)[]; default: number; }; duplicateInterval: { type: (NumberConstructor | StringConstructor)[]; default: number; }; maxImageSize: { type: (NumberConstructor | StringConstructor)[]; default: number; }; paused: BooleanConstructor; wasmUrl: StringConstructor; beforeConfirm: import("vue").PropType; nativeScan: import("vue").PropType; teleport: { type: import("vue").PropType; default: string; }; zIndex: (NumberConstructor | StringConstructor)[]; closeOnPopstate: { type: BooleanConstructor; default: true; }; }>> & { onError?: ((...args: any[]) => any) | undefined; onClose?: ((...args: any[]) => any) | undefined; onClosed?: ((...args: any[]) => any) | undefined; "onUpdate:show"?: ((...args: any[]) => any) | undefined; onCancel?: ((...args: any[]) => any) | undefined; onScan?: ((...args: any[]) => any) | undefined; onReady?: ((...args: any[]) => any) | undefined; onStageChange?: ((...args: any[]) => any) | undefined; }, { title: string; show: boolean; paused: boolean; teleport: string | import("vue").RendererElement | null | undefined; closeOnPopstate: boolean; tip: string; processingText: string; startupTimeout: string | number; formats: import("./types").QrScannerFormat[]; facingMode: "environment" | "user"; showAlbum: boolean; showTorch: boolean; showSwitchCamera: boolean; closeAfterScan: boolean; scanInterval: string | number; duplicateInterval: string | number; maxImageSize: string | number; }>>; install(app: App): App; }; export { QrScanner };