import { WasmLoadResult, WasmModuleOptions, EncryptionResult } from './wasm.types';
export interface Wasm {
    /**
     * Load the WASM module with the given options
     */
    loadModule(options: WasmModuleOptions): Promise<WasmLoadResult>;
    /**
     * Check if WASM models are loaded
     */
    checkIfModelsLoaded(isEnroll: boolean): Promise<boolean>;
    /**
     * Face enrollment
     */
    enroll(imageData: ImageData, config: string, callback: any): Promise<any>;
    /**
     * Face prediction/verification
     */
    predict(images: ImageData[], isSimd: boolean, config: string, callback: any): Promise<any>;
    /**
     * Age estimation
     */
    estimateAge(images: ImageData[], isSimd: boolean, config: string, callback: any): Promise<{
        result: number;
        imageData: Uint8ClampedArray | null;
        height: number | null;
        width: number | null;
    }>;
    /**
     * Compare face embeddings
     */
    compareEmbeddings(embeddingsA: string, embeddingsB: string, config: string, callback: any): Promise<any>;
    /**
     * Scan front document
     */
    scanFrontDocument(imageData: ImageData, isSimd: boolean, config: string, callback: any): Promise<any>;
    /**
     * Scan back document
     */
    scanBackDocument(imageData: ImageData, isSimd: boolean, config: string, callback: any): Promise<any>;
    /**
     * Document OCR
     */
    documentOcr(imageData: ImageData | string, config: string, callback: any): Promise<any>;
    /**
     * PKI encryption
     */
    pkiEncrypt(payload: any): Promise<EncryptionResult>;
}
