mintFxAbi: readonly [
{
inputs: readonly [];
stateMutability: "nonpayable";
type: "constructor";
},
{
inputs: readonly [];
name: "COMMIT_REDEEM_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "COMMIT_WITHDRAWAL_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "DEFAULT_ADMIN_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "MINT_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "PAUSE_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "REDEEM_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "UNPAUSE_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "UPGRADER_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "UPGRADE_INTERFACE_VERSION";
outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "VOID_REDEEM_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "VOID_WITHDRAWAL_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "WITHDRAW_ROLE";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address[]"; name: "feeTargets"; type: "address[]" },
{ internalType: "uint256[]"; name: "feeAmounts"; type: "uint256[]" },
];
name: "commitRedeem";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address[]"; name: "targets"; type: "address[]" },
{ internalType: "uint256[]"; name: "amounts"; type: "uint256[]" },
];
name: "commitWithdrawal";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
];
name: "getRecord";
outputs: readonly [
{
components: readonly [
{ internalType: "enum MintFx.Kind"; name: "kind"; type: "uint8" },
{ internalType: "enum MintFx.State"; name: "state"; type: "uint8" },
{ internalType: "address"; name: "from"; type: "address" },
{ internalType: "uint64"; name: "amount"; type: "uint64" },
];
internalType: "struct MintFx.Record";
name: "";
type: "tuple";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes32"; name: "role"; type: "bytes32" },
];
name: "getRoleAdmin";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes32"; name: "role"; type: "bytes32" },
{ internalType: "address"; name: "account"; type: "address" },
];
name: "grantRole";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes32"; name: "role"; type: "bytes32" },
{ internalType: "address"; name: "account"; type: "address" },
];
name: "hasRole";
outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "enum MintFx.Kind"; name: "kind"; type: "uint8" },
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
];
name: "holdNonce";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [
{ internalType: "contract MoveUSD"; name: "token_"; type: "address" },
{ internalType: "string"; name: "tokenId_"; type: "string" },
{ internalType: "address"; name: "admin"; type: "address" },
{ internalType: "address"; name: "timelock"; type: "address" },
];
name: "initialize";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address[]"; name: "targets"; type: "address[]" },
{ internalType: "uint256[]"; name: "amounts"; type: "uint256[]" },
];
name: "mint";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [];
name: "pause";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [];
name: "paused";
outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "proxiableUUID";
outputs: readonly [{ internalType: "bytes32"; name: ""; type: "bytes32" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address"; name: "from"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
{
components: readonly [
{ internalType: "uint256"; name: "validAfter"; type: "uint256" },
{ internalType: "uint256"; name: "validBefore"; type: "uint256" },
{ internalType: "bytes"; name: "signature"; type: "bytes" },
];
internalType: "struct MintFx.Authorization";
name: "authorization";
type: "tuple";
},
];
name: "redeem";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes32"; name: "role"; type: "bytes32" },
{ internalType: "address"; name: "callerConfirmation"; type: "address" },
];
name: "renounceRole";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes32"; name: "role"; type: "bytes32" },
{ internalType: "address"; name: "account"; type: "address" },
];
name: "revokeRole";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes4"; name: "interfaceId"; type: "bytes4" },
];
name: "supportsInterface";
outputs: readonly [{ internalType: "bool"; name: ""; type: "bool" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "token";
outputs: readonly [
{ internalType: "contract MoveUSD"; name: ""; type: "address" },
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "tokenId";
outputs: readonly [{ internalType: "string"; name: ""; type: "string" }];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "unpause";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "newImplementation";
type: "address";
},
{ internalType: "bytes"; name: "data"; type: "bytes" },
];
name: "upgradeToAndCall";
outputs: readonly [];
stateMutability: "payable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address"; name: "refundTo"; type: "address" },
];
name: "voidRedeem";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address"; name: "refundTo"; type: "address" },
];
name: "voidWithdrawal";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
{ internalType: "address"; name: "from"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
{
components: readonly [
{ internalType: "uint256"; name: "validAfter"; type: "uint256" },
{ internalType: "uint256"; name: "validBefore"; type: "uint256" },
{ internalType: "bytes"; name: "signature"; type: "bytes" },
];
internalType: "struct MintFx.Authorization";
name: "authorization";
type: "tuple";
},
];
name: "withdraw";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes16";
name: "ik";
type: "bytes16";
},
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "uint256";
name: "sourceAmount";
type: "uint256";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{
components: readonly [
{ internalType: "address"; name: "account"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
];
indexed: false;
internalType: "struct MintFx.RedemptionFeeTarget[]";
name: "feeTargets";
type: "tuple[]";
},
];
name: "CommitRedeemEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes16";
name: "ik";
type: "bytes16";
},
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{
indexed: false;
internalType: "uint256";
name: "sourceAmount";
type: "uint256";
},
{
components: readonly [
{ internalType: "address"; name: "account"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
];
indexed: false;
internalType: "struct MintFx.WithdrawalTarget[]";
name: "targets";
type: "tuple[]";
},
];
name: "CommitWithdrawalEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "uint64";
name: "version";
type: "uint64";
},
];
name: "Initialized";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes16";
name: "ik";
type: "bytes16";
},
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{
indexed: false;
internalType: "uint256";
name: "targetAmount";
type: "uint256";
},
{
components: readonly [
{ internalType: "address"; name: "account"; type: "address" },
{ internalType: "uint256"; name: "amount"; type: "uint256" },
];
indexed: false;
internalType: "struct MintFx.MintTarget[]";
name: "targets";
type: "tuple[]";
},
];
name: "MintEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
];
name: "PauseTokenEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "address";
name: "account";
type: "address";
},
];
name: "Paused";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "uint256";
name: "sourceAmount";
type: "uint256";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{ indexed: true; internalType: "bytes16"; name: "ik"; type: "bytes16" },
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "address";
name: "sourceAuthority";
type: "address";
},
];
name: "RedeemEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes32";
name: "role";
type: "bytes32";
},
{
indexed: true;
internalType: "bytes32";
name: "previousAdminRole";
type: "bytes32";
},
{
indexed: true;
internalType: "bytes32";
name: "newAdminRole";
type: "bytes32";
},
];
name: "RoleAdminChanged";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes32";
name: "role";
type: "bytes32";
},
{
indexed: true;
internalType: "address";
name: "account";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "sender";
type: "address";
},
];
name: "RoleGranted";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes32";
name: "role";
type: "bytes32";
},
{
indexed: true;
internalType: "address";
name: "account";
type: "address";
},
{
indexed: true;
internalType: "address";
name: "sender";
type: "address";
},
];
name: "RoleRevoked";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
];
name: "UnpauseTokenEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "address";
name: "account";
type: "address";
},
];
name: "Unpaused";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "implementation";
type: "address";
},
];
name: "Upgraded";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes16";
name: "ik";
type: "bytes16";
},
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{
indexed: false;
internalType: "address";
name: "refundDestination";
type: "address";
},
];
name: "VoidRedeemEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "bytes16";
name: "ik";
type: "bytes16";
},
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "uint256";
name: "amount";
type: "uint256";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{
indexed: false;
internalType: "address";
name: "refundDestination";
type: "address";
},
];
name: "VoidWithdrawalEvent";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "uint256";
name: "sourceAmount";
type: "uint256";
},
{
indexed: false;
internalType: "uint8";
name: "decimals";
type: "uint8";
},
{ indexed: true; internalType: "bytes16"; name: "ik"; type: "bytes16" },
{
indexed: false;
internalType: "string";
name: "tokenId";
type: "string";
},
{
indexed: false;
internalType: "address";
name: "sourceAuthority";
type: "address";
},
];
name: "WithdrawEvent";
type: "event";
},
{
inputs: readonly [];
name: "AccessControlBadConfirmation";
type: "error";
},
{
inputs: readonly [
{ internalType: "address"; name: "account"; type: "address" },
{ internalType: "bytes32"; name: "neededRole"; type: "bytes32" },
];
name: "AccessControlUnauthorizedAccount";
type: "error";
},
{
inputs: readonly [
{ internalType: "address"; name: "target"; type: "address" },
];
name: "AddressEmptyCode";
type: "error";
},
{
inputs: readonly [
{ internalType: "address"; name: "implementation"; type: "address" },
];
name: "ERC1967InvalidImplementation";
type: "error";
},
{ inputs: readonly []; name: "ERC1967NonPayable"; type: "error" },
{ inputs: readonly []; name: "EnforcedPause"; type: "error" },
{ inputs: readonly []; name: "ExpectedPause"; type: "error" },
{ inputs: readonly []; name: "FailedCall"; type: "error" },
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
];
name: "IkAlreadyUsed";
type: "error";
},
{
inputs: readonly [
{ internalType: "bytes16"; name: "ik"; type: "bytes16" },
];
name: "InvalidIK";
type: "error";
},
{ inputs: readonly []; name: "InvalidInitialization"; type: "error" },
{ inputs: readonly []; name: "InvalidMintDestinations"; type: "error" },
{ inputs: readonly []; name: "InvalidRedemptionFees"; type: "error" },
{ inputs: readonly []; name: "InvalidRefundDestination"; type: "error" },
{
inputs: readonly [];
name: "InvalidWithdrawalDestinations";
type: "error";
},
{ inputs: readonly []; name: "NotInitializing"; type: "error" },
{
inputs: readonly [
{ internalType: "uint8"; name: "bits"; type: "uint8" },
{ internalType: "uint256"; name: "value"; type: "uint256" },
];
name: "SafeCastOverflowedUintDowncast";
type: "error";
},
{ inputs: readonly []; name: "UUPSUnauthorizedCallContext"; type: "error" },
{
inputs: readonly [
{ internalType: "bytes32"; name: "slot"; type: "bytes32" },
];
name: "UUPSUnsupportedProxiableUUID";
type: "error";
},
{ inputs: readonly []; name: "ZeroAddress"; type: "error" },
{ inputs: readonly []; name: "ZeroAmount"; type: "error" },
] = ...