import { Signer } from "ethers"; import type { Provider } from "@ethersproject/providers"; import type { StarkV4, StarkV4Interface } from "../StarkV4"; export declare class StarkV4__factory { static readonly abi: readonly [{ readonly stateMutability: "payable"; readonly type: "fallback"; }, { readonly inputs: readonly []; readonly name: "VERSION"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes"; readonly name: "data"; readonly type: "bytes"; }]; readonly name: "initialize"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly stateMutability: "payable"; readonly type: "receive"; }, { readonly anonymous: false; readonly inputs: readonly []; readonly name: "LogFrozen"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "acceptedGovernor"; readonly type: "address"; }]; readonly name: "LogNewGovernorAccepted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "nominatedGovernor"; readonly type: "address"; }]; readonly name: "LogNominatedGovernor"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly []; readonly name: "LogNominationCancelled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "entry"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "entryId"; readonly type: "string"; }]; readonly name: "LogRegistered"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "entry"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "entryId"; readonly type: "string"; }]; readonly name: "LogRemovalIntent"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "entry"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "entryId"; readonly type: "string"; }]; readonly name: "LogRemoved"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "removedGovernor"; readonly type: "address"; }]; readonly name: "LogRemovedGovernor"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly []; readonly name: "LogUnFrozen"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "DEPOSIT_CANCEL_DELAY"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "FREEZE_GRACE_PERIOD"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "MAIN_GOVERNANCE_INFO_TAG"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "MAX_FORCED_ACTIONS_REQS_PER_BLOCK"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "MAX_VERIFIER_COUNT"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "UNFREEZE_DELAY"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "VERIFIER_REMOVAL_DELAY"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifier"; readonly type: "address"; }]; readonly name: "announceAvailabilityVerifierRemovalIntent"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifier"; readonly type: "address"; }]; readonly name: "announceVerifierRemovalIntent"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getRegisteredAvailabilityVerifiers"; readonly outputs: readonly [{ readonly internalType: "address[]"; readonly name: "_verifers"; readonly type: "address[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getRegisteredVerifiers"; readonly outputs: readonly [{ readonly internalType: "address[]"; readonly name: "_verifers"; readonly type: "address[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifierAddress"; readonly type: "address"; }]; readonly name: "isAvailabilityVerifier"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "isFrozen"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifierAddress"; readonly type: "address"; }]; readonly name: "isVerifier"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "mainAcceptGovernance"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "mainCancelNomination"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "testGovernor"; readonly type: "address"; }]; readonly name: "mainIsGovernor"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newGovernor"; readonly type: "address"; }]; readonly name: "mainNominateNewGovernor"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "governorForRemoval"; readonly type: "address"; }]; readonly name: "mainRemoveGovernor"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifier"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "identifier"; readonly type: "string"; }]; readonly name: "registerAvailabilityVerifier"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifier"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "identifier"; readonly type: "string"; }]; readonly name: "registerVerifier"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifier"; readonly type: "address"; }]; readonly name: "removeAvailabilityVerifier"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "verifier"; readonly type: "address"; }]; readonly name: "removeVerifier"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "unFreeze"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "depositorEthKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "LogDeposit"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }]; readonly name: "LogDepositCancel"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "LogDepositCancelReclaimed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }]; readonly name: "LogDepositNftCancelReclaimed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }]; readonly name: "LogMintWithdrawalPerformed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "LogMintableWithdrawalAllowed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "depositorEthKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }]; readonly name: "LogNftDeposit"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }]; readonly name: "LogNftWithdrawalAllowed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "recipient"; readonly type: "address"; }]; readonly name: "LogNftWithdrawalPerformed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "tokenAdmin"; readonly type: "address"; }]; readonly name: "LogTokenAdminAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "tokenAdmin"; readonly type: "address"; }]; readonly name: "LogTokenAdminRemoved"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "bytes"; readonly name: "assetInfo"; readonly type: "bytes"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantum"; readonly type: "uint256"; }]; readonly name: "LogTokenRegistered"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "sender"; readonly type: "address"; }]; readonly name: "LogUserRegistered"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "LogWithdrawalAllowed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "recipient"; readonly type: "address"; }]; readonly name: "LogWithdrawalPerformed"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "defaultVaultWithdrawalLock"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "deposit"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "deposit"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "depositCancel"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "depositERC20"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "depositEth"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }]; readonly name: "depositNft"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }]; readonly name: "depositNftReclaim"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "depositReclaim"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getActionCount"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "actionIndex"; readonly type: "uint256"; }]; readonly name: "getActionHashByIndex"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }]; readonly name: "getAssetInfo"; readonly outputs: readonly [{ readonly internalType: "bytes"; readonly name: "assetInfo"; readonly type: "bytes"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getCancellationRequest"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "request"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getDepositBalance"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "balance"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }]; readonly name: "getEthKey"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getFullWithdrawalRequest"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "res"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getQuantizedDepositBalance"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "balance"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "presumedAssetType"; readonly type: "uint256"; }]; readonly name: "getQuantum"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "quantum"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }]; readonly name: "getWithdrawalBalance"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "balance"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }]; readonly name: "isAssetRegistered"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "testedAdmin"; readonly type: "address"; }]; readonly name: "isTokenAdmin"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }, { readonly internalType: "address"; readonly name: ""; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: ""; readonly type: "bytes"; }]; readonly name: "onERC721Received"; readonly outputs: readonly [{ readonly internalType: "bytes4"; readonly name: ""; readonly type: "bytes4"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "orderRegistryAddress"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "signature"; readonly type: "bytes"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "registerAndDepositERC20"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "signature"; readonly type: "bytes"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "registerAndDepositEth"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "starkSignature"; readonly type: "bytes"; }]; readonly name: "registerEthAddress"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "starkSignature"; readonly type: "bytes"; }]; readonly name: "registerSender"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "assetInfo"; readonly type: "bytes"; }]; readonly name: "registerToken"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "assetInfo"; readonly type: "bytes"; }, { readonly internalType: "uint256"; readonly name: "quantum"; readonly type: "uint256"; }]; readonly name: "registerToken"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newAdmin"; readonly type: "address"; }]; readonly name: "registerTokenAdmin"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "oldAdmin"; readonly type: "address"; }]; readonly name: "unregisterTokenAdmin"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }]; readonly name: "withdraw"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "bytes"; readonly name: "mintingBlob"; readonly type: "bytes"; }]; readonly name: "withdrawAndMint"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "ownerKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetType"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "tokenId"; readonly type: "uint256"; }]; readonly name: "withdrawNft"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "operator"; readonly type: "address"; }]; readonly name: "LogOperatorAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "operator"; readonly type: "address"; }]; readonly name: "LogOperatorRemoved"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "sequenceNumber"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "batchId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultRoot"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "orderRoot"; readonly type: "uint256"; }]; readonly name: "LogRootUpdate"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "bytes32"; readonly name: "stateTransitionFact"; readonly type: "bytes32"; }]; readonly name: "LogStateTransitionFact"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "int256"; readonly name: "quantizedAmountChange"; readonly type: "int256"; }]; readonly name: "LogVaultBalanceChangeApplied"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "STARKEX_MAX_DEFAULT_VAULT_LOCK"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "escape"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getLastBatchId"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "batchId"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getOrderRoot"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "root"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getOrderTreeHeight"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "height"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getSequenceNumber"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "seq"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getVaultRoot"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "root"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getVaultTreeHeight"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "height"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "testedOperator"; readonly type: "address"; }]; readonly name: "isOperator"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newOperator"; readonly type: "address"; }]; readonly name: "registerOperator"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "removedOperator"; readonly type: "address"; }]; readonly name: "unregisterOperator"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256[]"; readonly name: "publicInput"; readonly type: "uint256[]"; }, { readonly internalType: "uint256[]"; readonly name: "applicationData"; readonly type: "uint256[]"; }]; readonly name: "updateState"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "LogFullWithdrawalRequest"; readonly type: "event"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "freezeRequest"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "starkKey"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "fullWithdrawalRequest"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint256"; readonly name: "newDefaultLockTime"; readonly type: "uint256"; }]; readonly name: "LogDefaultVaultWithdrawalLockSet"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "LogDepositToVault"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "timeRelease"; readonly type: "uint256"; }]; readonly name: "LogVaultWithdrawalLockSet"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "nonQuantizedAmount"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "LogWithdrawalFromVault"; readonly type: "event"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "depositERC20ToVault"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "depositEthToVault"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getQuantizedVaultBalance"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getVaultBalance"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "getVaultWithdrawalLock"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "isStrictVaultBalancePolicy"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ethKey"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }]; readonly name: "isVaultLocked"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "lockTime"; readonly type: "uint256"; }]; readonly name: "lockVault"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "newDefaultTime"; readonly type: "uint256"; }]; readonly name: "setDefaultVaultWithdrawalLock"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "assetId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "vaultId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "quantizedAmount"; readonly type: "uint256"; }]; readonly name: "withdrawFromVault"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "implementation"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "updatedActivationTime"; readonly type: "uint256"; }]; readonly name: "ImplementationActivationRescheduled"; readonly type: "event"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "implementation"; readonly type: "address"; }, { readonly internalType: "bytes"; readonly name: "data"; readonly type: "bytes"; }, { readonly internalType: "bool"; readonly name: "finalize"; readonly type: "bool"; }]; readonly name: "updateImplementationActivationTime"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }]; static createInterface(): StarkV4Interface; static connect(address: string, signerOrProvider: Signer | Provider): StarkV4; }