import type { PlatformAdapter, PlatformCapabilities, StorageAdapter } from '../types';
import type { QRCodeData, QRCodeOptions, ScanResult, BarcodeFormat, BarcodeOptions, HistoryItem, AnalyticsData, ValidationResult, ExportOptions } from '../../definitions';
export declare class CapacitorPlatformAdapter implements PlatformAdapter {
    readonly name = "capacitor";
    readonly capabilities: PlatformCapabilities;
    readonly storage: StorageAdapter;
    private webAdapter;
    private plugin;
    private capacitorCore;
    constructor(storage?: StorageAdapter);
    private loadCapacitorPlugin;
    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;
    }>;
}
