code-craft-studio
Version:
A comprehensive QR code and barcode scanning/generation library for React. Works with or without Capacitor. Supports 22+ QR data types and 14+ barcode formats (EAN, UPC, Code 128, etc.), with customizable designs, analytics, and React components. Provider
51 lines (50 loc) • 2.13 kB
TypeScript
import { WebPlugin } from '@capacitor/core';
import type { QRCodeStudioPlugin, PermissionStatus, ScanOptions, GenerateOptions, QRCodeResult, SaveOptions, SaveResult, HistoryOptions, HistoryResult, AnalyticsOptions, AnalyticsResult, ScanResult, ImageScanOptions, BarcodeGenerateOptions, BarcodeResult } from './definitions';
import { BarcodeFormat } from './definitions';
export declare class QRCodeStudioWeb extends WebPlugin implements QRCodeStudioPlugin {
private scanner;
private barcodeReader;
private videoElement;
private scanListeners;
private errorListeners;
private torchListeners;
private history;
private currentStream;
private scanInterval;
checkPermissions(): Promise<PermissionStatus>;
requestPermissions(): Promise<PermissionStatus>;
startScan(options?: ScanOptions): Promise<void>;
stopScan(): Promise<void>;
generate(options: GenerateOptions): Promise<QRCodeResult>;
saveQRCode(options: SaveOptions): Promise<SaveResult>;
getHistory(options?: HistoryOptions): Promise<HistoryResult>;
clearHistory(): Promise<void>;
getAnalytics(options: AnalyticsOptions): Promise<AnalyticsResult>;
scan(options?: ScanOptions): Promise<ScanResult>;
readBarcodesFromImage(options: ImageScanOptions): Promise<ScanResult[]>;
getSupportedFormats(): Promise<BarcodeFormat[]>;
enableTorch(): Promise<void>;
disableTorch(): Promise<void>;
isTorchAvailable(): Promise<{
available: boolean;
}>;
setZoomRatio(options: {
ratio: number;
}): Promise<void>;
generateBarcode(options: BarcodeGenerateOptions): Promise<BarcodeResult>;
addListener(eventName: string, listenerFunc: any): Promise<any>;
removeAllListeners(): Promise<void>;
private detectQRType;
private parseQRData;
private formatQRData;
private generateVCard;
private generateVEvent;
private generateId;
private saveHistory;
private loadHistory;
private generateMockTimeDistribution;
private mapToZXingFormats;
private mapFromZXingFormat;
private mapToJSBarcodeFormat;
private getProductInfo;
}