UNPKG

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

50 lines (49 loc) 1.87 kB
import type { PlatformAdapter, PlatformCapabilities } from '../platforms'; import type { QRCodeData, QRCodeOptions, ScanResult, BarcodeFormat, BarcodeOptions, HistoryItem, AnalyticsData, ValidationResult, ExportOptions } from '../definitions'; export interface UseCodeCraftStudioOptions { autoInitialize?: boolean; onError?: (error: Error) => void; } export interface UseCodeCraftStudioReturn { isReady: boolean; platform: PlatformAdapter | null; capabilities: PlatformCapabilities | null; isCapacitor: boolean; isWeb: boolean; isNative: boolean; 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; }>; error: Error | null; } export declare function useCodeCraftStudio(options?: UseCodeCraftStudioOptions): UseCodeCraftStudioReturn;