import { HexString, TxnBuilderTypes } from "aptos"; import { BCS } from "aptos"; import { Transaction, TypeMessage } from "./Transaction"; declare type MayPromise = T | Promise; export declare type SigData = [ signing: TxnBuilderTypes.SigningMessage, signature: TxnBuilderTypes.Ed25519Signature ]; export interface Account { address(): HexString; publicKey(): HexString; publicKeyBytes(): BCS.Bytes; sign(txn: Transaction | TypeMessage): MayPromise; getSigData(txn: Transaction | TypeMessage): MayPromise; } export declare abstract class Account { readonly _address: string; readonly _publicKey: string; abstract walletSignTxnImpl(txn: Transaction): Promise; abstract walletSignTypeMessageImpl(txn: TypeMessage): Promise; constructor(_address: string, _publicKey: string); walletSignTxn(txn: Transaction): Promise; walletSignTypeMessage(message: TypeMessage): Promise; } export {};