import type { Provider } from '@ethersproject/providers'; import type { BigNumber, Signature } from 'ethers'; import { Wallet } from 'ethers'; import type { Address } from 'hardhat-deploy/types'; import type { ERC20PermitUpgradeable } from '@/typechain-types'; interface PermitArgs { owner: Address; chainId: number; nonce: BigNumber; name: string; version?: string; verifyingContract: ERC20PermitUpgradeable; spender: Address; value: BigNumber; deadline?: BigNumber; } export declare class Eip2612Signer extends Wallet { static eip712Domain: { Permit: { name: string; type: string; }[]; }; connect(provider: Provider): Eip2612Signer; permit({ verifyingContract, spender, value, version, deadline, }: Omit): Promise; private _signPermitData; } export {};