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
47 lines (46 loc) • 1.73 kB
TypeScript
import type { PlatformAdapter, PlatformCapabilities, StorageAdapter } from '../types';
import type { QRCodeData, QRCodeOptions, ScanResult, BarcodeFormat, BarcodeOptions, HistoryItem, AnalyticsData, ValidationResult, ExportOptions } from '../../definitions';
export declare class WebPlatformAdapter implements PlatformAdapter {
readonly name = "web";
readonly capabilities: PlatformCapabilities;
readonly storage: StorageAdapter;
private qrScanner;
private barcodeReader;
private currentStream;
constructor(storage?: StorageAdapter);
scanQRCode(_options?: {
formats?: string[];
}): Promise<ScanResult>;
generateQRCode(data: QRCodeData, options?: QRCodeOptions): Promise<{
dataUrl: string;
}>;
validateQRData(data: QRCodeData): Promise<ValidationResult>;
scanBarcode(_options?: {
formats?: BarcodeFormat[];
}): Promise<ScanResult>;
generateBarcode(data: string, format: BarcodeFormat, options?: BarcodeOptions): Promise<{
dataUrl: string;
}>;
validateBarcode(data: string, format: BarcodeFormat): Promise<ValidationResult>;
saveToHistory(item: HistoryItem): Promise<void>;
getHistory(options?: {
limit?: number;
type?: string;
}): Promise<HistoryItem[]>;
clearHistory(): Promise<void>;
getAnalytics(): Promise<AnalyticsData>;
exportCode(dataUrl: string, options: ExportOptions): Promise<{
filePath?: string;
blob?: Blob;
}>;
checkPermissions(): Promise<{
camera?: string;
storage?: string;
}>;
requestPermissions(): Promise<{
camera?: string;
storage?: string;
}>;
private stopScanning;
private mapBarcodeFormat;
}