import { Address } from "./address"; export declare class Message { /** * Actual message being signed. */ data: Uint8Array; /** * The message signature. */ signature?: Uint8Array; /** * Address of the wallet that performed the signing operation. */ address?: Address; /** * Number representing the message version. */ version: number; /** * The library or tool that was used to sign the message. */ signer: string; constructor(options: { data: Uint8Array; signature?: Uint8Array; address?: Address; version?: number; signer?: string; }); } export declare class MessageComputer { constructor(); computeBytesForSigning(message: Message): Uint8Array; /** * returns the result of `computeBytesForSigning` */ computeBytesForVerifying(message: Message): Uint8Array; packMessage(message: Message): { message: string; signature: string; address: string; version: number; signer: string; }; /** * packedMessage should be the one obtained from calling `packMessage()` * should treat both 'legacy message' and current message */ unpackMessage(packedMessage: { message: string; signature?: string; address?: string; version?: number; signer?: string; }): Message; private trimHexPrefix; }