export declare function generateKeyPair(): {
    privateKey: PrivateKey;
    publicKey: PublicKey;
};
export declare class PrivateKey {
    private readonly ed25519PrivateKey;
    private constructor();
    static generate(): PrivateKey;
    getPublicKey(): PublicKey;
    serialize(): string;
    static deserialize(serialized: string): PrivateKey;
    sign(useCaseByte: Uint8Array, data: Uint8Array): Uint8Array;
    agree(otherKey: PublicKey): Uint8Array;
}
export declare class PublicKey {
    private readonly ed25519PublicKey;
    constructor(ed25519PublicKey: Uint8Array);
    serialize(): string;
    static deserialize(serialized: string): PublicKey;
    getEd25519PublicKeyBytes(): Uint8Array;
    getX25519PublicKeyBytes(): Uint8Array;
    verify(signature: Uint8Array, useCaseByte: Uint8Array, data: Uint8Array): boolean;
    equals(otherKey: PublicKey): boolean;
}
//# sourceMappingURL=keys.d.ts.map