import { type WalletClient } from 'viem'; import { type UseWalletClientReturnType } from 'wagmi'; import { Eip2612Props, PermitSignature, SignPermitProps } from '../constants/permit'; export declare function usePermit({ contractAddress, chainId, walletClient, ownerAddress, spenderAddress, permitVersion, }: UsePermitProps): { signPermitDai: ((props: PartialBy & { walletClient?: WalletClient; }) => Promise) | undefined; signPermit: ((props: PartialBy & { walletClient?: WalletClient; }) => Promise) | undefined; signature: PermitSignature | undefined; nonce: bigint | undefined; error: Error | undefined; }; export type UsePermitProps = Partial & { walletClient?: UseWalletClientReturnType['data'] | null; }; type PartialBy = Omit & Partial>; export {};