import * as ethers from 'ethers'; import { TxEthSignature, EthSignerType, PubKeyHash, Address, Ratio } from './types'; /** * Wrapper around `ethers.Signer` which provides convenient methods to get and sign messages required for zkSync. */ export declare class EthMessageSigner { private ethSigner; private ethSignerType?; constructor(ethSigner: ethers.Signer, ethSignerType?: EthSignerType); getEthMessageSignature(message: ethers.utils.BytesLike): Promise; getTransferEthSignMessage(transfer: { stringAmount: string; stringToken: string; stringFee: string; to: string; nonce: number; accountId: number; }): string; ethSignTransfer(transfer: { stringAmount: string; stringToken: string; stringFee: string; to: string; nonce: number; accountId: number; }): Promise; ethSignSwap(swap: { fee: string; feeToken: string; nonce: number; }): Promise; ethSignOrder(order: { tokenSell: string; tokenBuy: string; recipient: string; amount: string; ratio: Ratio; nonce: number; }): Promise; getSwapEthSignMessagePart(swap: { fee: string; feeToken: string; }): string; getSwapEthSignMessage(swap: { fee: string; feeToken: string; nonce: number; }): string; getOrderEthSignMessage(order: { tokenSell: string; tokenBuy: string; recipient: string; amount: string; ratio: Ratio; nonce: number; }): string; ethSignForcedExit(forcedExit: { stringToken: string; stringFee: string; target: string; nonce: number; }): Promise; getMintNFTEthMessagePart(mintNFT: { stringFeeToken: string; stringFee: string; recipient: string; contentHash: string; }): string; getMintNFTEthSignMessage(mintNFT: { stringFeeToken: string; stringFee: string; recipient: string; contentHash: string; nonce: number; }): string; getWithdrawNFTEthMessagePart(withdrawNFT: { token: number; to: string; stringFee: string; stringFeeToken: string; }): string; getWithdrawNFTEthSignMessage(withdrawNFT: { token: number; to: string; stringFee: string; stringFeeToken: string; nonce: number; }): string; getWithdrawEthSignMessage(withdraw: { stringAmount: string; stringToken: string; stringFee: string; ethAddress: string; nonce: number; accountId: number; }): string; getForcedExitEthSignMessage(forcedExit: { stringToken: string; stringFee: string; target: string; nonce: number; }): string; getTransferEthMessagePart(tx: { stringAmount: string; stringToken: string; stringFee: string; ethAddress?: string; to?: string; }): string; getWithdrawEthMessagePart(tx: { stringAmount: string; stringToken: string; stringFee: string; ethAddress?: string; to?: string; }): string; getChangePubKeyEthMessagePart(changePubKey: { pubKeyHash: PubKeyHash; stringToken: string; stringFee: string; }): string; getForcedExitEthMessagePart(forcedExit: { stringToken: string; stringFee: string; target: string; }): string; ethSignMintNFT(mintNFT: { stringFeeToken: string; stringFee: string; recipient: string; contentHash: string; nonce: number; }): Promise; ethSignWithdrawNFT(withdrawNFT: { token: number; to: string; stringFee: string; stringFeeToken: string; nonce: number; }): Promise; ethSignWithdraw(withdraw: { stringAmount: string; stringToken: string; stringFee: string; ethAddress: string; nonce: number; accountId: number; }): Promise; getChangePubKeyEthSignMessage(changePubKey: { pubKeyHash: PubKeyHash; nonce: number; accountId: number; }): Uint8Array; ethSignChangePubKey(changePubKey: { pubKeyHash: PubKeyHash; nonce: number; accountId: number; }): Promise; ethSignRegisterFactoryMessage(factoryAddress: Address, accountId: number, accountAddress: Address): Promise; }