import { Message } from "./Message.js";
import Signature from "./Signature.js";
export type PublicKeyForm = "compressed" | "uncompressed";
export declare class PublicKey {
    #private;
    private constructor();
    static fromBytes(bytes: Uint8Array, form: PublicKeyForm): PublicKey;
    static fromHex(hex: string, form: PublicKeyForm): PublicKey;
    verify(message: Message, signature: Signature): Promise<boolean>;
    toBytes(form: PublicKeyForm): Uint8Array;
    toHex(form: PublicKeyForm): string;
    equals(other: PublicKey): boolean;
}
export default PublicKey;
