export declare abstract class CryptoClient {
    abstract signMessage(message: string, keypair: {
        publicKey?: string;
        privateKey: string;
    }): Promise<string>;
    abstract verifyMessage(message: string, signature: string, publicKey: string): Promise<boolean>;
    encryptAES(payload: string, privateKey: string): Promise<string>;
    decryptAES(encryptedPayload: string, privateKey: string): Promise<string>;
    encryptAsymmetric(payload: string, publicKey: string): Promise<string>;
    decryptAsymmetric(encryptedPayload: string, keypair: {
        publicKey?: string;
        privateKey: string;
    }): Promise<string>;
    recoverPublicKeyFromSignature(): Promise<void>;
}
