viem
Version:
38,788 lines • 1.09 MB
TypeScript
export declare const accountKeychain: readonly [{
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeAdminKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnKeyAuthorizationWitness";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateSpendingLimit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
readonly outputs: readonly [];
}, {
readonly name: "setAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "removeAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "target";
}];
readonly outputs: readonly [];
}, {
readonly name: "getKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "bool";
readonly name: "isRevoked";
}];
}];
}, {
readonly name: "getRemainingLimit";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}];
}, {
readonly name: "getRemainingLimitWithPeriod";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}, {
readonly type: "uint64";
readonly name: "periodEnd";
}];
}, {
readonly name: "getAllowedCalls";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isScoped";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly name: "isKeyAuthorizationWitnessBurned";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAdminKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTransactionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "KeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}];
}, {
readonly name: "AdminKeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "KeyRevoked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "SpendingLimitUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
}, {
readonly name: "AccessKeySpend";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "remainingLimit";
}];
}, {
readonly name: "KeyAuthorizationWitness";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "KeyAuthorizationWitnessBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "UnauthorizedCaller";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SpendingLimitExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSpendingLimit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiryInPast";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyRevoked";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SignatureTypeMismatch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "expected";
}, {
readonly type: "uint8";
readonly name: "actual";
}];
}, {
readonly name: "CallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCallScope";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyAuthorizationWitness";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAuthorizationWitnessAlreadyBurned";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LegacyAuthorizeKeySelectorChanged";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "newSelector";
}];
}];
export declare const addressRegistry: readonly [{
readonly name: "registerVirtualMaster";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
}, {
readonly name: "getMaster";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "resolveRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "effectiveRecipient";
}];
}, {
readonly name: "resolveVirtualAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "virtualAddr";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "isVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "decodeVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isVirtual";
}, {
readonly type: "bytes4";
readonly name: "masterId";
}, {
readonly type: "bytes6";
readonly name: "userTag";
}];
}, {
readonly name: "isImplicitlyApproved";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "MasterRegistered";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "masterAddress";
readonly indexed: true;
}];
}, {
readonly name: "MasterIdCollision";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "InvalidMasterAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProofOfWorkFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressUnregistered";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const nativeMultisig: readonly [{
readonly name: "deriveAccount";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
}, {
readonly name: "getConfigCommitment";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "commitment";
}];
}, {
readonly name: "updateConfig";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "current";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint64";
readonly name: "version";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "MultisigConfigUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint64";
readonly name: "version";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
}, {
readonly name: "InvalidAccount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidConfig";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidThreshold";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidMultisigOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidWeight";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TooManyOwners";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidOwnerOrder";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedMultisigCaller";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const currentCommittee: readonly [{
readonly name: "getCommitteeMembers";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}, {
readonly type: "bytes32[]";
readonly name: "publicKeys";
}];
}, {
readonly name: "setCommitteeMembers";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}, {
readonly type: "bytes32[]";
readonly name: "publicKeys";
}];
readonly outputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const nonce: readonly [{
readonly name: "getNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint256";
readonly name: "nonceKey";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
}];
}, {
readonly name: "NonceIncremented";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "nonceKey";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newNonce";
}];
}, {
readonly name: "ProtocolNonceNotSupported";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidNonceKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NonceOverflow";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceReplay";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceSetFull";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidExpiringNonceExpiry";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const receivePolicyGuard: readonly [{
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "claim";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlockedReceipt";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "TransferBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
}, {
readonly name: "ReceiptClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "ReceiptBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidReceipt";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClaimAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedClaimer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const signatureVerifier: readonly [{
readonly name: "recover";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "signer";
}];
}, {
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "signer";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychain";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychainAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "InvalidFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const stablecoinDex: readonly [{
readonly name: "createPair";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
}];
}, {
readonly name: "place";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "placeFlip";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "cancel";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "cancelStaleOrder";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "swapExactAmountIn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}, {
readonly type: "uint128";
readonly name: "minAmountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "swapExactAmountOut";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}, {
readonly type: "uint128";
readonly name: "maxAmountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "quoteSwapExactAmountIn";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "quoteSwapExactAmountOut";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "getOrder";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}, {
readonly type: "address";
readonly name: "maker";
}, {
readonly type: "bytes32";
readonly name: "bookKey";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "remaining";
}, {
readonly type: "uint128";
readonly name: "prev";
}, {
readonly type: "uint128";
readonly name: "next";
}, {
readonly type: "bool";
readonly name: "isFlip";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}];
}, {
readonly name: "getTickLevel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isBid";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "head";
}, {
readonly type: "uint128";
readonly name: "tail";
}, {
readonly type: "uint128";
readonly name: "totalLiquidity";
}];
}, {
readonly name: "pairKey";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenA";
}, {
readonly type: "address";
readonly name: "tokenB";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "nextOrderId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "books";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "pairKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "address";
readonly name: "quote";
}, {
readonly type: "int16";
readonly name: "bestBidTick";
}, {
readonly type: "int16";
readonly name: "bestAskTick";
}];
}];
}, {
readonly name: "bookIndexForKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "bookKey";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "set";
}, {
readonly type: "uint32";
readonly name: "index";
}];
}, {
readonly name: "bookKeyForIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "bookKey";
}];
}, {
readonly name: "setBookIndex";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "index";
}];
readonly outputs: readonly [];
}, {
readonly name: "storageCredits";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
}, {
readonly name: "MIN_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "MAX_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "TICK_SPACING";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "PRICE_SCALE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MIN_ORDER_AMOUNT";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MIN_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MAX_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "tickToPrice";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
}, {
readonly name: "priceToTick";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
readonly outputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "PairCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "base";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "quote";
readonly indexed: true;
}];
}, {
readonly name: "OrderPlaced";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isFlipOrder";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "OrderFilled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "taker";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amountFilled";
}, {
readonly type: "bool";
readonly name: "partialFill";
}];
}, {
readonly name: "OrderFlipped";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "FlipFailed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "bytes4";
readonly name: "reason";
}];
}, {
readonly name: "OrderCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IdenticalTokens";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TickOutOfBounds";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "InvalidTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidFlipTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientOutput";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MaxInputExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "BelowMinimumOrderSize";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "InvalidBaseToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderNotStale";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IndexAlreadySet";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const storageCredits: readonly [{
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "modeOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "budgetOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "newMode";
}];
readonly outputs: readonly [];
}, {
readonly name: "setBudget";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
readonly outputs: readonly [];
}, {
readonly name: "InvalidMode";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OnlyDirectCall";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const feeManager: readonly [{
readonly name: "userTokens";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validatorTokens";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "setUserToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "setValidatorToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "distributeFees";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "collectedFees";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "UserTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "FeesDistributed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientFeeTokenBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CannotChangeWithinBlock";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const feeAmm: readonly [{
readonly name: "M";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "N";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "SCALE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "MIN_LIQUIDITY";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "getPoolId";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "getPool";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "reserveUserToken";
}, {
readonly type: "uint128";
readonly name: "reserveValidatorToken";
}];
}];
}, {
readonly name: "pools";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "reserveUserToken";
}, {
readonly type: "uint128";
readonly name: "reserveValidatorToken";
}];
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "liquidity";
}];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amountUserToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "liquidityBalances";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "rebalanceSwap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "amountOut";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amountIn";
}];
}, {
readonly name: "Mint";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}];
}, {
readonly name: "Burn";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountUserToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}, {
readonly type: "address";
readonly name: "to";
}];
}, {
readonly name: "RebalanceSwap";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "swapper";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountIn";
}, {
readonly type: "uint256";
readonly name: "amountOut";
}];
}, {
readonly name: "IdenticalAddresses";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientReserves";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAmount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DivisionByZero";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSwapCalculation";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const tip20ChannelReserve: readonly [{
readonly name: "CLOSE_GRACE_PERIOD";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "VOUCHER_TYPEHASH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "open";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}];
}, {
readonly name: "settle";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "topUp";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "additionalDeposit";
}];
readonly outputs: readonly [];
}, {
readonly name: "close";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "uint96";
readonly name: "captureAmount";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "requestClose";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "getChannel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "tuple";
readonly name: "state";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}];
}, {
readonly name: "getChannelState";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}, {
readonly name: "getChannelStatesBatch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32[]";
readonly name: "channelIds";
}];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}, {
readonly name: "computeChannelId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "getVoucherDigest";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "domainSeparator";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "storageCredits";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payer";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
}, {
readonly name: "ChannelOpened";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}, {
readonly type: "uint96";
readonly name: "deposit";
}];
}, {
readonly name: "Settled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "uint96";
readonly name: "deltaPaid";
}, {
readonly type: "uint96";
readonly name: "newSettled";
}];
}, {
readonly name: "TopUp";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "additionalDeposit";
}, {
readonly type: "uint96";
readonly name: "newDeposit";
}];
}, {
readonly name: "CloseRequested";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "closeGraceEnd";
}];
}, {
readonly name: "ChannelClosed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "settledToPayee";
}, {
readonly type: "uint96";
readonly name: "refundedToPayer";
}];
}, {
readonly name: "CloseRequestCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}];
}, {
readonly name: "ChannelAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ChannelNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPayer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPayeeOrOperator";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPayee";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroDeposit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceHashNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AmountExceedsDeposit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AmountNotIncreasing";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CaptureAmountInvalid";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CloseNotReady";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositOverflow";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const tip20Factory: readonly [{
readonly name: "createToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "createToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "string";
readonly name: "logoURI";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "isTIP20";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTokenAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "TokenCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressNotReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuoteToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenAlreadyExists";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
}];
export declare const tip20: readonly [{
readonly name: "name";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "symbol";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "decimals";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "quoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "nextQuoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transfer";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "approve";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "allowance";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transferFrom";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "currency";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "supplyCap";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "transferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "logoURI";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setLogoURI";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "newLogoURI";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlocked";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "mintWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferFromWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "changeTransferPolicyId";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newPolicyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSupplyCap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "newSupplyCap";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "unpause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "setNextQuoteToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newQuoteToken";
}];
readonly outputs: readonly [];
}, {
readonly name: "completeQuoteTokenUpdate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "PAUSE_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "UNPAUSE_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "ISSUER_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "BURN_BLOCKED_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "permit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "value";
}, {
readonly type: "uint256";
readonly name: "deadline";
}, {
readonly type: "uint8";
readonly name: "v";
}, {
readonly type: "bytes32";
readonly name: "r";
}, {
readonly type: "bytes32";
readonly name: "s";
}];
readonly outputs: readonly [];
}, {
readonly name: "nonces";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "DOMAIN_SEPARATOR";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "distributeReward";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "setRewardRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "recipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "claimRewards";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "optedInSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "globalRewardPerToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "userRewardInfo";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "rewardRecipient";
}, {
readonly type: "uint256";
readonly name: "rewardPerToken";
}, {
readonly type: "uint256";
readonly name: "rewardBalance";
}];
}];
}, {
readonly name: "getPendingRewards";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "Transfer";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Approval";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "spender";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Mint";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Burn";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "BurnBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "TransferWithMemo";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
readonly indexed: true;
}];
}, {
readonly name: "TransferPolicyUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newPolicyId";
readonly indexed: true;
}];
}, {
readonly name: "SupplyCapUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newSupplyCap";
readonly indexed: true;
}];
}, {
readonly name: "PauseStateUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "isPaused";
}];
}, {
readonly name: "NextQuoteTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "nextQuoteToken";
readonly indexed: true;
}];
}, {
readonly name: "QuoteTokenUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newQuoteToken";
readonly indexed: true;
}];
}, {
readonly name: "RewardDistributed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "funder";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "RewardRecipientSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "holder";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "recipient";
readonly indexed: true;
}];
}, {
readonly name: "LogoURIUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "newLogoURI";
}];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "available";
}, {
readonly type: "uint256";
readonly name: "required";
}, {
readonly type: "address";
readonly name: "token";
}];
}, {
readonly name: "InsufficientAllowance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SupplyCapExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSupplyCap";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPayload";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyForbids";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ContractPaused";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCurrency";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuoteToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAmount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NoOptedInSupply";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProtectedAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Uninitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidTransferPolicyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PermitExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LogoURITooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidLogoURI";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "hasRole";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getRoleAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "grantRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [];
}, {
readonly name: "renounceRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [];
}, {
readonly name: "setRoleAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "bytes32";
readonly name: "adminRole";
}];
readonly outputs: readonly [];
}, {
readonly name: "RoleMembershipUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "hasRole";
}];
}, {
readonly name: "RoleAdminUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "newAdminRole";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const tip403Registry: readonly [{
readonly name: "policyIdCounter";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "policyExists";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "tokenTransferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isSet";
}, {
readonly type: "uint64";
readonly name: "policyId";
}];
}, {
readonly name: "policyData";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "uint8";
readonly name: "policyType";
}, {
readonly type: "address";
readonly name: "admin";
}];
}, {
readonly name: "isAuthorized";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedSender";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedMintRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "compoundPolicyData";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
}, {
readonly name: "receivePolicy";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "hasReceivePolicy";
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint8";
readonly name: "senderPolicyType";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "uint8";
readonly name: "tokenFilterType";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
}, {
readonly name: "validateReceivePolicy";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "address";
readonly name: "receiver";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "authorized";
}, {
readonly type: "uint8";
readonly name: "blockedReason";
}];
}, {
readonly name: "createPolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "uint8";
readonly name: "policyType";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "createPolicyWithAccounts";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "uint8";
readonly name: "policyType";
}, {
readonly type: "address[]";
readonly name: "accounts";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setPolicyAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "admin";
}];
readonly outputs: readonly [];
}, {
readonly name: "modifyPolicyWhitelist";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "modifyPolicyBlacklist";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "restricted";
}];
readonly outputs: readonly [];
}, {
readonly name: "createCompoundPolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setReceivePolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
readonly outputs: readonly [];
}, {
readonly name: "migrateTransferPolicyIds";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address[]";
readonly name: "tokens";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "migrated";
}];
}, {
readonly name: "PolicyAdminUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "admin";
readonly indexed: true;
}];
}, {
readonly name: "PolicyCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "policyType";
}];
}, {
readonly name: "WhitelistUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "allowed";
}];
}, {
readonly name: "BlacklistUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "restricted";
}];
}, {
readonly name: "CompoundPolicyCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "creator";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
}, {
readonly name: "ReceivePolicyUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyNotSimple";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IncompatiblePolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidReceivePolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRecoveryAuthority";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const validatorConfigV2: readonly [{
readonly name: "getActiveValidators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly name: "validators";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "getInitializedAtHeight";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validatorCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "validatorByIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "validatorByAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validatorAddress";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "validatorByPublicKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "getNextNetworkIdentityRotationEpoch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "isInitialized";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "addValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}];
}, {
readonly name: "deactivateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}];
readonly outputs: readonly [];
}, {
readonly name: "rotateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "setFeeRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "setIpAddresses";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferValidatorOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "address";
readonly name: "newAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "setNetworkIdentityRotationEpoch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "migrateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}];
readonly outputs: readonly [];
}, {
readonly name: "initializeIfMigrated";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "ValidatorAdded";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}];
}, {
readonly name: "ValidatorDeactivated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorRotated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "deactivatedIndex";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "oldPublicKey";
}, {
readonly type: "bytes32";
readonly name: "newPublicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "FeeRecipientUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "IpAddressesUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "ValidatorOwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "oldAddress";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newAddress";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "OwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "oldOwner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newOwner";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorMigrated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}];
}, {
readonly name: "NetworkIdentityRotationEpochSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "previousEpoch";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "nextEpoch";
readonly indexed: true;
}];
}, {
readonly name: "Initialized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "height";
}];
}, {
readonly name: "SkippedValidatorMigration";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IngressAlreadyExists";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "ingress";
}];
}, {
readonly name: "EmptyV1ValidatorSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidMigrationIndex";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidValidatorAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MigrationNotComplete";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotIp";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "NotIpPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "PublicKeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressAlreadyHasValidator";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorAlreadyDeactivated";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorNotFound";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const validatorConfig: readonly [{
readonly name: "getValidators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly name: "validators";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
}];
}, {
readonly name: "addValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newValidatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newValidatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "changeValidatorStatus";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "bool";
readonly name: "active";
}];
readonly outputs: readonly [];
}, {
readonly name: "changeValidatorStatusByIndex";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "bool";
readonly name: "active";
}];
readonly outputs: readonly [];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "changeOwner";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "getNextFullDkgCeremony";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setNextFullDkgCeremony";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "validatorsArray";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
}];
}, {
readonly name: "validatorCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotHostPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "field";
}, {
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "NotIpPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "field";
}, {
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}];
export declare const zoneFactory: readonly [{
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "transferOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "createZone";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "params";
readonly components: readonly [{
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address[]";
readonly name: "allowedAccounts";
}, {
readonly type: "address[]";
readonly name: "zoneGateways";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}];
}, {
readonly name: "nextZoneId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "zones";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "id";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly name: "info";
readonly components: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
}, {
readonly name: "isZonePortal";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "portal";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "OwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousOwner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newOwner";
readonly indexed: true;
}];
}, {
readonly name: "ZoneCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "portal";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenTransferPolicyNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClosedLoopConfig";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSequencerSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenMetadataTooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateAllowedAccount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateZoneGateway";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZoneCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "portal";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "messenger";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "sequencer";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "bytes32";
readonly name: "genesisBlockHash";
}, {
readonly type: "bytes32";
readonly name: "genesisTempoBlockHash";
}, {
readonly type: "uint64";
readonly name: "genesisTempoBlockNumber";
}];
}, {
readonly name: "createZone";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "params";
readonly components: readonly [{
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "sequencer";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "tuple";
readonly name: "zoneParams";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "genesisBlockHash";
}, {
readonly type: "bytes32";
readonly name: "genesisTempoBlockHash";
}, {
readonly type: "uint64";
readonly name: "genesisTempoBlockNumber";
}];
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}];
}, {
readonly name: "verifier";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}];
export declare const zonePortal: readonly [{
readonly name: "SequencerSetUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}];
}, {
readonly name: "TokenEnabled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}];
}, {
readonly name: "RoleUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "prev";
}, {
readonly type: "uint8";
readonly name: "next";
}];
}, {
readonly name: "EnforcementModesUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}];
}, {
readonly name: "LeaderUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousLeader";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newLeader";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "leaderEpoch";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "leaderActivationTempoBlock";
}];
}, {
readonly name: "zoneId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "admin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "messenger";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "isAccessEnforced";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setAccessMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "enforced";
}];
readonly outputs: readonly [];
}, {
readonly name: "isGatewayOpen";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setGatewayMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "enforced";
}];
readonly outputs: readonly [];
}, {
readonly name: "hasRole";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint8";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setAllowedAccount";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setGateway";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setPauseGuardian";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSequencerSet";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address[]";
readonly name: "newSequencers";
}, {
readonly type: "uint8";
readonly name: "newThreshold";
}];
readonly outputs: readonly [];
}, {
readonly name: "verifier";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "sequencerSetVersion";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "sequencerThreshold";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "zoneHeight";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "isSequencer";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "sequencerCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "sequencerAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "leader";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "leaderEpoch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "leaderActivationTempoBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setLeader";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newLeader";
}, {
readonly type: "uint64";
readonly name: "expectedEpoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "withdrawalBatchIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "blockHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "currentDepositQueueHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "lastSyncedTempoBlockNumber";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "withdrawalQueueHead";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "withdrawalQueueTail";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "withdrawalQueueSlot";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "queueIndex";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "calculateDepositFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "calculateBouncebackFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "depositCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "lastProcessedDepositNumber";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "FIXED_DEPOSIT_GAS";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_GAS_FEE_RATE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_TOKEN_METADATA_BYTES";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "areDepositsActive";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "tokenConfig";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bool";
readonly name: "enabled";
}, {
readonly type: "bool";
readonly name: "depositsActive";
}];
}];
}, {
readonly name: "initialize";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address[]";
readonly name: "allowedAccounts";
}, {
readonly type: "address[]";
readonly name: "zoneGateways";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "messenger";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
readonly outputs: readonly [];
}, {
readonly name: "deliverWithdrawal";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}];
readonly outputs: readonly [];
}, {
readonly name: "MAX_DEPOSITS_PER_TEMPO_BLOCK";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_WITHDRAWAL_GAS_LIMIT";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "pauseExpiry";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "abdicationEffectiveAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "processWithdrawals";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple[]";
readonly name: "withdrawals";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "senderTag";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}, {
readonly type: "bytes";
readonly name: "encryptedSender";
}];
}, {
readonly type: "bytes32";
readonly name: "remainingQueue";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "resume";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "abdicate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
readonly outputs: readonly [];
}, {
readonly name: "submitBatch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}, {
readonly type: "uint64";
readonly name: "recentTempoBlockNumber";
}, {
readonly type: "tuple";
readonly name: "blockTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevBlockHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}];
}, {
readonly type: "tuple";
readonly name: "depositQueueTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevProcessedHash";
}, {
readonly type: "bytes32";
readonly name: "nextProcessedHash";
}, {
readonly type: "uint64";
readonly name: "prevDepositNumber";
}, {
readonly type: "uint64";
readonly name: "nextDepositNumber";
}];
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "bytes";
readonly name: "verifierConfig";
}, {
readonly type: "bytes";
readonly name: "proof";
}, {
readonly type: "uint256";
readonly name: "nextZoneHeight";
}, {
readonly type: "bytes[]";
readonly name: "signatures";
}];
readonly outputs: readonly [];
}, {
readonly name: "enableToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "pauseDeposits";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "resumeDeposits";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "setZoneGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "newZoneGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setMaxTempoGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "newMaxTempoGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setBouncebackGas";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newBouncebackGas";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newAdmin";
}];
readonly outputs: readonly [];
}, {
readonly name: "acceptAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "rpcUrl";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setRpcUrl";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "rpcUrl";
}];
readonly outputs: readonly [];
}, {
readonly name: "deposit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "tuple";
readonly name: "encrypted";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}];
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
}];
}, {
readonly name: "depositEncrypted";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "tuple";
readonly name: "encrypted";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}];
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
}];
}, {
readonly name: "setSequencerEncryptionKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint8";
readonly name: "popV";
}, {
readonly type: "bytes32";
readonly name: "popR";
}, {
readonly type: "bytes32";
readonly name: "popS";
}];
readonly outputs: readonly [];
}, {
readonly name: "isTokenEnabled";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "enabledTokenCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "enabledTokenAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "tokenEnablementHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "zoneGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "maxTempoGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "bouncebackGas";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "pendingAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "refunds";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "owner";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "sequencerEncryptionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "address";
readonly name: "pubkey";
}];
}, {
readonly name: "encryptionKeyCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "encryptionKeyAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly name: "entry";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}];
}];
}, {
readonly name: "isEncryptionKeyValid";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "valid";
}, {
readonly type: "uint64";
readonly name: "expiresAtBlock";
}];
}, {
readonly name: "encryptionKeyAtBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}];
}, {
readonly name: "claimRefund";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "DepositMade";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "netAmount";
}, {
readonly type: "uint128";
readonly name: "fee";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}, {
readonly type: "uint64";
readonly name: "depositNumber";
}];
}, {
readonly name: "DepositsPaused";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "DepositsResumed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "PortalPaused";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}];
}, {
readonly name: "PortalResumed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}];
}, {
readonly name: "AbdicationScheduled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "effectiveAt";
}];
}, {
readonly name: "RpcUrlUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "rpcUrl";
}];
}, {
readonly name: "SequencerEncryptionKeyUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "address";
readonly name: "pubkey";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}];
}, {
readonly name: "BatchSubmitted";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "withdrawalQueueIndex";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "nextProcessedDepositQueueHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "uint64";
readonly name: "lastProcessedDepositNumber";
}];
}, {
readonly name: "WithdrawalProcessed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "senderTag";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "callbackSuccess";
}];
}, {
readonly name: "WithdrawalBounceBack";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "depositNumber";
}];
}, {
readonly name: "DepositBounceBack";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tempoRefundRecipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "bouncebackFee";
}];
}, {
readonly name: "DepositBounceBackPending";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tempoRefundRecipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "bouncebackFee";
}];
}, {
readonly name: "RefundClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "recipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "ZoneGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "zoneGasRate";
}];
}, {
readonly name: "MaxTempoGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "maxTempoGasRate";
}];
}, {
readonly name: "BouncebackGasUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "bouncebackGas";
}];
}, {
readonly name: "AdminTransferStarted";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "currentAdmin";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "pendingAdmin";
readonly indexed: true;
}];
}, {
readonly name: "AdminTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousAdmin";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newAdmin";
readonly indexed: true;
}];
}, {
readonly name: "NotSequencer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPauseAuthority";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CapabilityAbdicated";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
}, {
readonly name: "AbdicationAlreadyScheduled";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
}, {
readonly name: "PortalIsPaused";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPendingAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidProof";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidTempoBlockNumber";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotFactory";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotSelf";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MustDelegateCall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackRejected";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TransferFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ReentrantWithdrawal";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "EncryptionKeyExpired";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}, {
readonly type: "uint64";
readonly name: "supersededAtBlock";
}];
}, {
readonly name: "InvalidEncryptionKeyIndex";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}];
}, {
readonly name: "NoEncryptionKeySet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NoEncryptionKeyAtBlock";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "blockNumber";
}];
}, {
readonly name: "InvalidEphemeralPubkey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCiphertextLength";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidProofOfPossession";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositTooSmall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenEnablementBlockCapacityExceeded";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "maximum";
}];
}, {
readonly name: "TokenMetadataTooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasFeeRateTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositsNotActive";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenAlreadyEnabled";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenTransferPolicyNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidDepositTransition";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSequencerSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SequencerConfigurationUnchanged";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuorumCertificate";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackDidNotReturnToZone";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidBouncebackRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenNotEnabled";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositBlockCapacityExceeded";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "maximum";
}];
}, {
readonly name: "InvalidCallbackTarget";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AccountNotAllowed";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
}, {
readonly name: "InvalidLeader";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ActiveLeaderRemoved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LeaderAlreadyUpdatedThisBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "StaleLeadershipEpoch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "expected";
}, {
readonly type: "uint64";
readonly name: "actual";
}];
}, {
readonly name: "deposit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "_token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}];
export declare const earnContributionController: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "active";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "executeFunding";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fundedAssets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "fund";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fundedAssets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setActive";
readonly inputs: readonly [{
readonly name: "active_";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "ActiveSet";
readonly inputs: readonly [{
readonly name: "active";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Funded";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "fundedAssets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "EarnShareSupplyOutOfBounds";
readonly inputs: readonly [{
readonly name: "earnShareSupply";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "Inactive";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotSelf";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}];
export declare const earnEngine: readonly [{
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "scale";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}];
export declare const earnEngineAsyncRedeem: readonly [{
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "requestData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}];
export declare const earnEngineInKindDeposit: readonly [{
readonly type: "function";
readonly name: "depositInKind";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "from";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineSharesReceived";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}];
export declare const earnFactory: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "tip20Factory_";
readonly type: "address";
}, {
readonly name: "earnVaultImplementation_";
readonly type: "address";
}, {
readonly name: "earnFeesImplementation_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "DEFAULT_ADMIN_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "EARN_SHARE_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "FEES_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "computeEarnShareSalt";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "deploy";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "earnShare";
readonly type: "address";
}, {
readonly name: "earnVault";
readonly type: "address";
}, {
readonly name: "earnFees";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnFeesImplementation";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVaultImplementation";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "predictEarnFees";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "predictEarnShare";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "tip20Factory";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "EarnStackDeployed";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShare";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnFees";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engine";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "owner";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "deploymentId";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "emergencyGuardian";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "asyncJanitor";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "migrationMode";
readonly type: "uint8";
readonly indexed: false;
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
readonly indexed: false;
}, {
readonly name: "earnShareSalt";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "controlConfigHash";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "feeConfigHash";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "earnFeesSalt";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AdminRelinquishmentFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EarnShareAlreadyExists";
readonly inputs: readonly [{
readonly name: "earnShare";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "EarnShareSupplyNotZero";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyDeploymentId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyEarnShareMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineAlreadyBound";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "FactoryCannotBeFinalOwner";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "FailedDeployment";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientBalance";
readonly inputs: readonly [{
readonly name: "balance";
readonly type: "uint256";
}, {
readonly name: "needed";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidDistributorConfig";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnFeesImplementation";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVaultImplementation";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidTransferPolicy";
readonly inputs: readonly [{
readonly name: "policyId";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "IssuerGrantFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TransferPolicyMismatch";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint64";
}, {
readonly name: "actual";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "UnsupportedTransferPolicy";
readonly inputs: readonly [{
readonly name: "policyId";
readonly type: "uint64";
}, {
readonly name: "policyType";
readonly type: "uint8";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}];
export declare const earnFees: readonly [{
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accrueFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "result";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
}, {
readonly name: "fixedFeeAssets";
readonly type: "uint256";
}, {
readonly name: "excessFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeEarnShares";
readonly type: "uint256";
}, {
readonly name: "preFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "postFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "allocationCount";
readonly type: "uint8";
}, {
readonly name: "allocations";
readonly type: "tuple[5]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
}];
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claim";
readonly inputs: readonly [{
readonly name: "to";
readonly type: "address";
}, {
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimableEarnShares";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "closeRedeemRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "currentFeeConfigId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "disableFees";
readonly inputs: readonly [{
readonly name: "operator";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeBaselinesPending";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeConfig";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeRemainder";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}, {
readonly name: "slot";
readonly type: "uint8";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feesActive";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feesDisabled";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "highWaterMark";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "earnShare_";
readonly type: "address";
}, {
readonly name: "initialConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeBaselines";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pendingFeeSnapshot";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "requestValue";
readonly type: "uint256";
}, {
readonly name: "highWaterValue";
readonly type: "uint256";
}, {
readonly name: "targetValue";
readonly type: "uint256";
}, {
readonly name: "feeConfigId";
readonly type: "uint64";
}, {
readonly name: "requestedAt";
readonly type: "uint40";
}, {
readonly name: "open";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewAccruedFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "result";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
}, {
readonly name: "fixedFeeAssets";
readonly type: "uint256";
}, {
readonly name: "excessFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeEarnShares";
readonly type: "uint256";
}, {
readonly name: "preFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "postFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "allocationCount";
readonly type: "uint8";
}, {
readonly name: "allocations";
readonly type: "tuple[5]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "recordRedeemRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "requestValue";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settleCancelledRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "returnedValue";
readonly type: "uint256";
}, {
readonly name: "activeSupply";
readonly type: "uint256";
}, {
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "totalReentryEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "shouldChargeRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "targetBase";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "targetStartedAt";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalClaimableEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "validateFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "FeeBaselinesInitialized";
readonly inputs: readonly [{
readonly name: "highWaterMark";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetBase";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetStartedAt";
readonly type: "uint40";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeConfigurationSet";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "configHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "reactivated";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeDustWaived";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "slot";
readonly type: "uint8";
readonly indexed: true;
}, {
readonly name: "remainder";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeEarnSharesAllocated";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "feeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeEarnSharesClaimed";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeesAccrued";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "activeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "highWaterMark";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeesDisabled";
readonly inputs: readonly [{
readonly name: "operator";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientClaimableEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidFeeClaimReceiver";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidFeeConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}];
export declare const earnMerkleRewardDistributor: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "treasury_";
readonly type: "address";
}, {
readonly name: "campaignId_";
readonly type: "bytes32";
}, {
readonly name: "claimDeadline_";
readonly type: "uint40";
}, {
readonly name: "owner_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "campaignId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claim";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
}, {
readonly name: "proof";
readonly type: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimDeadline";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cumulativePaid";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "cumulativeAmount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "fundWithAssets";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "leaf";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "merkleRoot";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "paused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "publishRoot";
readonly inputs: readonly [{
readonly name: "root";
readonly type: "bytes32";
}, {
readonly name: "totalEntitlement";
readonly type: "uint256";
}, {
readonly name: "statementHash_";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pushBatch";
readonly inputs: readonly [{
readonly name: "expectedRootVersion";
readonly type: "uint64";
}, {
readonly name: "recipients";
readonly type: "address[]";
}, {
readonly name: "cumulativeAmounts";
readonly type: "uint256[]";
}, {
readonly name: "multiproof";
readonly type: "bytes32[]";
}, {
readonly name: "proofFlags";
readonly type: "bool[]";
}];
readonly outputs: readonly [{
readonly name: "paidCount";
readonly type: "uint256";
}, {
readonly name: "paidEarnShares";
readonly type: "uint256";
}, {
readonly name: "skippedCount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "returnUnspent";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "rootTotalEntitlement";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rootVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "setPaused";
readonly inputs: readonly [{
readonly name: "paused_";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "statementHash";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalPaid";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "treasury";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "AssetsFunded";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BatchPushed";
readonly inputs: readonly [{
readonly name: "version";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "batchHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "attemptedCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "paidCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "paidEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "skippedCount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "PausedSet";
readonly inputs: readonly [{
readonly name: "paused";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "PayoutSkipped";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "reason";
readonly type: "uint8";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RewardClaimed";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RootPublished";
readonly inputs: readonly [{
readonly name: "version";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "root";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "statementHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "totalEntitlement";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "UnspentReturned";
readonly inputs: readonly [{
readonly name: "treasury";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "ClaimsExpired";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ClaimsNotExpired";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DepositsPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientFunding";
readonly inputs: readonly [{
readonly name: "requiredBalance";
readonly type: "uint256";
}, {
readonly name: "actualBalance";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidArrayLengths";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidMultiproof";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "MerkleProofInvalidMultiproof";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NothingOwed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnershipRenunciationDisabled";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "Paused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "PausedLiabilityIncrease";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrancyGuardReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RootTotalDecreased";
readonly inputs: readonly [{
readonly name: "previousTotal";
readonly type: "uint256";
}, {
readonly name: "nextTotal";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "RootTotalExceeded";
readonly inputs: readonly [{
readonly name: "requestedAmount";
readonly type: "uint256";
}, {
readonly name: "remainingEntitlement";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "StaleRootVersion";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint64";
}, {
readonly name: "actual";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedEarnShares";
readonly inputs: readonly [{
readonly name: "reported";
readonly type: "uint256";
}, {
readonly name: "measured";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedRetainedAssets";
readonly inputs: readonly [{
readonly name: "beforeBalance";
readonly type: "uint256";
}, {
readonly name: "afterBalance";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroCampaignId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroDeadline";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroRoot";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroStatementHash";
readonly inputs: readonly [];
}];
export declare const earnRouter: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "allowedZoneId_";
readonly type: "uint32";
}, {
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "privateAsset_";
readonly type: "address";
}, {
readonly name: "tokenAuthority_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "allowedZoneId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "onWithdrawalReceived";
readonly inputs: readonly [{
readonly name: "sourceZoneId";
readonly type: "uint32";
}, {
readonly name: "sourcePortal";
readonly type: "address";
}, {
readonly name: "";
readonly type: "bytes32";
}, {
readonly name: "token";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint128";
}, {
readonly name: "callbackData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes4";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "privateAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "reserveToken";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsFlow";
readonly inputs: readonly [{
readonly name: "flow";
readonly type: "uint8";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "tokenAuthority";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transactionLimit";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vaultAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "EarnDeposit";
readonly inputs: readonly [{
readonly name: "actionId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "inputToken";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "inputAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "vaultAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "zoneDepositHash";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnRedeem";
readonly inputs: readonly [{
readonly name: "actionId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "outputToken";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "vaultAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "outputAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "zoneDepositHash";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AmountExceedsLimit";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AmountOverflow";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "BadFlow";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientOutput";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidAuthority";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidPrivateAsset";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidReturnToken";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidRoutePair";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidSourcePortal";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidTransactionLimit";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotZoneMessenger";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ResidualBalance";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "WrongInputToken";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "WrongSourceZone";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}];
export declare const earnVault: readonly [{
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "MAX_REWARD_RATE_MULTIPLIER";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "absorbEngineShareSurplus";
readonly inputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptDistributor";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accrueFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "anchorEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "anchorEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asyncJanitor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cancelDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelDistributorTransfer";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "minReceiverEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "contribute";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "receivedEngineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "convertEngineSharesToEarnShares";
readonly inputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "convertToEngineShares";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositVenueShares";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositsPaused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "disableFees";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "distributor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "distributorFee";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "distributorUpdateDelay";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "emergencyGuardian";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engine";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engineMigrationMode";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint8";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "executeDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "feeConfigId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "finalizeRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "asset_";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "engine_";
readonly type: "address";
}, {
readonly name: "earnShare_";
readonly type: "address";
}, {
readonly name: "earnFees_";
readonly type: "address";
}, {
readonly name: "operator_";
readonly type: "address";
}, {
readonly name: "controlInit_";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorInit_";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isAccountingAligned";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "maxManagedAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "migrateEngine";
readonly inputs: readonly [{
readonly name: "newEngine";
readonly type: "address";
}, {
readonly name: "minNewEngineShares";
readonly type: "uint256";
}, {
readonly name: "minAssetsRetained";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "newEngineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "normalizedRewardRate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "openRedeemRequestCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "operator";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingDistributor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}, {
readonly name: "executableAt";
readonly type: "uint40";
}, {
readonly name: "pending";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "requester";
readonly type: "address";
}, {
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "open";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rawEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "remainingDepositCapacity";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}, {
readonly name: "engineData";
readonly type: "bytes";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "rewardRateBaseline";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "scheduleDistributorFeeUpdate";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setDepositsPaused";
readonly inputs: readonly [{
readonly name: "paused";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setEmergencyRoles";
readonly inputs: readonly [{
readonly name: "newGuardian";
readonly type: "address";
}, {
readonly name: "newJanitor";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setMaxManagedAssets";
readonly inputs: readonly [{
readonly name: "newMaxManagedAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "surplusEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferDistributor";
readonly inputs: readonly [{
readonly name: "newDistributor";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "withdrawExact";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "maxEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnSharesBurned";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "Contributed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DepositPauseChanged";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "paused";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdateCancelled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdateScheduled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "rateBps";
readonly type: "uint16";
readonly indexed: false;
}, {
readonly name: "executableAt";
readonly type: "uint40";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdated";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "rateBps";
readonly type: "uint16";
readonly indexed: false;
}, {
readonly name: "feeConfigId";
readonly type: "uint64";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferCancelled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "pendingDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferStarted";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "pendingDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferred";
readonly inputs: readonly [{
readonly name: "previousDistributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EmergencyRolesChanged";
readonly inputs: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "asyncJanitor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EngineMigrated";
readonly inputs: readonly [{
readonly name: "oldEngine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newEngine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assetsMoved";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "totalEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EngineShareSurplusAbsorbed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "MaxManagedAssetsChanged";
readonly inputs: readonly [{
readonly name: "previousMaxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newMaxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemCancelled";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemFinalized";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemRequested";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "requester";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VenueSharesDeposited";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedVenueShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "receivedEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "ActiveSupplyWithoutBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DepositsPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DistributorFeeUpdateNotPending";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DistributorFeeUpdateNotReady";
readonly inputs: readonly [{
readonly name: "executableAt";
readonly type: "uint40";
}];
}, {
readonly type: "error";
readonly name: "DistributorTransferNotPending";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DuplicateRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "EngineAssetMismatch";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineCapabilityUnsupported";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
}, {
readonly type: "error";
readonly name: "EngineEarnVaultMismatch";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineExitUnsupported";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ExceedsMaxEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ExcessiveConversionLoss";
readonly inputs: readonly [{
readonly name: "inputShares";
readonly type: "uint256";
}, {
readonly name: "representedShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ExcessiveMigrationClassificationError";
readonly inputs: readonly [{
readonly name: "expectedManagedAssets";
readonly type: "uint256";
}, {
readonly name: "actualManagedAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "FeeValuationStale";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "FinalizedAssetMismatch";
readonly inputs: readonly [{
readonly name: "finalizedAsset";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "GlobalFeeDisableUnavailable";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InitialEarnShareSupplyNotZero";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientEngineShareSurplus";
readonly inputs: readonly [{
readonly name: "available";
readonly type: "uint256";
}, {
readonly name: "requested";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InsufficientOutput";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidDistributorConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidDistributorFeeConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEngineShareScale";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "MaxManagedAssetsExceeded";
readonly inputs: readonly [{
readonly name: "maximum";
readonly type: "uint256";
}, {
readonly name: "actual";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumAssetsNotMet";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumEarnSharesNotMet";
readonly inputs: readonly [{
readonly name: "minimumEarnShares";
readonly type: "uint256";
}, {
readonly name: "actualEarnShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumEngineSharesNotMet";
readonly inputs: readonly [{
readonly name: "minimumEngineShares";
readonly type: "uint256";
}, {
readonly name: "actualEngineShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "NoEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotDistributor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEmergencyGuardianOrOperator";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotOperator";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotPendingDistributor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotRequesterOrJanitor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OperatorMigrationDisabled";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "PendingRedeemsOpen";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RequestNotOpen";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "ResidualBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RewardRateLimitExceeded";
readonly inputs: readonly [{
readonly name: "normalizedRate";
readonly type: "uint256";
}, {
readonly name: "baselineRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "SameEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumAssets";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEngineShares";
readonly inputs: readonly [];
}];
export declare const erc4626Engine: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "vault_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}, {
readonly name: "nameOverride_";
readonly type: "string";
}, {
readonly name: "symbolOverride_";
readonly type: "string";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "baseAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositInKind";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "from";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineSharesReceived";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "finalOwner_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnVaultInitialized";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VenueSharesDeposited";
readonly inputs: readonly [{
readonly name: "from";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedVenueShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "receivedEngineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EarnVaultNotSet";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientAssetsReceived";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidVenueShareDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoVenueSharesReceived";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TransferFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedAssetsReceived";
readonly inputs: readonly [{
readonly name: "expectedAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesBurned";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}];
export declare const erc4626EngineFactory: readonly [{
readonly type: "function";
readonly name: "ENGINE_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "computeEngineSalt";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "deploy";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "engine";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "predictEngine";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "ERC4626EngineDeployed";
readonly inputs: readonly [{
readonly name: "engine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "vault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "owner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "deploymentId";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "engineSalt";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "EmptyDeploymentId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineAlreadyExists";
readonly inputs: readonly [{
readonly name: "engine";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "FactoryCannotBeFinalOwner";
readonly inputs: readonly [];
}];
export declare const vedaEngine: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "peripheryRegistry_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}, {
readonly name: "maxRateAge_";
readonly type: "uint64";
}, {
readonly name: "name_";
readonly type: "string";
}, {
readonly name: "symbol_";
readonly type: "string";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accountant";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "accountantRateUpdatedAt";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "authorizedForwarder";
readonly inputs: readonly [{
readonly name: "forwarder";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "authorized";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "baseAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimQueue";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claimRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "finalizeOneExternal";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "forwardSolved";
readonly inputs: readonly [{
readonly name: "requestIds";
readonly type: "bytes32[]";
}, {
readonly name: "asset_";
readonly type: "address";
}, {
readonly name: "delta";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "claimed";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "getClaim";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "status";
readonly type: "uint8";
}, {
readonly name: "request";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "nonce";
readonly type: "uint96";
}, {
readonly name: "user";
readonly type: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
}, {
readonly name: "amountOfShares";
readonly type: "uint128";
}, {
readonly name: "amountOfAssets";
readonly type: "uint128";
}, {
readonly name: "creationTime";
readonly type: "uint40";
}, {
readonly name: "secondsToMaturity";
readonly type: "uint24";
}, {
readonly name: "secondsToDeadline";
readonly type: "uint24";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "finalOwner_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "maxRateAge";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "openClaimsByQueue";
readonly inputs: readonly [{
readonly name: "requestQueue";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "count";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "peripheryRegistry";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "peripheryVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "queue";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "recoverExternalSettlement";
readonly inputs: readonly [{
readonly name: "requestIds";
readonly type: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "claimed";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "requestData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setAuthorizedForwarder";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "authorized";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setMaxRateAge";
readonly inputs: readonly [{
readonly name: "newMaxRateAge";
readonly type: "uint64";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settled";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "sweepDust";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
}, {
readonly name: "to";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "syncVedaPeriphery";
readonly inputs: readonly [{
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "teller";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "unresolvedClaimCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "AuthorizedForwarderChanged";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "authorized";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DustSwept";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnVaultInitialized";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "ExternalSettlementRecovered";
readonly inputs: readonly [{
readonly name: "requestCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "recoveredAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "claimed";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FinalizeFailed";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Finalized";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "MaxRateAgeUpdated";
readonly inputs: readonly [{
readonly name: "oldMaxRateAge";
readonly type: "uint64";
readonly indexed: false;
}, {
readonly name: "newMaxRateAge";
readonly type: "uint64";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemCancelledOnQueue";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint128";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemClaimed";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemRequested";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "assetOut";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint128";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Settled";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newTotal";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Unearmarked";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newTotal";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VedaPeripheryUpdated";
readonly inputs: readonly [{
readonly name: "registryVersion";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "oldTeller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldQueue";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldAccountant";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newTeller";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newQueue";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newAccountant";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "validatedRate";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AssetsNotArrived";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "BaseAssetSweepBlocked";
readonly inputs: readonly [{
readonly name: "unresolvedClaims";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "CannotSweepEngineBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ClaimNotClaimable";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "ClaimNotOpen";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "CreditExceedsBalance";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}, {
readonly name: "have";
readonly type: "uint256";
}, {
readonly name: "wantTotal";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "DepositsNotPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DuplicateRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "EarnVaultNotSet";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineSharesTooLarge";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InsufficientAssetsReceived";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidAsset";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidMaxRateAge";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidRateTimestamp";
readonly inputs: readonly [{
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly name: "currentTime";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidTrackedRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaPeriphery";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaPeripheryWiring";
readonly inputs: readonly [{
readonly name: "component";
readonly type: "address";
}, {
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaRateBounds";
readonly inputs: readonly [{
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidVenueShareDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoPublishedVedaPeriphery";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoRecoverableClaims";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoVenueSharesReceived";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotAuthorizedForwarder";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "NotSelf";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "QueueTrackingDisabled";
readonly inputs: readonly [{
readonly name: "queue";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "QueueUnavailable";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RateChangedWithinTransaction";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint256";
}, {
readonly name: "actual";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RegistryEngineMismatch";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "SolveUnderfunded";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}, {
readonly name: "delivered";
readonly type: "uint256";
}, {
readonly name: "required";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "StaleAccountantRate";
readonly inputs: readonly [{
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly name: "currentTime";
readonly type: "uint256";
}, {
readonly name: "maxAge";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "SweepExceedsAvailableBalance";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
}, {
readonly name: "available";
readonly type: "uint256";
}, {
readonly name: "requested";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "TransferFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedAssetsReceived";
readonly inputs: readonly [{
readonly name: "expectedAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesBurned";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesQueued";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnsupportedAccountantFreshness";
readonly inputs: readonly [{
readonly name: "accountant";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "VedaRateOutOfBounds";
readonly inputs: readonly [{
readonly name: "rate";
readonly type: "uint256";
}, {
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}];
export declare const earnRouterCallbackData: readonly [{
readonly components: readonly [{
readonly name: "flow";
readonly type: "uint8";
}, {
readonly name: "minVaultAssets";
readonly type: "uint128";
}, {
readonly name: "minEarnShares";
readonly type: "uint128";
}, {
readonly name: "minOutputAmount";
readonly type: "uint128";
}, {
readonly name: "actionId";
readonly type: "bytes32";
}, {
readonly components: readonly [{
readonly name: "keyIndex";
readonly type: "uint256";
}, {
readonly components: readonly [{
readonly name: "ephemeralPubkeyX";
readonly type: "bytes32";
}, {
readonly name: "ephemeralPubkeyYParity";
readonly type: "uint8";
}, {
readonly name: "ciphertext";
readonly type: "bytes";
}, {
readonly name: "nonce";
readonly type: "bytes12";
}, {
readonly name: "tag";
readonly type: "bytes16";
}];
readonly name: "encrypted";
readonly type: "tuple";
}, {
readonly name: "refundRecipient";
readonly type: "address";
}];
readonly name: "zoneReturn";
readonly type: "tuple";
}];
readonly name: "callbackData";
readonly type: "tuple";
}];
export declare const zoneOutbox: readonly [{
readonly name: "tempoGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "maxWithdrawalsPerBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "lastBatch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
}];
}];
}, {
readonly name: "lastFinalizedTimestamp";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "nextWithdrawalIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "lastFallbackNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "pendingWithdrawalsCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "getPendingWithdrawals";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "bytes32";
readonly name: "txHash";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
}];
}, {
readonly name: "consumeFallbackRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "fallbackNonce";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "recipient";
}];
}, {
readonly name: "calculateWithdrawalFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "gasLimit";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "MAX_CALLBACK_DATA_SIZE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "MAX_WITHDRAWAL_GAS_LIMIT";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "WITHDRAWAL_BASE_GAS";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "REVEAL_TO_KEY_LENGTH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "AUTHENTICATED_WITHDRAWAL_CIPHERTEXT_LENGTH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "setTempoGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "_tempoGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setMaxWithdrawalsPerBlock";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "_maxWithdrawalsPerBlock";
}];
readonly outputs: readonly [];
}, {
readonly name: "requestWithdrawal";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "address";
readonly name: "zoneFallbackRecipient";
}, {
readonly type: "bytes";
readonly name: "data";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
readonly outputs: readonly [];
}, {
readonly name: "enqueueDepositBounceBack";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "finalizeWithdrawalBatch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "count";
}, {
readonly type: "uint64";
readonly name: "blockNumber";
}, {
readonly type: "bytes[]";
readonly name: "encryptedSenders";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}];
}, {
readonly name: "WithdrawalRequested";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "withdrawalIndex";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "fee";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "data";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
}, {
readonly name: "BatchFinalized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
}];
}, {
readonly name: "TempoGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "tempoGasRate";
}];
}, {
readonly name: "MaxWithdrawalsPerBlockUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "maxWithdrawalsPerBlock";
}];
}, {
readonly name: "OnlySequencer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasLimitTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OnlyZoneInbox";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidWithdrawalCount";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidEncryptedSenderCount";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidEncryptedSenderLength";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidFallbackRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackDataTooLarge";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasFeeRateTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TransferFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidBlockNumber";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TooManyWithdrawalsThisBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRevealTo";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCurrentTxHash";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroAmountWithdrawal";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "StaticCallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}];
export declare const zoneMessenger: readonly [{
readonly name: "relayMessage";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "senderTag";
}, {
readonly type: "address";
readonly name: "target";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "bytes";
readonly name: "data";
}];
readonly outputs: readonly [];
}];
export declare const zoneVerifier: readonly [{
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}, {
readonly type: "uint64";
readonly name: "anchorBlockNumber";
}, {
readonly type: "bytes32";
readonly name: "anchorBlockHash";
}, {
readonly type: "uint64";
readonly name: "expectedWithdrawalBatchIndex";
}, {
readonly type: "tuple";
readonly name: "blockTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevBlockHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}];
}, {
readonly type: "tuple";
readonly name: "depositQueueTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevProcessedHash";
}, {
readonly type: "bytes32";
readonly name: "nextProcessedHash";
}, {
readonly type: "uint64";
readonly name: "prevDepositNumber";
}, {
readonly type: "uint64";
readonly name: "nextDepositNumber";
}];
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "bytes";
readonly name: "verifierConfig";
}, {
readonly type: "bytes";
readonly name: "proof";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}];
export declare const core: readonly [{
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeAdminKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnKeyAuthorizationWitness";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateSpendingLimit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
readonly outputs: readonly [];
}, {
readonly name: "setAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "removeAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "target";
}];
readonly outputs: readonly [];
}, {
readonly name: "getKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "bool";
readonly name: "isRevoked";
}];
}];
}, {
readonly name: "getRemainingLimit";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}];
}, {
readonly name: "getRemainingLimitWithPeriod";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}, {
readonly type: "uint64";
readonly name: "periodEnd";
}];
}, {
readonly name: "getAllowedCalls";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isScoped";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly name: "isKeyAuthorizationWitnessBurned";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAdminKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTransactionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "KeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}];
}, {
readonly name: "AdminKeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "KeyRevoked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "SpendingLimitUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
}, {
readonly name: "AccessKeySpend";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "remainingLimit";
}];
}, {
readonly name: "KeyAuthorizationWitness";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "KeyAuthorizationWitnessBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "UnauthorizedCaller";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SpendingLimitExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSpendingLimit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiryInPast";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyRevoked";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SignatureTypeMismatch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "expected";
}, {
readonly type: "uint8";
readonly name: "actual";
}];
}, {
readonly name: "CallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCallScope";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyAuthorizationWitness";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAuthorizationWitnessAlreadyBurned";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LegacyAuthorizeKeySelectorChanged";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "newSelector";
}];
}, {
readonly name: "registerVirtualMaster";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
}, {
readonly name: "getMaster";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "resolveRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "effectiveRecipient";
}];
}, {
readonly name: "resolveVirtualAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "virtualAddr";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "isVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "decodeVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isVirtual";
}, {
readonly type: "bytes4";
readonly name: "masterId";
}, {
readonly type: "bytes6";
readonly name: "userTag";
}];
}, {
readonly name: "isImplicitlyApproved";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "MasterRegistered";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "masterAddress";
readonly indexed: true;
}];
}, {
readonly name: "MasterIdCollision";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "InvalidMasterAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProofOfWorkFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressUnregistered";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "getCommitteeMembers";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}, {
readonly type: "bytes32[]";
readonly name: "publicKeys";
}];
}, {
readonly name: "setCommitteeMembers";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}, {
readonly type: "bytes32[]";
readonly name: "publicKeys";
}];
readonly outputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "M";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "N";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "SCALE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "MIN_LIQUIDITY";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "getPoolId";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "getPool";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "reserveUserToken";
}, {
readonly type: "uint128";
readonly name: "reserveValidatorToken";
}];
}];
}, {
readonly name: "pools";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "reserveUserToken";
}, {
readonly type: "uint128";
readonly name: "reserveValidatorToken";
}];
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "liquidity";
}];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amountUserToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "liquidityBalances";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "rebalanceSwap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "amountOut";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amountIn";
}];
}, {
readonly name: "Mint";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}];
}, {
readonly name: "Burn";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountUserToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}, {
readonly type: "address";
readonly name: "to";
}];
}, {
readonly name: "RebalanceSwap";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "swapper";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountIn";
}, {
readonly type: "uint256";
readonly name: "amountOut";
}];
}, {
readonly name: "IdenticalAddresses";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientReserves";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAmount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DivisionByZero";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSwapCalculation";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "userTokens";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validatorTokens";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "setUserToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "setValidatorToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "distributeFees";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "collectedFees";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "UserTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "FeesDistributed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientFeeTokenBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CannotChangeWithinBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "deriveAccount";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
}, {
readonly name: "getConfigCommitment";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "commitment";
}];
}, {
readonly name: "updateConfig";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "current";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint64";
readonly name: "version";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "MultisigConfigUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint64";
readonly name: "version";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
}, {
readonly name: "InvalidAccount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidConfig";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidThreshold";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidMultisigOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidWeight";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TooManyOwners";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidOwnerOrder";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedMultisigCaller";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "getNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint256";
readonly name: "nonceKey";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
}];
}, {
readonly name: "NonceIncremented";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "nonceKey";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newNonce";
}];
}, {
readonly name: "ProtocolNonceNotSupported";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidNonceKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NonceOverflow";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceReplay";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceSetFull";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidExpiringNonceExpiry";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "claim";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlockedReceipt";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "TransferBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
}, {
readonly name: "ReceiptClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "ReceiptBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidReceipt";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClaimAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedClaimer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "recover";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "signer";
}];
}, {
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "signer";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychain";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychainAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "InvalidFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "createPair";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
}];
}, {
readonly name: "place";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "placeFlip";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "cancel";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "cancelStaleOrder";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "swapExactAmountIn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}, {
readonly type: "uint128";
readonly name: "minAmountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "swapExactAmountOut";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}, {
readonly type: "uint128";
readonly name: "maxAmountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "quoteSwapExactAmountIn";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "quoteSwapExactAmountOut";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "getOrder";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}, {
readonly type: "address";
readonly name: "maker";
}, {
readonly type: "bytes32";
readonly name: "bookKey";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "remaining";
}, {
readonly type: "uint128";
readonly name: "prev";
}, {
readonly type: "uint128";
readonly name: "next";
}, {
readonly type: "bool";
readonly name: "isFlip";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}];
}, {
readonly name: "getTickLevel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isBid";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "head";
}, {
readonly type: "uint128";
readonly name: "tail";
}, {
readonly type: "uint128";
readonly name: "totalLiquidity";
}];
}, {
readonly name: "pairKey";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenA";
}, {
readonly type: "address";
readonly name: "tokenB";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "nextOrderId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "books";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "pairKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "address";
readonly name: "quote";
}, {
readonly type: "int16";
readonly name: "bestBidTick";
}, {
readonly type: "int16";
readonly name: "bestAskTick";
}];
}];
}, {
readonly name: "bookIndexForKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "bookKey";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "set";
}, {
readonly type: "uint32";
readonly name: "index";
}];
}, {
readonly name: "bookKeyForIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "bookKey";
}];
}, {
readonly name: "setBookIndex";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "index";
}];
readonly outputs: readonly [];
}, {
readonly name: "storageCredits";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
}, {
readonly name: "MIN_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "MAX_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "TICK_SPACING";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "PRICE_SCALE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MIN_ORDER_AMOUNT";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MIN_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MAX_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "tickToPrice";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
}, {
readonly name: "priceToTick";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
readonly outputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "PairCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "base";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "quote";
readonly indexed: true;
}];
}, {
readonly name: "OrderPlaced";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isFlipOrder";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "OrderFilled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "taker";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amountFilled";
}, {
readonly type: "bool";
readonly name: "partialFill";
}];
}, {
readonly name: "OrderFlipped";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "FlipFailed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "bytes4";
readonly name: "reason";
}];
}, {
readonly name: "OrderCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IdenticalTokens";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TickOutOfBounds";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "InvalidTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidFlipTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientOutput";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MaxInputExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "BelowMinimumOrderSize";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "InvalidBaseToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderNotStale";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IndexAlreadySet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "modeOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "budgetOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "newMode";
}];
readonly outputs: readonly [];
}, {
readonly name: "setBudget";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
readonly outputs: readonly [];
}, {
readonly name: "InvalidMode";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OnlyDirectCall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "name";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "symbol";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "decimals";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "quoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "nextQuoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transfer";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "approve";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "allowance";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transferFrom";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "currency";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "supplyCap";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "transferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "logoURI";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setLogoURI";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "newLogoURI";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlocked";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "mintWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferFromWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "changeTransferPolicyId";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newPolicyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSupplyCap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "newSupplyCap";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "unpause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "setNextQuoteToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newQuoteToken";
}];
readonly outputs: readonly [];
}, {
readonly name: "completeQuoteTokenUpdate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "PAUSE_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "UNPAUSE_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "ISSUER_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "BURN_BLOCKED_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "permit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "value";
}, {
readonly type: "uint256";
readonly name: "deadline";
}, {
readonly type: "uint8";
readonly name: "v";
}, {
readonly type: "bytes32";
readonly name: "r";
}, {
readonly type: "bytes32";
readonly name: "s";
}];
readonly outputs: readonly [];
}, {
readonly name: "nonces";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "DOMAIN_SEPARATOR";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "distributeReward";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "setRewardRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "recipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "claimRewards";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "optedInSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "globalRewardPerToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "userRewardInfo";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "rewardRecipient";
}, {
readonly type: "uint256";
readonly name: "rewardPerToken";
}, {
readonly type: "uint256";
readonly name: "rewardBalance";
}];
}];
}, {
readonly name: "getPendingRewards";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "Transfer";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Approval";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "spender";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Mint";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Burn";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "BurnBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "TransferWithMemo";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
readonly indexed: true;
}];
}, {
readonly name: "TransferPolicyUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newPolicyId";
readonly indexed: true;
}];
}, {
readonly name: "SupplyCapUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newSupplyCap";
readonly indexed: true;
}];
}, {
readonly name: "PauseStateUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "isPaused";
}];
}, {
readonly name: "NextQuoteTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "nextQuoteToken";
readonly indexed: true;
}];
}, {
readonly name: "QuoteTokenUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newQuoteToken";
readonly indexed: true;
}];
}, {
readonly name: "RewardDistributed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "funder";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "RewardRecipientSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "holder";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "recipient";
readonly indexed: true;
}];
}, {
readonly name: "LogoURIUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "newLogoURI";
}];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "available";
}, {
readonly type: "uint256";
readonly name: "required";
}, {
readonly type: "address";
readonly name: "token";
}];
}, {
readonly name: "InsufficientAllowance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SupplyCapExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSupplyCap";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPayload";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyForbids";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ContractPaused";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCurrency";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuoteToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAmount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NoOptedInSupply";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProtectedAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Uninitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidTransferPolicyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PermitExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LogoURITooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidLogoURI";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "hasRole";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getRoleAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "grantRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [];
}, {
readonly name: "renounceRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [];
}, {
readonly name: "setRoleAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "bytes32";
readonly name: "adminRole";
}];
readonly outputs: readonly [];
}, {
readonly name: "RoleMembershipUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "hasRole";
}];
}, {
readonly name: "RoleAdminUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "newAdminRole";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CLOSE_GRACE_PERIOD";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "VOUCHER_TYPEHASH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "open";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}];
}, {
readonly name: "settle";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "topUp";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "additionalDeposit";
}];
readonly outputs: readonly [];
}, {
readonly name: "close";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "uint96";
readonly name: "captureAmount";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "requestClose";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "getChannel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "tuple";
readonly name: "state";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}];
}, {
readonly name: "getChannelState";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}, {
readonly name: "getChannelStatesBatch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32[]";
readonly name: "channelIds";
}];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}, {
readonly name: "computeChannelId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "getVoucherDigest";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "domainSeparator";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "storageCredits";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payer";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
}, {
readonly name: "ChannelOpened";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}, {
readonly type: "uint96";
readonly name: "deposit";
}];
}, {
readonly name: "Settled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "uint96";
readonly name: "deltaPaid";
}, {
readonly type: "uint96";
readonly name: "newSettled";
}];
}, {
readonly name: "TopUp";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "additionalDeposit";
}, {
readonly type: "uint96";
readonly name: "newDeposit";
}];
}, {
readonly name: "CloseRequested";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "closeGraceEnd";
}];
}, {
readonly name: "ChannelClosed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "settledToPayee";
}, {
readonly type: "uint96";
readonly name: "refundedToPayer";
}];
}, {
readonly name: "CloseRequestCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}];
}, {
readonly name: "ChannelAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ChannelNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPayer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPayeeOrOperator";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPayee";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroDeposit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceHashNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AmountExceedsDeposit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AmountNotIncreasing";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CaptureAmountInvalid";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CloseNotReady";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositOverflow";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "createToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "createToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "string";
readonly name: "logoURI";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "isTIP20";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTokenAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "TokenCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressNotReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuoteToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenAlreadyExists";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
}, {
readonly name: "policyIdCounter";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "policyExists";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "tokenTransferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isSet";
}, {
readonly type: "uint64";
readonly name: "policyId";
}];
}, {
readonly name: "policyData";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "uint8";
readonly name: "policyType";
}, {
readonly type: "address";
readonly name: "admin";
}];
}, {
readonly name: "isAuthorized";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedSender";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedMintRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "compoundPolicyData";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
}, {
readonly name: "receivePolicy";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "hasReceivePolicy";
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint8";
readonly name: "senderPolicyType";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "uint8";
readonly name: "tokenFilterType";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
}, {
readonly name: "validateReceivePolicy";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "address";
readonly name: "receiver";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "authorized";
}, {
readonly type: "uint8";
readonly name: "blockedReason";
}];
}, {
readonly name: "createPolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "uint8";
readonly name: "policyType";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "createPolicyWithAccounts";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "uint8";
readonly name: "policyType";
}, {
readonly type: "address[]";
readonly name: "accounts";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setPolicyAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "admin";
}];
readonly outputs: readonly [];
}, {
readonly name: "modifyPolicyWhitelist";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "modifyPolicyBlacklist";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "restricted";
}];
readonly outputs: readonly [];
}, {
readonly name: "createCompoundPolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setReceivePolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
readonly outputs: readonly [];
}, {
readonly name: "migrateTransferPolicyIds";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address[]";
readonly name: "tokens";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "migrated";
}];
}, {
readonly name: "PolicyAdminUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "admin";
readonly indexed: true;
}];
}, {
readonly name: "PolicyCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "policyType";
}];
}, {
readonly name: "WhitelistUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "allowed";
}];
}, {
readonly name: "BlacklistUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "restricted";
}];
}, {
readonly name: "CompoundPolicyCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "creator";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
}, {
readonly name: "ReceivePolicyUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyNotSimple";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IncompatiblePolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidReceivePolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRecoveryAuthority";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "getValidators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly name: "validators";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
}];
}, {
readonly name: "addValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newValidatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newValidatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "changeValidatorStatus";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "bool";
readonly name: "active";
}];
readonly outputs: readonly [];
}, {
readonly name: "changeValidatorStatusByIndex";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "bool";
readonly name: "active";
}];
readonly outputs: readonly [];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "changeOwner";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "getNextFullDkgCeremony";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setNextFullDkgCeremony";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "validatorsArray";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
}];
}, {
readonly name: "validatorCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotHostPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "field";
}, {
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "NotIpPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "field";
}, {
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "getActiveValidators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly name: "validators";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "getInitializedAtHeight";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validatorCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "validatorByIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "validatorByAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validatorAddress";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "validatorByPublicKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "getNextNetworkIdentityRotationEpoch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "isInitialized";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "addValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}];
}, {
readonly name: "deactivateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}];
readonly outputs: readonly [];
}, {
readonly name: "rotateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "setFeeRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "setIpAddresses";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferValidatorOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "address";
readonly name: "newAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "setNetworkIdentityRotationEpoch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "migrateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}];
readonly outputs: readonly [];
}, {
readonly name: "initializeIfMigrated";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "ValidatorAdded";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}];
}, {
readonly name: "ValidatorDeactivated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorRotated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "deactivatedIndex";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "oldPublicKey";
}, {
readonly type: "bytes32";
readonly name: "newPublicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "FeeRecipientUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "IpAddressesUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "ValidatorOwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "oldAddress";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newAddress";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "OwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "oldOwner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newOwner";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorMigrated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}];
}, {
readonly name: "NetworkIdentityRotationEpochSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "previousEpoch";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "nextEpoch";
readonly indexed: true;
}];
}, {
readonly name: "Initialized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "height";
}];
}, {
readonly name: "SkippedValidatorMigration";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IngressAlreadyExists";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "ingress";
}];
}, {
readonly name: "EmptyV1ValidatorSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidMigrationIndex";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidValidatorAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MigrationNotComplete";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotIp";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "NotIpPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "PublicKeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressAlreadyHasValidator";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorAlreadyDeactivated";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "transferOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "createZone";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "params";
readonly components: readonly [{
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address[]";
readonly name: "allowedAccounts";
}, {
readonly type: "address[]";
readonly name: "zoneGateways";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}];
}, {
readonly name: "nextZoneId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "zones";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "id";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly name: "info";
readonly components: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
}, {
readonly name: "isZonePortal";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "portal";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "OwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousOwner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newOwner";
readonly indexed: true;
}];
}, {
readonly name: "ZoneCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "portal";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenTransferPolicyNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClosedLoopConfig";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSequencerSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenMetadataTooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateAllowedAccount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateZoneGateway";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZoneCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "portal";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "messenger";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "sequencer";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "bytes32";
readonly name: "genesisBlockHash";
}, {
readonly type: "bytes32";
readonly name: "genesisTempoBlockHash";
}, {
readonly type: "uint64";
readonly name: "genesisTempoBlockNumber";
}];
}, {
readonly name: "createZone";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "params";
readonly components: readonly [{
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "sequencer";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "tuple";
readonly name: "zoneParams";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "genesisBlockHash";
}, {
readonly type: "bytes32";
readonly name: "genesisTempoBlockHash";
}, {
readonly type: "uint64";
readonly name: "genesisTempoBlockNumber";
}];
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}];
}, {
readonly name: "verifier";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "SequencerSetUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}];
}, {
readonly name: "TokenEnabled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}];
}, {
readonly name: "RoleUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "prev";
}, {
readonly type: "uint8";
readonly name: "next";
}];
}, {
readonly name: "EnforcementModesUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}];
}, {
readonly name: "LeaderUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousLeader";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newLeader";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "leaderEpoch";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "leaderActivationTempoBlock";
}];
}, {
readonly name: "zoneId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "admin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "messenger";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "isAccessEnforced";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setAccessMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "enforced";
}];
readonly outputs: readonly [];
}, {
readonly name: "isGatewayOpen";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setGatewayMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "enforced";
}];
readonly outputs: readonly [];
}, {
readonly name: "hasRole";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint8";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setAllowedAccount";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setGateway";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setPauseGuardian";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSequencerSet";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address[]";
readonly name: "newSequencers";
}, {
readonly type: "uint8";
readonly name: "newThreshold";
}];
readonly outputs: readonly [];
}, {
readonly name: "verifier";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "sequencerSetVersion";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "sequencerThreshold";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "zoneHeight";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "isSequencer";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "sequencerCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "sequencerAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "leader";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "leaderEpoch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "leaderActivationTempoBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setLeader";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newLeader";
}, {
readonly type: "uint64";
readonly name: "expectedEpoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "withdrawalBatchIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "blockHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "currentDepositQueueHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "lastSyncedTempoBlockNumber";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "withdrawalQueueHead";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "withdrawalQueueTail";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "withdrawalQueueSlot";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "queueIndex";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "calculateDepositFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "calculateBouncebackFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "depositCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "lastProcessedDepositNumber";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "FIXED_DEPOSIT_GAS";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_GAS_FEE_RATE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_TOKEN_METADATA_BYTES";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "areDepositsActive";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "tokenConfig";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bool";
readonly name: "enabled";
}, {
readonly type: "bool";
readonly name: "depositsActive";
}];
}];
}, {
readonly name: "initialize";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address[]";
readonly name: "allowedAccounts";
}, {
readonly type: "address[]";
readonly name: "zoneGateways";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "messenger";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
readonly outputs: readonly [];
}, {
readonly name: "deliverWithdrawal";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}];
readonly outputs: readonly [];
}, {
readonly name: "MAX_DEPOSITS_PER_TEMPO_BLOCK";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_WITHDRAWAL_GAS_LIMIT";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "pauseExpiry";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "abdicationEffectiveAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "processWithdrawals";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple[]";
readonly name: "withdrawals";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "senderTag";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}, {
readonly type: "bytes";
readonly name: "encryptedSender";
}];
}, {
readonly type: "bytes32";
readonly name: "remainingQueue";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "resume";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "abdicate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
readonly outputs: readonly [];
}, {
readonly name: "submitBatch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}, {
readonly type: "uint64";
readonly name: "recentTempoBlockNumber";
}, {
readonly type: "tuple";
readonly name: "blockTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevBlockHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}];
}, {
readonly type: "tuple";
readonly name: "depositQueueTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevProcessedHash";
}, {
readonly type: "bytes32";
readonly name: "nextProcessedHash";
}, {
readonly type: "uint64";
readonly name: "prevDepositNumber";
}, {
readonly type: "uint64";
readonly name: "nextDepositNumber";
}];
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "bytes";
readonly name: "verifierConfig";
}, {
readonly type: "bytes";
readonly name: "proof";
}, {
readonly type: "uint256";
readonly name: "nextZoneHeight";
}, {
readonly type: "bytes[]";
readonly name: "signatures";
}];
readonly outputs: readonly [];
}, {
readonly name: "enableToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "pauseDeposits";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "resumeDeposits";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "setZoneGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "newZoneGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setMaxTempoGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "newMaxTempoGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setBouncebackGas";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newBouncebackGas";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newAdmin";
}];
readonly outputs: readonly [];
}, {
readonly name: "acceptAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "rpcUrl";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setRpcUrl";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "rpcUrl";
}];
readonly outputs: readonly [];
}, {
readonly name: "deposit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "tuple";
readonly name: "encrypted";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}];
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
}];
}, {
readonly name: "depositEncrypted";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "tuple";
readonly name: "encrypted";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}];
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
}];
}, {
readonly name: "setSequencerEncryptionKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint8";
readonly name: "popV";
}, {
readonly type: "bytes32";
readonly name: "popR";
}, {
readonly type: "bytes32";
readonly name: "popS";
}];
readonly outputs: readonly [];
}, {
readonly name: "isTokenEnabled";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "enabledTokenCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "enabledTokenAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "tokenEnablementHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "zoneGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "maxTempoGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "bouncebackGas";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "pendingAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "refunds";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "owner";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "sequencerEncryptionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "address";
readonly name: "pubkey";
}];
}, {
readonly name: "encryptionKeyCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "encryptionKeyAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly name: "entry";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}];
}];
}, {
readonly name: "isEncryptionKeyValid";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "valid";
}, {
readonly type: "uint64";
readonly name: "expiresAtBlock";
}];
}, {
readonly name: "encryptionKeyAtBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}];
}, {
readonly name: "claimRefund";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "DepositMade";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "netAmount";
}, {
readonly type: "uint128";
readonly name: "fee";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}, {
readonly type: "uint64";
readonly name: "depositNumber";
}];
}, {
readonly name: "DepositsPaused";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "DepositsResumed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "PortalPaused";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}];
}, {
readonly name: "PortalResumed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}];
}, {
readonly name: "AbdicationScheduled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "effectiveAt";
}];
}, {
readonly name: "RpcUrlUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "rpcUrl";
}];
}, {
readonly name: "SequencerEncryptionKeyUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "address";
readonly name: "pubkey";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}];
}, {
readonly name: "BatchSubmitted";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "withdrawalQueueIndex";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "nextProcessedDepositQueueHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "uint64";
readonly name: "lastProcessedDepositNumber";
}];
}, {
readonly name: "WithdrawalProcessed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "senderTag";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "callbackSuccess";
}];
}, {
readonly name: "WithdrawalBounceBack";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "depositNumber";
}];
}, {
readonly name: "DepositBounceBack";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tempoRefundRecipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "bouncebackFee";
}];
}, {
readonly name: "DepositBounceBackPending";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tempoRefundRecipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "bouncebackFee";
}];
}, {
readonly name: "RefundClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "recipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "ZoneGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "zoneGasRate";
}];
}, {
readonly name: "MaxTempoGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "maxTempoGasRate";
}];
}, {
readonly name: "BouncebackGasUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "bouncebackGas";
}];
}, {
readonly name: "AdminTransferStarted";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "currentAdmin";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "pendingAdmin";
readonly indexed: true;
}];
}, {
readonly name: "AdminTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousAdmin";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newAdmin";
readonly indexed: true;
}];
}, {
readonly name: "NotSequencer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPauseAuthority";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CapabilityAbdicated";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
}, {
readonly name: "AbdicationAlreadyScheduled";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
}, {
readonly name: "PortalIsPaused";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPendingAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidProof";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidTempoBlockNumber";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotFactory";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotSelf";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MustDelegateCall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackRejected";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TransferFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ReentrantWithdrawal";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "EncryptionKeyExpired";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}, {
readonly type: "uint64";
readonly name: "supersededAtBlock";
}];
}, {
readonly name: "InvalidEncryptionKeyIndex";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}];
}, {
readonly name: "NoEncryptionKeySet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NoEncryptionKeyAtBlock";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "blockNumber";
}];
}, {
readonly name: "InvalidEphemeralPubkey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCiphertextLength";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidProofOfPossession";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositTooSmall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenEnablementBlockCapacityExceeded";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "maximum";
}];
}, {
readonly name: "TokenMetadataTooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasFeeRateTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositsNotActive";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenAlreadyEnabled";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenTransferPolicyNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidDepositTransition";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSequencerSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SequencerConfigurationUnchanged";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuorumCertificate";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackDidNotReturnToZone";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidBouncebackRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenNotEnabled";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositBlockCapacityExceeded";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "maximum";
}];
}, {
readonly name: "InvalidCallbackTarget";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AccountNotAllowed";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
}, {
readonly name: "InvalidLeader";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ActiveLeaderRemoved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LeaderAlreadyUpdatedThisBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "StaleLeadershipEpoch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "expected";
}, {
readonly type: "uint64";
readonly name: "actual";
}];
}, {
readonly name: "deposit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "_token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}];
export declare const earn: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "active";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "executeFunding";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fundedAssets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "fund";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fundedAssets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setActive";
readonly inputs: readonly [{
readonly name: "active_";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "ActiveSet";
readonly inputs: readonly [{
readonly name: "active";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Funded";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "fundedAssets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "EarnShareSupplyOutOfBounds";
readonly inputs: readonly [{
readonly name: "earnShareSupply";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "Inactive";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotSelf";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "scale";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "requestData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositInKind";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "from";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineSharesReceived";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "tip20Factory_";
readonly type: "address";
}, {
readonly name: "earnVaultImplementation_";
readonly type: "address";
}, {
readonly name: "earnFeesImplementation_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "DEFAULT_ADMIN_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "EARN_SHARE_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "FEES_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "computeEarnShareSalt";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "deploy";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "earnShare";
readonly type: "address";
}, {
readonly name: "earnVault";
readonly type: "address";
}, {
readonly name: "earnFees";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnFeesImplementation";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVaultImplementation";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "predictEarnFees";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "predictEarnShare";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "tip20Factory";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "EarnStackDeployed";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShare";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnFees";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engine";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "owner";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "deploymentId";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "emergencyGuardian";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "asyncJanitor";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "migrationMode";
readonly type: "uint8";
readonly indexed: false;
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
readonly indexed: false;
}, {
readonly name: "earnShareSalt";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "controlConfigHash";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "feeConfigHash";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "earnFeesSalt";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AdminRelinquishmentFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EarnShareAlreadyExists";
readonly inputs: readonly [{
readonly name: "earnShare";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "EarnShareSupplyNotZero";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyDeploymentId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyEarnShareMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineAlreadyBound";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "FactoryCannotBeFinalOwner";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "FailedDeployment";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientBalance";
readonly inputs: readonly [{
readonly name: "balance";
readonly type: "uint256";
}, {
readonly name: "needed";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidDistributorConfig";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnFeesImplementation";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVaultImplementation";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidTransferPolicy";
readonly inputs: readonly [{
readonly name: "policyId";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "IssuerGrantFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TransferPolicyMismatch";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint64";
}, {
readonly name: "actual";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "UnsupportedTransferPolicy";
readonly inputs: readonly [{
readonly name: "policyId";
readonly type: "uint64";
}, {
readonly name: "policyType";
readonly type: "uint8";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accrueFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "result";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
}, {
readonly name: "fixedFeeAssets";
readonly type: "uint256";
}, {
readonly name: "excessFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeEarnShares";
readonly type: "uint256";
}, {
readonly name: "preFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "postFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "allocationCount";
readonly type: "uint8";
}, {
readonly name: "allocations";
readonly type: "tuple[5]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
}];
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claim";
readonly inputs: readonly [{
readonly name: "to";
readonly type: "address";
}, {
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimableEarnShares";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "closeRedeemRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "currentFeeConfigId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "disableFees";
readonly inputs: readonly [{
readonly name: "operator";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeBaselinesPending";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeConfig";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeRemainder";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}, {
readonly name: "slot";
readonly type: "uint8";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feesActive";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feesDisabled";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "highWaterMark";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "earnShare_";
readonly type: "address";
}, {
readonly name: "initialConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeBaselines";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pendingFeeSnapshot";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "requestValue";
readonly type: "uint256";
}, {
readonly name: "highWaterValue";
readonly type: "uint256";
}, {
readonly name: "targetValue";
readonly type: "uint256";
}, {
readonly name: "feeConfigId";
readonly type: "uint64";
}, {
readonly name: "requestedAt";
readonly type: "uint40";
}, {
readonly name: "open";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewAccruedFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "result";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
}, {
readonly name: "fixedFeeAssets";
readonly type: "uint256";
}, {
readonly name: "excessFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeEarnShares";
readonly type: "uint256";
}, {
readonly name: "preFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "postFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "allocationCount";
readonly type: "uint8";
}, {
readonly name: "allocations";
readonly type: "tuple[5]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "recordRedeemRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "requestValue";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settleCancelledRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "returnedValue";
readonly type: "uint256";
}, {
readonly name: "activeSupply";
readonly type: "uint256";
}, {
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "totalReentryEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "shouldChargeRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "targetBase";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "targetStartedAt";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalClaimableEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "validateFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "FeeBaselinesInitialized";
readonly inputs: readonly [{
readonly name: "highWaterMark";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetBase";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetStartedAt";
readonly type: "uint40";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeConfigurationSet";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "configHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "reactivated";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeDustWaived";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "slot";
readonly type: "uint8";
readonly indexed: true;
}, {
readonly name: "remainder";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeEarnSharesAllocated";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "feeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeEarnSharesClaimed";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeesAccrued";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "activeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "highWaterMark";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeesDisabled";
readonly inputs: readonly [{
readonly name: "operator";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientClaimableEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidFeeClaimReceiver";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidFeeConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "treasury_";
readonly type: "address";
}, {
readonly name: "campaignId_";
readonly type: "bytes32";
}, {
readonly name: "claimDeadline_";
readonly type: "uint40";
}, {
readonly name: "owner_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "campaignId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claim";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
}, {
readonly name: "proof";
readonly type: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimDeadline";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cumulativePaid";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "cumulativeAmount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "fundWithAssets";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "leaf";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "merkleRoot";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "paused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "publishRoot";
readonly inputs: readonly [{
readonly name: "root";
readonly type: "bytes32";
}, {
readonly name: "totalEntitlement";
readonly type: "uint256";
}, {
readonly name: "statementHash_";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pushBatch";
readonly inputs: readonly [{
readonly name: "expectedRootVersion";
readonly type: "uint64";
}, {
readonly name: "recipients";
readonly type: "address[]";
}, {
readonly name: "cumulativeAmounts";
readonly type: "uint256[]";
}, {
readonly name: "multiproof";
readonly type: "bytes32[]";
}, {
readonly name: "proofFlags";
readonly type: "bool[]";
}];
readonly outputs: readonly [{
readonly name: "paidCount";
readonly type: "uint256";
}, {
readonly name: "paidEarnShares";
readonly type: "uint256";
}, {
readonly name: "skippedCount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "returnUnspent";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "rootTotalEntitlement";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rootVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "setPaused";
readonly inputs: readonly [{
readonly name: "paused_";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "statementHash";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalPaid";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "treasury";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "AssetsFunded";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BatchPushed";
readonly inputs: readonly [{
readonly name: "version";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "batchHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "attemptedCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "paidCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "paidEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "skippedCount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "PausedSet";
readonly inputs: readonly [{
readonly name: "paused";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "PayoutSkipped";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "reason";
readonly type: "uint8";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RewardClaimed";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RootPublished";
readonly inputs: readonly [{
readonly name: "version";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "root";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "statementHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "totalEntitlement";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "UnspentReturned";
readonly inputs: readonly [{
readonly name: "treasury";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "ClaimsExpired";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ClaimsNotExpired";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DepositsPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientFunding";
readonly inputs: readonly [{
readonly name: "requiredBalance";
readonly type: "uint256";
}, {
readonly name: "actualBalance";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidArrayLengths";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidMultiproof";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "MerkleProofInvalidMultiproof";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NothingOwed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnershipRenunciationDisabled";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "Paused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "PausedLiabilityIncrease";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrancyGuardReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RootTotalDecreased";
readonly inputs: readonly [{
readonly name: "previousTotal";
readonly type: "uint256";
}, {
readonly name: "nextTotal";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "RootTotalExceeded";
readonly inputs: readonly [{
readonly name: "requestedAmount";
readonly type: "uint256";
}, {
readonly name: "remainingEntitlement";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "StaleRootVersion";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint64";
}, {
readonly name: "actual";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedEarnShares";
readonly inputs: readonly [{
readonly name: "reported";
readonly type: "uint256";
}, {
readonly name: "measured";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedRetainedAssets";
readonly inputs: readonly [{
readonly name: "beforeBalance";
readonly type: "uint256";
}, {
readonly name: "afterBalance";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroCampaignId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroDeadline";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroRoot";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroStatementHash";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "allowedZoneId_";
readonly type: "uint32";
}, {
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "privateAsset_";
readonly type: "address";
}, {
readonly name: "tokenAuthority_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "allowedZoneId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "onWithdrawalReceived";
readonly inputs: readonly [{
readonly name: "sourceZoneId";
readonly type: "uint32";
}, {
readonly name: "sourcePortal";
readonly type: "address";
}, {
readonly name: "";
readonly type: "bytes32";
}, {
readonly name: "token";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint128";
}, {
readonly name: "callbackData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes4";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "privateAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "reserveToken";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsFlow";
readonly inputs: readonly [{
readonly name: "flow";
readonly type: "uint8";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "tokenAuthority";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transactionLimit";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vaultAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "EarnDeposit";
readonly inputs: readonly [{
readonly name: "actionId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "inputToken";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "inputAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "vaultAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "zoneDepositHash";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnRedeem";
readonly inputs: readonly [{
readonly name: "actionId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "outputToken";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "vaultAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "outputAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "zoneDepositHash";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AmountExceedsLimit";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AmountOverflow";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "BadFlow";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientOutput";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidAuthority";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidPrivateAsset";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidReturnToken";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidRoutePair";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidSourcePortal";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidTransactionLimit";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotZoneMessenger";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ResidualBalance";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "WrongInputToken";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "WrongSourceZone";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "MAX_REWARD_RATE_MULTIPLIER";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "absorbEngineShareSurplus";
readonly inputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptDistributor";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accrueFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "anchorEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "anchorEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asyncJanitor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cancelDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelDistributorTransfer";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "minReceiverEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "contribute";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "receivedEngineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "convertEngineSharesToEarnShares";
readonly inputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "convertToEngineShares";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositVenueShares";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositsPaused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "disableFees";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "distributor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "distributorFee";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "distributorUpdateDelay";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "emergencyGuardian";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engine";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engineMigrationMode";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint8";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "executeDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "feeConfigId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "finalizeRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "asset_";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "engine_";
readonly type: "address";
}, {
readonly name: "earnShare_";
readonly type: "address";
}, {
readonly name: "earnFees_";
readonly type: "address";
}, {
readonly name: "operator_";
readonly type: "address";
}, {
readonly name: "controlInit_";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorInit_";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isAccountingAligned";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "maxManagedAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "migrateEngine";
readonly inputs: readonly [{
readonly name: "newEngine";
readonly type: "address";
}, {
readonly name: "minNewEngineShares";
readonly type: "uint256";
}, {
readonly name: "minAssetsRetained";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "newEngineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "normalizedRewardRate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "openRedeemRequestCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "operator";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingDistributor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}, {
readonly name: "executableAt";
readonly type: "uint40";
}, {
readonly name: "pending";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "requester";
readonly type: "address";
}, {
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "open";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rawEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "remainingDepositCapacity";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}, {
readonly name: "engineData";
readonly type: "bytes";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "rewardRateBaseline";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "scheduleDistributorFeeUpdate";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setDepositsPaused";
readonly inputs: readonly [{
readonly name: "paused";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setEmergencyRoles";
readonly inputs: readonly [{
readonly name: "newGuardian";
readonly type: "address";
}, {
readonly name: "newJanitor";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setMaxManagedAssets";
readonly inputs: readonly [{
readonly name: "newMaxManagedAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "surplusEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferDistributor";
readonly inputs: readonly [{
readonly name: "newDistributor";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "withdrawExact";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "maxEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnSharesBurned";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "Contributed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DepositPauseChanged";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "paused";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdateCancelled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdateScheduled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "rateBps";
readonly type: "uint16";
readonly indexed: false;
}, {
readonly name: "executableAt";
readonly type: "uint40";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdated";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "rateBps";
readonly type: "uint16";
readonly indexed: false;
}, {
readonly name: "feeConfigId";
readonly type: "uint64";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferCancelled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "pendingDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferStarted";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "pendingDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferred";
readonly inputs: readonly [{
readonly name: "previousDistributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EmergencyRolesChanged";
readonly inputs: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "asyncJanitor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EngineMigrated";
readonly inputs: readonly [{
readonly name: "oldEngine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newEngine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assetsMoved";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "totalEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EngineShareSurplusAbsorbed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "MaxManagedAssetsChanged";
readonly inputs: readonly [{
readonly name: "previousMaxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newMaxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemCancelled";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemFinalized";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemRequested";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "requester";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VenueSharesDeposited";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedVenueShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "receivedEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "ActiveSupplyWithoutBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DepositsPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DistributorFeeUpdateNotPending";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DistributorFeeUpdateNotReady";
readonly inputs: readonly [{
readonly name: "executableAt";
readonly type: "uint40";
}];
}, {
readonly type: "error";
readonly name: "DistributorTransferNotPending";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DuplicateRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "EngineAssetMismatch";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineCapabilityUnsupported";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
}, {
readonly type: "error";
readonly name: "EngineEarnVaultMismatch";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineExitUnsupported";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ExceedsMaxEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ExcessiveConversionLoss";
readonly inputs: readonly [{
readonly name: "inputShares";
readonly type: "uint256";
}, {
readonly name: "representedShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ExcessiveMigrationClassificationError";
readonly inputs: readonly [{
readonly name: "expectedManagedAssets";
readonly type: "uint256";
}, {
readonly name: "actualManagedAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "FeeValuationStale";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "FinalizedAssetMismatch";
readonly inputs: readonly [{
readonly name: "finalizedAsset";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "GlobalFeeDisableUnavailable";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InitialEarnShareSupplyNotZero";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientEngineShareSurplus";
readonly inputs: readonly [{
readonly name: "available";
readonly type: "uint256";
}, {
readonly name: "requested";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InsufficientOutput";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidDistributorConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidDistributorFeeConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEngineShareScale";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "MaxManagedAssetsExceeded";
readonly inputs: readonly [{
readonly name: "maximum";
readonly type: "uint256";
}, {
readonly name: "actual";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumAssetsNotMet";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumEarnSharesNotMet";
readonly inputs: readonly [{
readonly name: "minimumEarnShares";
readonly type: "uint256";
}, {
readonly name: "actualEarnShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumEngineSharesNotMet";
readonly inputs: readonly [{
readonly name: "minimumEngineShares";
readonly type: "uint256";
}, {
readonly name: "actualEngineShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "NoEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotDistributor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEmergencyGuardianOrOperator";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotOperator";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotPendingDistributor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotRequesterOrJanitor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OperatorMigrationDisabled";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "PendingRedeemsOpen";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RequestNotOpen";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "ResidualBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RewardRateLimitExceeded";
readonly inputs: readonly [{
readonly name: "normalizedRate";
readonly type: "uint256";
}, {
readonly name: "baselineRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "SameEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumAssets";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEngineShares";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "vault_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}, {
readonly name: "nameOverride_";
readonly type: "string";
}, {
readonly name: "symbolOverride_";
readonly type: "string";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "baseAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositInKind";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "from";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineSharesReceived";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "finalOwner_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnVaultInitialized";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VenueSharesDeposited";
readonly inputs: readonly [{
readonly name: "from";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedVenueShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "receivedEngineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EarnVaultNotSet";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientAssetsReceived";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidVenueShareDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoVenueSharesReceived";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TransferFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedAssetsReceived";
readonly inputs: readonly [{
readonly name: "expectedAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesBurned";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "function";
readonly name: "ENGINE_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "computeEngineSalt";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "deploy";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "engine";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "predictEngine";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "ERC4626EngineDeployed";
readonly inputs: readonly [{
readonly name: "engine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "vault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "owner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "deploymentId";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "engineSalt";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "EmptyDeploymentId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineAlreadyExists";
readonly inputs: readonly [{
readonly name: "engine";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "FactoryCannotBeFinalOwner";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "peripheryRegistry_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}, {
readonly name: "maxRateAge_";
readonly type: "uint64";
}, {
readonly name: "name_";
readonly type: "string";
}, {
readonly name: "symbol_";
readonly type: "string";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accountant";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "accountantRateUpdatedAt";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "authorizedForwarder";
readonly inputs: readonly [{
readonly name: "forwarder";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "authorized";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "baseAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimQueue";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claimRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "finalizeOneExternal";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "forwardSolved";
readonly inputs: readonly [{
readonly name: "requestIds";
readonly type: "bytes32[]";
}, {
readonly name: "asset_";
readonly type: "address";
}, {
readonly name: "delta";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "claimed";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "getClaim";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "status";
readonly type: "uint8";
}, {
readonly name: "request";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "nonce";
readonly type: "uint96";
}, {
readonly name: "user";
readonly type: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
}, {
readonly name: "amountOfShares";
readonly type: "uint128";
}, {
readonly name: "amountOfAssets";
readonly type: "uint128";
}, {
readonly name: "creationTime";
readonly type: "uint40";
}, {
readonly name: "secondsToMaturity";
readonly type: "uint24";
}, {
readonly name: "secondsToDeadline";
readonly type: "uint24";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "finalOwner_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "maxRateAge";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "openClaimsByQueue";
readonly inputs: readonly [{
readonly name: "requestQueue";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "count";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "peripheryRegistry";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "peripheryVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "queue";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "recoverExternalSettlement";
readonly inputs: readonly [{
readonly name: "requestIds";
readonly type: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "claimed";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "requestData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setAuthorizedForwarder";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "authorized";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setMaxRateAge";
readonly inputs: readonly [{
readonly name: "newMaxRateAge";
readonly type: "uint64";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settled";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "sweepDust";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
}, {
readonly name: "to";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "syncVedaPeriphery";
readonly inputs: readonly [{
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "teller";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "unresolvedClaimCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "AuthorizedForwarderChanged";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "authorized";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DustSwept";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnVaultInitialized";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "ExternalSettlementRecovered";
readonly inputs: readonly [{
readonly name: "requestCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "recoveredAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "claimed";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FinalizeFailed";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Finalized";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "MaxRateAgeUpdated";
readonly inputs: readonly [{
readonly name: "oldMaxRateAge";
readonly type: "uint64";
readonly indexed: false;
}, {
readonly name: "newMaxRateAge";
readonly type: "uint64";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemCancelledOnQueue";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint128";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemClaimed";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemRequested";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "assetOut";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint128";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Settled";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newTotal";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Unearmarked";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newTotal";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VedaPeripheryUpdated";
readonly inputs: readonly [{
readonly name: "registryVersion";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "oldTeller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldQueue";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldAccountant";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newTeller";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newQueue";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newAccountant";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "validatedRate";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AssetsNotArrived";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "BaseAssetSweepBlocked";
readonly inputs: readonly [{
readonly name: "unresolvedClaims";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "CannotSweepEngineBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ClaimNotClaimable";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "ClaimNotOpen";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "CreditExceedsBalance";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}, {
readonly name: "have";
readonly type: "uint256";
}, {
readonly name: "wantTotal";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "DepositsNotPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DuplicateRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "EarnVaultNotSet";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineSharesTooLarge";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InsufficientAssetsReceived";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidAsset";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidMaxRateAge";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidRateTimestamp";
readonly inputs: readonly [{
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly name: "currentTime";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidTrackedRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaPeriphery";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaPeripheryWiring";
readonly inputs: readonly [{
readonly name: "component";
readonly type: "address";
}, {
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaRateBounds";
readonly inputs: readonly [{
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidVenueShareDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoPublishedVedaPeriphery";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoRecoverableClaims";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoVenueSharesReceived";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotAuthorizedForwarder";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "NotSelf";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "QueueTrackingDisabled";
readonly inputs: readonly [{
readonly name: "queue";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "QueueUnavailable";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RateChangedWithinTransaction";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint256";
}, {
readonly name: "actual";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RegistryEngineMismatch";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "SolveUnderfunded";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}, {
readonly name: "delivered";
readonly type: "uint256";
}, {
readonly name: "required";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "StaleAccountantRate";
readonly inputs: readonly [{
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly name: "currentTime";
readonly type: "uint256";
}, {
readonly name: "maxAge";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "SweepExceedsAvailableBalance";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
}, {
readonly name: "available";
readonly type: "uint256";
}, {
readonly name: "requested";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "TransferFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedAssetsReceived";
readonly inputs: readonly [{
readonly name: "expectedAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesBurned";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesQueued";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnsupportedAccountantFreshness";
readonly inputs: readonly [{
readonly name: "accountant";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "VedaRateOutOfBounds";
readonly inputs: readonly [{
readonly name: "rate";
readonly type: "uint256";
}, {
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}];
export declare const zone: readonly [{
readonly name: "relayMessage";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "senderTag";
}, {
readonly type: "address";
readonly name: "target";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "bytes";
readonly name: "data";
}];
readonly outputs: readonly [];
}, {
readonly name: "tempoGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "maxWithdrawalsPerBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "lastBatch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
}];
}];
}, {
readonly name: "lastFinalizedTimestamp";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "nextWithdrawalIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "lastFallbackNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "pendingWithdrawalsCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "getPendingWithdrawals";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "bytes32";
readonly name: "txHash";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
}];
}, {
readonly name: "consumeFallbackRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "fallbackNonce";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "recipient";
}];
}, {
readonly name: "calculateWithdrawalFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "gasLimit";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "MAX_CALLBACK_DATA_SIZE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "MAX_WITHDRAWAL_GAS_LIMIT";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "WITHDRAWAL_BASE_GAS";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "REVEAL_TO_KEY_LENGTH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "AUTHENTICATED_WITHDRAWAL_CIPHERTEXT_LENGTH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "setTempoGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "_tempoGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setMaxWithdrawalsPerBlock";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "_maxWithdrawalsPerBlock";
}];
readonly outputs: readonly [];
}, {
readonly name: "requestWithdrawal";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "address";
readonly name: "zoneFallbackRecipient";
}, {
readonly type: "bytes";
readonly name: "data";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
readonly outputs: readonly [];
}, {
readonly name: "enqueueDepositBounceBack";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "finalizeWithdrawalBatch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "count";
}, {
readonly type: "uint64";
readonly name: "blockNumber";
}, {
readonly type: "bytes[]";
readonly name: "encryptedSenders";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}];
}, {
readonly name: "WithdrawalRequested";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "withdrawalIndex";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "fee";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "data";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
}, {
readonly name: "BatchFinalized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
}];
}, {
readonly name: "TempoGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "tempoGasRate";
}];
}, {
readonly name: "MaxWithdrawalsPerBlockUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "maxWithdrawalsPerBlock";
}];
}, {
readonly name: "OnlySequencer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasLimitTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OnlyZoneInbox";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidWithdrawalCount";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidEncryptedSenderCount";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidEncryptedSenderLength";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidFallbackRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackDataTooLarge";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasFeeRateTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TransferFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidBlockNumber";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TooManyWithdrawalsThisBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRevealTo";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCurrentTxHash";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroAmountWithdrawal";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "StaticCallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}, {
readonly type: "uint64";
readonly name: "anchorBlockNumber";
}, {
readonly type: "bytes32";
readonly name: "anchorBlockHash";
}, {
readonly type: "uint64";
readonly name: "expectedWithdrawalBatchIndex";
}, {
readonly type: "tuple";
readonly name: "blockTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevBlockHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}];
}, {
readonly type: "tuple";
readonly name: "depositQueueTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevProcessedHash";
}, {
readonly type: "bytes32";
readonly name: "nextProcessedHash";
}, {
readonly type: "uint64";
readonly name: "prevDepositNumber";
}, {
readonly type: "uint64";
readonly name: "nextDepositNumber";
}];
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "bytes";
readonly name: "verifierConfig";
}, {
readonly type: "bytes";
readonly name: "proof";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}];
export declare const all: readonly [{
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "tuple";
readonly name: "config";
readonly components: readonly [{
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "tuple[]";
readonly name: "limits";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "period";
}];
}, {
readonly type: "bool";
readonly name: "allowAnyCalls";
}, {
readonly type: "tuple[]";
readonly name: "allowedCalls";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "authorizeAdminKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnKeyAuthorizationWitness";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateSpendingLimit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
readonly outputs: readonly [];
}, {
readonly name: "setAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "removeAllowedCalls";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "target";
}];
readonly outputs: readonly [];
}, {
readonly name: "getKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "uint64";
readonly name: "expiry";
}, {
readonly type: "bool";
readonly name: "enforceLimits";
}, {
readonly type: "bool";
readonly name: "isRevoked";
}];
}];
}, {
readonly name: "getRemainingLimit";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}];
}, {
readonly name: "getRemainingLimitWithPeriod";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "remaining";
}, {
readonly type: "uint64";
readonly name: "periodEnd";
}];
}, {
readonly name: "getAllowedCalls";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isScoped";
}, {
readonly type: "tuple[]";
readonly name: "scopes";
readonly components: readonly [{
readonly type: "address";
readonly name: "target";
}, {
readonly type: "tuple[]";
readonly name: "selectorRules";
readonly components: readonly [{
readonly type: "bytes4";
readonly name: "selector";
}, {
readonly type: "address[]";
readonly name: "recipients";
}];
}];
}];
}, {
readonly name: "isKeyAuthorizationWitnessBurned";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "witness";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAdminKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "address";
readonly name: "keyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTransactionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "KeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "signatureType";
}, {
readonly type: "uint64";
readonly name: "expiry";
}];
}, {
readonly name: "AdminKeyAuthorized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "KeyRevoked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}];
}, {
readonly name: "SpendingLimitUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newLimit";
}];
}, {
readonly name: "AccessKeySpend";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "publicKey";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "remainingLimit";
}];
}, {
readonly name: "KeyAuthorizationWitness";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "KeyAuthorizationWitnessBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "witness";
readonly indexed: true;
}];
}, {
readonly name: "UnauthorizedCaller";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SpendingLimitExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSpendingLimit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiryInPast";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAlreadyRevoked";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SignatureTypeMismatch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "expected";
}, {
readonly type: "uint8";
readonly name: "actual";
}];
}, {
readonly name: "CallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCallScope";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidKeyAuthorizationWitness";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "KeyAuthorizationWitnessAlreadyBurned";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LegacyAuthorizeKeySelectorChanged";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "newSelector";
}];
}, {
readonly name: "registerVirtualMaster";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
}, {
readonly name: "getMaster";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "resolveRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "effectiveRecipient";
}];
}, {
readonly name: "resolveVirtualAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "virtualAddr";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "isVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "decodeVirtualAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isVirtual";
}, {
readonly type: "bytes4";
readonly name: "masterId";
}, {
readonly type: "bytes6";
readonly name: "userTag";
}];
}, {
readonly name: "isImplicitlyApproved";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "addr";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "MasterRegistered";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes4";
readonly name: "masterId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "masterAddress";
readonly indexed: true;
}];
}, {
readonly name: "MasterIdCollision";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "master";
}];
}, {
readonly name: "InvalidMasterAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProofOfWorkFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressUnregistered";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "getCommitteeMembers";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}, {
readonly type: "bytes32[]";
readonly name: "publicKeys";
}];
}, {
readonly name: "setCommitteeMembers";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}, {
readonly type: "bytes32[]";
readonly name: "publicKeys";
}];
readonly outputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "M";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "N";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "SCALE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "MIN_LIQUIDITY";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "getPoolId";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "getPool";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "reserveUserToken";
}, {
readonly type: "uint128";
readonly name: "reserveValidatorToken";
}];
}];
}, {
readonly name: "pools";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "reserveUserToken";
}, {
readonly type: "uint128";
readonly name: "reserveValidatorToken";
}];
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "liquidity";
}];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amountUserToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "liquidityBalances";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "poolId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "rebalanceSwap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
}, {
readonly type: "address";
readonly name: "validatorToken";
}, {
readonly type: "uint256";
readonly name: "amountOut";
}, {
readonly type: "address";
readonly name: "to";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amountIn";
}];
}, {
readonly name: "Mint";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}];
}, {
readonly name: "Burn";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountUserToken";
}, {
readonly type: "uint256";
readonly name: "amountValidatorToken";
}, {
readonly type: "uint256";
readonly name: "liquidity";
}, {
readonly type: "address";
readonly name: "to";
}];
}, {
readonly name: "RebalanceSwap";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "userToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorToken";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "swapper";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amountIn";
}, {
readonly type: "uint256";
readonly name: "amountOut";
}];
}, {
readonly name: "IdenticalAddresses";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientReserves";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAmount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DivisionByZero";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSwapCalculation";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "userTokens";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validatorTokens";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "setUserToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "setValidatorToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "distributeFees";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "collectedFees";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "UserTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "FeesDistributed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientFeeTokenBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CannotChangeWithinBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "deriveAccount";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
}, {
readonly name: "getConfigCommitment";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "commitment";
}];
}, {
readonly name: "updateConfig";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "current";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint64";
readonly name: "version";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "MultisigConfigUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "uint64";
readonly name: "version";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "tuple[]";
readonly name: "owners";
readonly components: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "uint8";
readonly name: "weight";
}];
}];
}, {
readonly name: "InvalidAccount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidConfig";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidThreshold";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidMultisigOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidWeight";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TooManyOwners";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidOwnerOrder";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedMultisigCaller";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "getNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint256";
readonly name: "nonceKey";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
}];
}, {
readonly name: "NonceIncremented";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "nonceKey";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newNonce";
}];
}, {
readonly name: "ProtocolNonceNotSupported";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidNonceKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NonceOverflow";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceReplay";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceSetFull";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidExpiringNonceExpiry";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "claim";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlockedReceipt";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes";
readonly name: "receipt";
}];
readonly outputs: readonly [];
}, {
readonly name: "TransferBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "bytes";
readonly name: "receipt";
}];
}, {
readonly name: "ReceiptClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "ReceiptBurned";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "receiver";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedNonce";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "blockedAt";
}, {
readonly type: "uint8";
readonly name: "receiptVersion";
}, {
readonly type: "address";
readonly name: "originator";
}, {
readonly type: "address";
readonly name: "recipient";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}, {
readonly type: "address";
readonly name: "caller";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "InvalidReceipt";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClaimAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "UnauthorizedClaimer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "recover";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "signer";
}];
}, {
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "signer";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychain";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "verifyKeychainAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "hash";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "InvalidFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "createPair";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
}];
}, {
readonly name: "place";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "placeFlip";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
}, {
readonly name: "cancel";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "cancelStaleOrder";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [];
}, {
readonly name: "swapExactAmountIn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}, {
readonly type: "uint128";
readonly name: "minAmountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "swapExactAmountOut";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}, {
readonly type: "uint128";
readonly name: "maxAmountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "quoteSwapExactAmountIn";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountIn";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountOut";
}];
}, {
readonly name: "quoteSwapExactAmountOut";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenIn";
}, {
readonly type: "address";
readonly name: "tokenOut";
}, {
readonly type: "uint128";
readonly name: "amountOut";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amountIn";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}, {
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "getOrder";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint128";
readonly name: "orderId";
}, {
readonly type: "address";
readonly name: "maker";
}, {
readonly type: "bytes32";
readonly name: "bookKey";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "remaining";
}, {
readonly type: "uint128";
readonly name: "prev";
}, {
readonly type: "uint128";
readonly name: "next";
}, {
readonly type: "bool";
readonly name: "isFlip";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}];
}, {
readonly name: "getTickLevel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isBid";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "head";
}, {
readonly type: "uint128";
readonly name: "tail";
}, {
readonly type: "uint128";
readonly name: "totalLiquidity";
}];
}, {
readonly name: "pairKey";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tokenA";
}, {
readonly type: "address";
readonly name: "tokenB";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "nextOrderId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "books";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "pairKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "base";
}, {
readonly type: "address";
readonly name: "quote";
}, {
readonly type: "int16";
readonly name: "bestBidTick";
}, {
readonly type: "int16";
readonly name: "bestAskTick";
}];
}];
}, {
readonly name: "bookIndexForKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "bookKey";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "set";
}, {
readonly type: "uint32";
readonly name: "index";
}];
}, {
readonly name: "bookKeyForIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "bookKey";
}];
}, {
readonly name: "setBookIndex";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "index";
}];
readonly outputs: readonly [];
}, {
readonly name: "storageCredits";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
}, {
readonly name: "MIN_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "MAX_TICK";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "TICK_SPACING";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "int16";
}];
}, {
readonly name: "PRICE_SCALE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MIN_ORDER_AMOUNT";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MIN_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "MAX_PRICE";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "tickToPrice";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
}, {
readonly name: "priceToTick";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "price";
}];
readonly outputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "PairCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "key";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "base";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "quote";
readonly indexed: true;
}];
}, {
readonly name: "OrderPlaced";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "bool";
readonly name: "isFlipOrder";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "OrderFilled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "taker";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amountFilled";
}, {
readonly type: "bool";
readonly name: "partialFill";
}];
}, {
readonly name: "OrderFlipped";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "isBid";
}, {
readonly type: "int16";
readonly name: "tick";
}, {
readonly type: "int16";
readonly name: "flipTick";
}];
}, {
readonly name: "FlipFailed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "maker";
readonly indexed: true;
}, {
readonly type: "bytes4";
readonly name: "reason";
}];
}, {
readonly name: "OrderCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "orderId";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PairAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderDoesNotExist";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IdenticalTokens";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TickOutOfBounds";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "int16";
readonly name: "tick";
}];
}, {
readonly name: "InvalidTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidFlipTick";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientLiquidity";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InsufficientOutput";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MaxInputExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "BelowMinimumOrderSize";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "InvalidBaseToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OrderNotStale";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IndexAlreadySet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "modeOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "budgetOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "newMode";
}];
readonly outputs: readonly [];
}, {
readonly name: "setBudget";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
readonly outputs: readonly [];
}, {
readonly name: "InvalidMode";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OnlyDirectCall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "name";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "symbol";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "decimals";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "totalSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "quoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "nextQuoteToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "balanceOf";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transfer";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "approve";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "allowance";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "transferFrom";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "mint";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "burn";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "currency";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "supplyCap";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "transferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "logoURI";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setLogoURI";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "newLogoURI";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnBlocked";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "mintWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "burnWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferFromWithMemo";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "changeTransferPolicyId";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newPolicyId";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSupplyCap";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "newSupplyCap";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "unpause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "setNextQuoteToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newQuoteToken";
}];
readonly outputs: readonly [];
}, {
readonly name: "completeQuoteTokenUpdate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "PAUSE_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "UNPAUSE_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "ISSUER_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "BURN_BLOCKED_ROLE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "permit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}, {
readonly type: "address";
readonly name: "spender";
}, {
readonly type: "uint256";
readonly name: "value";
}, {
readonly type: "uint256";
readonly name: "deadline";
}, {
readonly type: "uint8";
readonly name: "v";
}, {
readonly type: "bytes32";
readonly name: "r";
}, {
readonly type: "bytes32";
readonly name: "s";
}];
readonly outputs: readonly [];
}, {
readonly name: "nonces";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
}];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "DOMAIN_SEPARATOR";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "distributeReward";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "amount";
}];
readonly outputs: readonly [];
}, {
readonly name: "setRewardRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "recipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "claimRewards";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "optedInSupply";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "globalRewardPerToken";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "userRewardInfo";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "address";
readonly name: "rewardRecipient";
}, {
readonly type: "uint256";
readonly name: "rewardPerToken";
}, {
readonly type: "uint256";
readonly name: "rewardBalance";
}];
}];
}, {
readonly name: "getPendingRewards";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "Transfer";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Approval";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "owner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "spender";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Mint";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "Burn";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "BurnBlocked";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "TransferWithMemo";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "from";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
readonly indexed: true;
}];
}, {
readonly name: "TransferPolicyUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "newPolicyId";
readonly indexed: true;
}];
}, {
readonly name: "SupplyCapUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "newSupplyCap";
readonly indexed: true;
}];
}, {
readonly name: "PauseStateUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "isPaused";
}];
}, {
readonly name: "NextQuoteTokenSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "nextQuoteToken";
readonly indexed: true;
}];
}, {
readonly name: "QuoteTokenUpdate";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newQuoteToken";
readonly indexed: true;
}];
}, {
readonly name: "RewardDistributed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "funder";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "amount";
}];
}, {
readonly name: "RewardRecipientSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "holder";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "recipient";
readonly indexed: true;
}];
}, {
readonly name: "LogoURIUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "newLogoURI";
}];
}, {
readonly name: "InsufficientBalance";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "available";
}, {
readonly type: "uint256";
readonly name: "required";
}, {
readonly type: "address";
readonly name: "token";
}];
}, {
readonly name: "InsufficientAllowance";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SupplyCapExceeded";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSupplyCap";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPayload";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyForbids";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ContractPaused";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCurrency";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuoteToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAmount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NoOptedInSupply";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ProtectedAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Uninitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidTransferPolicyId";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PermitExpired";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LogoURITooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidLogoURI";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "hasRole";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getRoleAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "grantRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [];
}, {
readonly name: "revokeRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [];
}, {
readonly name: "renounceRole";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}];
readonly outputs: readonly [];
}, {
readonly name: "setRoleAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
}, {
readonly type: "bytes32";
readonly name: "adminRole";
}];
readonly outputs: readonly [];
}, {
readonly name: "RoleMembershipUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "hasRole";
}];
}, {
readonly name: "RoleAdminUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "role";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "newAdminRole";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CLOSE_GRACE_PERIOD";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "VOUCHER_TYPEHASH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "open";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}];
}, {
readonly name: "settle";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "topUp";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "additionalDeposit";
}];
readonly outputs: readonly [];
}, {
readonly name: "close";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "uint96";
readonly name: "captureAmount";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "requestClose";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "withdraw";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [];
}, {
readonly name: "getChannel";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "tuple";
readonly name: "descriptor";
readonly components: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
}, {
readonly type: "tuple";
readonly name: "state";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}];
}, {
readonly name: "getChannelState";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}, {
readonly name: "getChannelStatesBatch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32[]";
readonly name: "channelIds";
}];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly components: readonly [{
readonly type: "uint96";
readonly name: "settled";
}, {
readonly type: "uint96";
readonly name: "deposit";
}, {
readonly type: "uint32";
readonly name: "closeRequestedAt";
}];
}];
}, {
readonly name: "computeChannelId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payer";
}, {
readonly type: "address";
readonly name: "payee";
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "getVoucherDigest";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "domainSeparator";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "storageCredits";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "payer";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "credits";
}];
}, {
readonly name: "ChannelOpened";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "operator";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "authorizedSigner";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "bytes32";
readonly name: "expiringNonceHash";
}, {
readonly type: "uint96";
readonly name: "deposit";
}];
}, {
readonly name: "Settled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "cumulativeAmount";
}, {
readonly type: "uint96";
readonly name: "deltaPaid";
}, {
readonly type: "uint96";
readonly name: "newSettled";
}];
}, {
readonly name: "TopUp";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "additionalDeposit";
}, {
readonly type: "uint96";
readonly name: "newDeposit";
}];
}, {
readonly name: "CloseRequested";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "closeGraceEnd";
}];
}, {
readonly name: "ChannelClosed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}, {
readonly type: "uint96";
readonly name: "settledToPayee";
}, {
readonly type: "uint96";
readonly name: "refundedToPayer";
}];
}, {
readonly name: "CloseRequestCancelled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "channelId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payer";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "payee";
readonly indexed: true;
}];
}, {
readonly name: "ChannelAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ChannelNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPayer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPayeeOrOperator";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPayee";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroDeposit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ExpiringNonceHashNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AmountExceedsDeposit";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AmountNotIncreasing";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CaptureAmountInvalid";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CloseNotReady";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositOverflow";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "createToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "createToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}, {
readonly type: "string";
readonly name: "logoURI";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "isTIP20";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "getTokenAddress";
readonly type: "function";
readonly stateMutability: "pure";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "TokenCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}, {
readonly type: "address";
readonly name: "quoteToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "bytes32";
readonly name: "salt";
}];
}, {
readonly name: "AddressReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressNotReserved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuoteToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenAlreadyExists";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
}, {
readonly name: "policyIdCounter";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "policyExists";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "tokenTransferPolicyId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "isSet";
}, {
readonly type: "uint64";
readonly name: "policyId";
}];
}, {
readonly name: "policyData";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "uint8";
readonly name: "policyType";
}, {
readonly type: "address";
readonly name: "admin";
}];
}, {
readonly name: "isAuthorized";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedSender";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "isAuthorizedMintRecipient";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "user";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "compoundPolicyData";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
}, {
readonly name: "receivePolicy";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "hasReceivePolicy";
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint8";
readonly name: "senderPolicyType";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "uint8";
readonly name: "tokenFilterType";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
}, {
readonly name: "validateReceivePolicy";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "address";
readonly name: "receiver";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "authorized";
}, {
readonly type: "uint8";
readonly name: "blockedReason";
}];
}, {
readonly name: "createPolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "uint8";
readonly name: "policyType";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "createPolicyWithAccounts";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "uint8";
readonly name: "policyType";
}, {
readonly type: "address[]";
readonly name: "accounts";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setPolicyAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "admin";
}];
readonly outputs: readonly [];
}, {
readonly name: "modifyPolicyWhitelist";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "modifyPolicyBlacklist";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
}, {
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "restricted";
}];
readonly outputs: readonly [];
}, {
readonly name: "createCompoundPolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setReceivePolicy";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
readonly outputs: readonly [];
}, {
readonly name: "migrateTransferPolicyIds";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address[]";
readonly name: "tokens";
}];
readonly outputs: readonly [{
readonly type: "uint256";
readonly name: "migrated";
}];
}, {
readonly name: "PolicyAdminUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "admin";
readonly indexed: true;
}];
}, {
readonly name: "PolicyCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "policyType";
}];
}, {
readonly name: "WhitelistUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "allowed";
}];
}, {
readonly name: "BlacklistUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "updater";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "bool";
readonly name: "restricted";
}];
}, {
readonly name: "CompoundPolicyCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "policyId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "creator";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "recipientPolicyId";
}, {
readonly type: "uint64";
readonly name: "mintRecipientPolicyId";
}];
}, {
readonly name: "ReceivePolicyUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "senderPolicyId";
}, {
readonly type: "uint64";
readonly name: "tokenFilterId";
}, {
readonly type: "address";
readonly name: "recoveryAuthority";
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "PolicyNotSimple";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IncompatiblePolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "VirtualAddressNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidReceivePolicyType";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRecoveryAuthority";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "getValidators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly name: "validators";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
}];
}, {
readonly name: "addValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newValidatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "updateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newValidatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "changeValidatorStatus";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}, {
readonly type: "bool";
readonly name: "active";
}];
readonly outputs: readonly [];
}, {
readonly name: "changeValidatorStatusByIndex";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "bool";
readonly name: "active";
}];
readonly outputs: readonly [];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "changeOwner";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "getNextFullDkgCeremony";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setNextFullDkgCeremony";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "validatorsArray";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validator";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "bool";
readonly name: "active";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "inboundAddress";
}, {
readonly type: "string";
readonly name: "outboundAddress";
}];
}];
}, {
readonly name: "validatorCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotHostPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "field";
}, {
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "NotIpPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "field";
}, {
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "getActiveValidators";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly name: "validators";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "getInitializedAtHeight";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "validatorCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "validatorByIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "validatorByAddress";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validatorAddress";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "validatorByPublicKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "uint64";
readonly name: "index";
}, {
readonly type: "uint64";
readonly name: "addedAtHeight";
}, {
readonly type: "uint64";
readonly name: "deactivatedAtHeight";
}];
}];
}, {
readonly name: "getNextNetworkIdentityRotationEpoch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "isInitialized";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "addValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "validatorAddress";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [{
readonly type: "uint64";
readonly name: "index";
}];
}, {
readonly name: "deactivateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}];
readonly outputs: readonly [];
}, {
readonly name: "rotateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "bytes";
readonly name: "signature";
}];
readonly outputs: readonly [];
}, {
readonly name: "setFeeRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "setIpAddresses";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferValidatorOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}, {
readonly type: "address";
readonly name: "newAddress";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "setNetworkIdentityRotationEpoch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "epoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "migrateValidator";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "idx";
}];
readonly outputs: readonly [];
}, {
readonly name: "initializeIfMigrated";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "ValidatorAdded";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "feeRecipient";
}];
}, {
readonly name: "ValidatorDeactivated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorRotated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "deactivatedIndex";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "oldPublicKey";
}, {
readonly type: "bytes32";
readonly name: "newPublicKey";
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "FeeRecipientUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "feeRecipient";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "IpAddressesUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "ingress";
}, {
readonly type: "string";
readonly name: "egress";
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "ValidatorOwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "oldAddress";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newAddress";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "caller";
}];
}, {
readonly name: "OwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "oldOwner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newOwner";
readonly indexed: true;
}];
}, {
readonly name: "ValidatorMigrated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}];
}, {
readonly name: "NetworkIdentityRotationEpochSet";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "previousEpoch";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "nextEpoch";
readonly indexed: true;
}];
}, {
readonly name: "Initialized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "height";
}];
}, {
readonly name: "SkippedValidatorMigration";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "index";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "validatorAddress";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "publicKey";
}];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "IngressAlreadyExists";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "ingress";
}];
}, {
readonly name: "EmptyV1ValidatorSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidMigrationIndex";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidPublicKey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignature";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSignatureFormat";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidValidatorAddress";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MigrationNotComplete";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotIp";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "NotIpPort";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "input";
}, {
readonly type: "string";
readonly name: "backtrace";
}];
}, {
readonly name: "PublicKeyAlreadyExists";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "Unauthorized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AddressAlreadyHasValidator";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorAlreadyDeactivated";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ValidatorNotFound";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "owner";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "transferOwnership";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newOwner";
}];
readonly outputs: readonly [];
}, {
readonly name: "createZone";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "params";
readonly components: readonly [{
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address[]";
readonly name: "allowedAccounts";
}, {
readonly type: "address[]";
readonly name: "zoneGateways";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}];
}, {
readonly name: "nextZoneId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "zones";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "id";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly name: "info";
readonly components: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
}, {
readonly name: "isZonePortal";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "portal";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "OwnershipTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousOwner";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newOwner";
readonly indexed: true;
}];
}, {
readonly name: "ZoneCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "portal";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}];
}, {
readonly name: "InvalidToken";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenTransferPolicyNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidClosedLoopConfig";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotOwner";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSequencerSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenMetadataTooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateAllowedAccount";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DuplicateZoneGateway";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZoneCreated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "portal";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "messenger";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "sequencer";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "bytes32";
readonly name: "genesisBlockHash";
}, {
readonly type: "bytes32";
readonly name: "genesisTempoBlockHash";
}, {
readonly type: "uint64";
readonly name: "genesisTempoBlockNumber";
}];
}, {
readonly name: "createZone";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple";
readonly name: "params";
readonly components: readonly [{
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "sequencer";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "tuple";
readonly name: "zoneParams";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "genesisBlockHash";
}, {
readonly type: "bytes32";
readonly name: "genesisTempoBlockHash";
}, {
readonly type: "uint64";
readonly name: "genesisTempoBlockNumber";
}];
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
}];
readonly outputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "portal";
}];
}, {
readonly name: "verifier";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "SequencerSetUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "nonce";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}];
}, {
readonly name: "TokenEnabled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "string";
readonly name: "name";
}, {
readonly type: "string";
readonly name: "symbol";
}, {
readonly type: "string";
readonly name: "currency";
}];
}, {
readonly name: "RoleUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}, {
readonly type: "uint8";
readonly name: "prev";
}, {
readonly type: "uint8";
readonly name: "next";
}];
}, {
readonly name: "EnforcementModesUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}];
}, {
readonly name: "LeaderUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousLeader";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newLeader";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "leaderEpoch";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "leaderActivationTempoBlock";
}];
}, {
readonly name: "zoneId";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "admin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "messenger";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "isAccessEnforced";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setAccessMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "enforced";
}];
readonly outputs: readonly [];
}, {
readonly name: "isGatewayOpen";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setGatewayMode";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bool";
readonly name: "enforced";
}];
readonly outputs: readonly [];
}, {
readonly name: "hasRole";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "uint8";
readonly name: "role";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "setAllowedAccount";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setGateway";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setPauseGuardian";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}, {
readonly type: "bool";
readonly name: "allowed";
}];
readonly outputs: readonly [];
}, {
readonly name: "setSequencerSet";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address[]";
readonly name: "newSequencers";
}, {
readonly type: "uint8";
readonly name: "newThreshold";
}];
readonly outputs: readonly [];
}, {
readonly name: "verifier";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "sequencerSetVersion";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "sequencerThreshold";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint8";
}];
}, {
readonly name: "zoneHeight";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "isSequencer";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "sequencerCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "sequencerAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "leader";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "leaderEpoch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "leaderActivationTempoBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "setLeader";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newLeader";
}, {
readonly type: "uint64";
readonly name: "expectedEpoch";
}];
readonly outputs: readonly [];
}, {
readonly name: "withdrawalBatchIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "blockHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "currentDepositQueueHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "lastSyncedTempoBlockNumber";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "withdrawalQueueHead";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "withdrawalQueueTail";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "withdrawalQueueSlot";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "queueIndex";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "calculateDepositFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "calculateBouncebackFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "depositCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "lastProcessedDepositNumber";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "FIXED_DEPOSIT_GAS";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_GAS_FEE_RATE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_TOKEN_METADATA_BYTES";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "areDepositsActive";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "tokenConfig";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bool";
readonly name: "enabled";
}, {
readonly type: "bool";
readonly name: "depositsActive";
}];
}];
}, {
readonly name: "initialize";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "initialToken";
}, {
readonly type: "bool";
readonly name: "accessMode";
}, {
readonly type: "bool";
readonly name: "gatewayMode";
}, {
readonly type: "address[]";
readonly name: "allowedAccounts";
}, {
readonly type: "address[]";
readonly name: "zoneGateways";
}, {
readonly type: "address";
readonly name: "admin";
}, {
readonly type: "address";
readonly name: "messenger";
}, {
readonly type: "address[]";
readonly name: "sequencers";
}, {
readonly type: "uint8";
readonly name: "threshold";
}, {
readonly type: "address";
readonly name: "verifier";
}, {
readonly type: "string";
readonly name: "rpcUrl";
}];
readonly outputs: readonly [];
}, {
readonly name: "deliverWithdrawal";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}];
readonly outputs: readonly [];
}, {
readonly name: "MAX_DEPOSITS_PER_TEMPO_BLOCK";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "MAX_WITHDRAWAL_GAS_LIMIT";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "paused";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "pauseExpiry";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "abdicationEffectiveAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "processWithdrawals";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "tuple[]";
readonly name: "withdrawals";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "senderTag";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}, {
readonly type: "bytes";
readonly name: "encryptedSender";
}];
}, {
readonly type: "bytes32";
readonly name: "remainingQueue";
}];
readonly outputs: readonly [];
}, {
readonly name: "pause";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "resume";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "abdicate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
readonly outputs: readonly [];
}, {
readonly name: "submitBatch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}, {
readonly type: "uint64";
readonly name: "recentTempoBlockNumber";
}, {
readonly type: "tuple";
readonly name: "blockTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevBlockHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}];
}, {
readonly type: "tuple";
readonly name: "depositQueueTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevProcessedHash";
}, {
readonly type: "bytes32";
readonly name: "nextProcessedHash";
}, {
readonly type: "uint64";
readonly name: "prevDepositNumber";
}, {
readonly type: "uint64";
readonly name: "nextDepositNumber";
}];
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "bytes";
readonly name: "verifierConfig";
}, {
readonly type: "bytes";
readonly name: "proof";
}, {
readonly type: "uint256";
readonly name: "nextZoneHeight";
}, {
readonly type: "bytes[]";
readonly name: "signatures";
}];
readonly outputs: readonly [];
}, {
readonly name: "enableToken";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "pauseDeposits";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "resumeDeposits";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [];
}, {
readonly name: "setZoneGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "newZoneGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setMaxTempoGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "newMaxTempoGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setBouncebackGas";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "newBouncebackGas";
}];
readonly outputs: readonly [];
}, {
readonly name: "transferAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "newAdmin";
}];
readonly outputs: readonly [];
}, {
readonly name: "acceptAdmin";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [];
readonly outputs: readonly [];
}, {
readonly name: "rpcUrl";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "string";
}];
}, {
readonly name: "setRpcUrl";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "rpcUrl";
}];
readonly outputs: readonly [];
}, {
readonly name: "deposit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "tuple";
readonly name: "encrypted";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}];
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
}];
}, {
readonly name: "depositEncrypted";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "tuple";
readonly name: "encrypted";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}];
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
}];
}, {
readonly name: "setSequencerEncryptionKey";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint8";
readonly name: "popV";
}, {
readonly type: "bytes32";
readonly name: "popR";
}, {
readonly type: "bytes32";
readonly name: "popS";
}];
readonly outputs: readonly [];
}, {
readonly name: "isTokenEnabled";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}, {
readonly name: "enabledTokenCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "enabledTokenAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "tokenEnablementHash";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly name: "zoneGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "maxTempoGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "bouncebackGas";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "pendingAdmin";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "address";
}];
}, {
readonly name: "refunds";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "owner";
}];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "sequencerEncryptionKey";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "address";
readonly name: "pubkey";
}];
}, {
readonly name: "encryptionKeyCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "encryptionKeyAt";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "index";
}];
readonly outputs: readonly [{
readonly type: "tuple";
readonly name: "entry";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}];
}];
}, {
readonly name: "isEncryptionKeyValid";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}];
readonly outputs: readonly [{
readonly type: "bool";
readonly name: "valid";
}, {
readonly type: "uint64";
readonly name: "expiresAtBlock";
}];
}, {
readonly name: "encryptionKeyAtBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}];
}, {
readonly name: "claimRefund";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "DepositMade";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "netAmount";
}, {
readonly type: "uint128";
readonly name: "fee";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "bytes32";
readonly name: "ephemeralPubkeyX";
}, {
readonly type: "uint8";
readonly name: "ephemeralPubkeyYParity";
}, {
readonly type: "bytes";
readonly name: "ciphertext";
}, {
readonly type: "bytes12";
readonly name: "nonce";
}, {
readonly type: "bytes16";
readonly name: "tag";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}, {
readonly type: "uint64";
readonly name: "depositNumber";
}];
}, {
readonly name: "DepositsPaused";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "DepositsResumed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}];
}, {
readonly name: "PortalPaused";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}];
}, {
readonly name: "PortalResumed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
readonly indexed: true;
}];
}, {
readonly name: "AbdicationScheduled";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "effectiveAt";
}];
}, {
readonly name: "RpcUrlUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "string";
readonly name: "rpcUrl";
}];
}, {
readonly name: "SequencerEncryptionKeyUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "x";
}, {
readonly type: "uint8";
readonly name: "yParity";
}, {
readonly type: "address";
readonly name: "pubkey";
}, {
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}];
}, {
readonly name: "BatchSubmitted";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
readonly indexed: true;
}, {
readonly type: "uint256";
readonly name: "withdrawalQueueIndex";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "nextProcessedDepositQueueHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "uint64";
readonly name: "lastProcessedDepositNumber";
}];
}, {
readonly name: "WithdrawalProcessed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "to";
readonly indexed: true;
}, {
readonly type: "bytes32";
readonly name: "senderTag";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bool";
readonly name: "callbackSuccess";
}];
}, {
readonly name: "WithdrawalBounceBack";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "newCurrentDepositQueueHash";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "depositNumber";
}];
}, {
readonly name: "DepositBounceBack";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tempoRefundRecipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "bouncebackFee";
}];
}, {
readonly name: "DepositBounceBackPending";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "tempoRefundRecipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "bouncebackFee";
}];
}, {
readonly name: "RefundClaimed";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "recipient";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
readonly indexed: true;
}, {
readonly type: "uint128";
readonly name: "amount";
}];
}, {
readonly name: "ZoneGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "zoneGasRate";
}];
}, {
readonly name: "MaxTempoGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "maxTempoGasRate";
}];
}, {
readonly name: "BouncebackGasUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "bouncebackGas";
}];
}, {
readonly name: "AdminTransferStarted";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "currentAdmin";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "pendingAdmin";
readonly indexed: true;
}];
}, {
readonly name: "AdminTransferred";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "previousAdmin";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "newAdmin";
readonly indexed: true;
}];
}, {
readonly name: "NotSequencer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPauseAuthority";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CapabilityAbdicated";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
}, {
readonly name: "AbdicationAlreadyScheduled";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint8";
readonly name: "capability";
}];
}, {
readonly name: "PortalIsPaused";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotPendingAdmin";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidProof";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidTempoBlockNumber";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotFactory";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NotSelf";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AlreadyInitialized";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "MustDelegateCall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackRejected";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TransferFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ReentrantWithdrawal";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "EncryptionKeyExpired";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}, {
readonly type: "uint64";
readonly name: "activationBlock";
}, {
readonly type: "uint64";
readonly name: "supersededAtBlock";
}];
}, {
readonly name: "InvalidEncryptionKeyIndex";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "keyIndex";
}];
}, {
readonly name: "NoEncryptionKeySet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "NoEncryptionKeyAtBlock";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "blockNumber";
}];
}, {
readonly name: "InvalidEphemeralPubkey";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCiphertextLength";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidProofOfPossession";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositTooSmall";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenEnablementBlockCapacityExceeded";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "maximum";
}];
}, {
readonly name: "TokenMetadataTooLong";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasFeeRateTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositsNotActive";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenAlreadyEnabled";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenTransferPolicyNotSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidDepositTransition";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidSequencerSet";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "SequencerConfigurationUnchanged";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidQuorumCertificate";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackDidNotReturnToZone";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidBouncebackRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TokenNotEnabled";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "DepositBlockCapacityExceeded";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "maximum";
}];
}, {
readonly name: "InvalidCallbackTarget";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "AccountNotAllowed";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "account";
}];
}, {
readonly name: "InvalidLeader";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ActiveLeaderRemoved";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "LeaderAlreadyUpdatedThisBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "StaleLeadershipEpoch";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "expected";
}, {
readonly type: "uint64";
readonly name: "actual";
}];
}, {
readonly name: "deposit";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "_token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
}];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "active";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "executeFunding";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fundedAssets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "fund";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fundedAssets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setActive";
readonly inputs: readonly [{
readonly name: "active_";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "ActiveSet";
readonly inputs: readonly [{
readonly name: "active";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Funded";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "fundedAssets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "EarnShareSupplyOutOfBounds";
readonly inputs: readonly [{
readonly name: "earnShareSupply";
readonly type: "uint256";
}, {
readonly name: "maxEarnShareSupply";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "Inactive";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotSelf";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "scale";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "requestData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositInKind";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "from";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineSharesReceived";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "tip20Factory_";
readonly type: "address";
}, {
readonly name: "earnVaultImplementation_";
readonly type: "address";
}, {
readonly name: "earnFeesImplementation_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "DEFAULT_ADMIN_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "EARN_SHARE_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "FEES_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "computeEarnShareSalt";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "deploy";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "earnShare";
readonly type: "address";
}, {
readonly name: "earnVault";
readonly type: "address";
}, {
readonly name: "earnFees";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnFeesImplementation";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVaultImplementation";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "predictEarnFees";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "predictEarnShare";
readonly inputs: readonly [{
readonly name: "params";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "engine";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "controls";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}, {
readonly name: "fees";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
}];
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "tip20Factory";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "EarnStackDeployed";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShare";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnFees";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engine";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "owner";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "deploymentId";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "emergencyGuardian";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "asyncJanitor";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "migrationMode";
readonly type: "uint8";
readonly indexed: false;
}, {
readonly name: "transferPolicyId";
readonly type: "uint64";
readonly indexed: false;
}, {
readonly name: "earnShareSalt";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "controlConfigHash";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "feeConfigHash";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "earnFeesSalt";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AdminRelinquishmentFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EarnShareAlreadyExists";
readonly inputs: readonly [{
readonly name: "earnShare";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "EarnShareSupplyNotZero";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyDeploymentId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyEarnShareMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineAlreadyBound";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "FactoryCannotBeFinalOwner";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "FailedDeployment";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientBalance";
readonly inputs: readonly [{
readonly name: "balance";
readonly type: "uint256";
}, {
readonly name: "needed";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidDistributorConfig";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnFeesImplementation";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVaultImplementation";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidTransferPolicy";
readonly inputs: readonly [{
readonly name: "policyId";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "IssuerGrantFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TransferPolicyMismatch";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint64";
}, {
readonly name: "actual";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "UnsupportedTransferPolicy";
readonly inputs: readonly [{
readonly name: "policyId";
readonly type: "uint64";
}, {
readonly name: "policyType";
readonly type: "uint8";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accrueFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "result";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
}, {
readonly name: "fixedFeeAssets";
readonly type: "uint256";
}, {
readonly name: "excessFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeEarnShares";
readonly type: "uint256";
}, {
readonly name: "preFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "postFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "allocationCount";
readonly type: "uint8";
}, {
readonly name: "allocations";
readonly type: "tuple[5]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
}];
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claim";
readonly inputs: readonly [{
readonly name: "to";
readonly type: "address";
}, {
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimableEarnShares";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "closeRedeemRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "currentFeeConfigId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "disableFees";
readonly inputs: readonly [{
readonly name: "operator";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeBaselinesPending";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeConfig";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feeRemainder";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}, {
readonly name: "slot";
readonly type: "uint8";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feesActive";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "feesDisabled";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "highWaterMark";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "earnShare_";
readonly type: "address";
}, {
readonly name: "initialConfig";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeBaselines";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pendingFeeSnapshot";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "requestValue";
readonly type: "uint256";
}, {
readonly name: "highWaterValue";
readonly type: "uint256";
}, {
readonly name: "targetValue";
readonly type: "uint256";
}, {
readonly name: "feeConfigId";
readonly type: "uint64";
}, {
readonly name: "requestedAt";
readonly type: "uint40";
}, {
readonly name: "open";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewAccruedFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "result";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
}, {
readonly name: "fixedFeeAssets";
readonly type: "uint256";
}, {
readonly name: "excessFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeAssets";
readonly type: "uint256";
}, {
readonly name: "totalFeeEarnShares";
readonly type: "uint256";
}, {
readonly name: "preFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "postFeeValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
}, {
readonly name: "allocationCount";
readonly type: "uint8";
}, {
readonly name: "allocations";
readonly type: "tuple[5]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "recordRedeemRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "requestValue";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settleCancelledRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "returnedValue";
readonly type: "uint256";
}, {
readonly name: "activeSupply";
readonly type: "uint256";
}, {
readonly name: "activeAssets";
readonly type: "uint256";
}, {
readonly name: "totalReentryEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "shouldChargeRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "targetBase";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "targetStartedAt";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalClaimableEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "validateFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "FeeBaselinesInitialized";
readonly inputs: readonly [{
readonly name: "highWaterMark";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetBase";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetStartedAt";
readonly type: "uint40";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeConfigurationSet";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "configHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "reactivated";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeDustWaived";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "slot";
readonly type: "uint8";
readonly indexed: true;
}, {
readonly name: "remainder";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeEarnSharesAllocated";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "feeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeeEarnSharesClaimed";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeesAccrued";
readonly inputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "activeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "positiveAccrualAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "highWaterMark";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "targetValuePerEarnShare";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FeesDisabled";
readonly inputs: readonly [{
readonly name: "operator";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientClaimableEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidFeeClaimReceiver";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidFeeConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "treasury_";
readonly type: "address";
}, {
readonly name: "campaignId_";
readonly type: "bytes32";
}, {
readonly name: "claimDeadline_";
readonly type: "uint40";
}, {
readonly name: "owner_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "campaignId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claim";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
}, {
readonly name: "proof";
readonly type: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimDeadline";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cumulativePaid";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "cumulativeAmount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "fundWithAssets";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
}, {
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "leaf";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "merkleRoot";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "paused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "publishRoot";
readonly inputs: readonly [{
readonly name: "root";
readonly type: "bytes32";
}, {
readonly name: "totalEntitlement";
readonly type: "uint256";
}, {
readonly name: "statementHash_";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pushBatch";
readonly inputs: readonly [{
readonly name: "expectedRootVersion";
readonly type: "uint64";
}, {
readonly name: "recipients";
readonly type: "address[]";
}, {
readonly name: "cumulativeAmounts";
readonly type: "uint256[]";
}, {
readonly name: "multiproof";
readonly type: "bytes32[]";
}, {
readonly name: "proofFlags";
readonly type: "bool[]";
}];
readonly outputs: readonly [{
readonly name: "paidCount";
readonly type: "uint256";
}, {
readonly name: "paidEarnShares";
readonly type: "uint256";
}, {
readonly name: "skippedCount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "returnUnspent";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "rootTotalEntitlement";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rootVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "setPaused";
readonly inputs: readonly [{
readonly name: "paused_";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "statementHash";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalPaid";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "treasury";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "AssetsFunded";
readonly inputs: readonly [{
readonly name: "funder";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BatchPushed";
readonly inputs: readonly [{
readonly name: "version";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "batchHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "attemptedCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "paidCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "paidEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "skippedCount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "PausedSet";
readonly inputs: readonly [{
readonly name: "paused";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "PayoutSkipped";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "reason";
readonly type: "uint8";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RewardClaimed";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "cumulativeAmount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RootPublished";
readonly inputs: readonly [{
readonly name: "version";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "root";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "statementHash";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "totalEntitlement";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "UnspentReturned";
readonly inputs: readonly [{
readonly name: "treasury";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "ClaimsExpired";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ClaimsNotExpired";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DepositsPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientFunding";
readonly inputs: readonly [{
readonly name: "requiredBalance";
readonly type: "uint256";
}, {
readonly name: "actualBalance";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidArrayLengths";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidMultiproof";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "MerkleProofInvalidMultiproof";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NothingOwed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnershipRenunciationDisabled";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "Paused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "PausedLiabilityIncrease";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrancyGuardReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RootTotalDecreased";
readonly inputs: readonly [{
readonly name: "previousTotal";
readonly type: "uint256";
}, {
readonly name: "nextTotal";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "RootTotalExceeded";
readonly inputs: readonly [{
readonly name: "requestedAmount";
readonly type: "uint256";
}, {
readonly name: "remainingEntitlement";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "StaleRootVersion";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint64";
}, {
readonly name: "actual";
readonly type: "uint64";
}];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedEarnShares";
readonly inputs: readonly [{
readonly name: "reported";
readonly type: "uint256";
}, {
readonly name: "measured";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedRetainedAssets";
readonly inputs: readonly [{
readonly name: "beforeBalance";
readonly type: "uint256";
}, {
readonly name: "afterBalance";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroCampaignId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroDeadline";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroRoot";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroStatementHash";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "allowedZoneId_";
readonly type: "uint32";
}, {
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "privateAsset_";
readonly type: "address";
}, {
readonly name: "tokenAuthority_";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "allowedZoneId";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "onWithdrawalReceived";
readonly inputs: readonly [{
readonly name: "sourceZoneId";
readonly type: "uint32";
}, {
readonly name: "sourcePortal";
readonly type: "address";
}, {
readonly name: "";
readonly type: "bytes32";
}, {
readonly name: "token";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint128";
}, {
readonly name: "callbackData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes4";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "privateAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "reserveToken";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsFlow";
readonly inputs: readonly [{
readonly name: "flow";
readonly type: "uint8";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "tokenAuthority";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transactionLimit";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vaultAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "EarnDeposit";
readonly inputs: readonly [{
readonly name: "actionId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "inputToken";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "inputAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "vaultAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "zoneDepositHash";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnRedeem";
readonly inputs: readonly [{
readonly name: "actionId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "outputToken";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "vaultAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "outputAmount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "zoneDepositHash";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AmountExceedsLimit";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AmountOverflow";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "BadFlow";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientOutput";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidAuthority";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnVault";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidPrivateAsset";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidReturnToken";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidRoutePair";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidSourcePortal";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidTransactionLimit";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotZoneMessenger";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ResidualBalance";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "WrongInputToken";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "WrongSourceZone";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "MAX_REWARD_RATE_MULTIPLIER";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "absorbEngineShareSurplus";
readonly inputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptDistributor";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accrueFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "feeAssets";
readonly type: "uint256";
}, {
readonly name: "feeEarnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "anchorEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "anchorEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asyncJanitor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cancelDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelDistributorTransfer";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "minReceiverEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "contribute";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "receivedEngineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "convertEngineSharesToEarnShares";
readonly inputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "convertToEngineShares";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares_";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositVenueShares";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositsPaused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "disableFees";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "distributor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "distributorFee";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "distributorUpdateDelay";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint40";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnFees";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "earnShare";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "emergencyGuardian";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engine";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engineMigrationMode";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint8";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "engineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "executeDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "feeConfigId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "finalizeRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}, {
readonly name: "asset_";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "engine_";
readonly type: "address";
}, {
readonly name: "earnShare_";
readonly type: "address";
}, {
readonly name: "earnFees_";
readonly type: "address";
}, {
readonly name: "operator_";
readonly type: "address";
}, {
readonly name: "controlInit_";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
}, {
readonly name: "asyncJanitor";
readonly type: "address";
}, {
readonly name: "maxManagedAssets";
readonly type: "uint256";
}, {
readonly name: "migrationMode";
readonly type: "uint8";
}];
}, {
readonly name: "distributorInit_";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "distributor";
readonly type: "address";
}, {
readonly name: "updateDelay";
readonly type: "uint40";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isAccountingAligned";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "maxManagedAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "migrateEngine";
readonly inputs: readonly [{
readonly name: "newEngine";
readonly type: "address";
}, {
readonly name: "minNewEngineShares";
readonly type: "uint256";
}, {
readonly name: "minAssetsRetained";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "newEngineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "normalizedRewardRate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "openRedeemRequestCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "operator";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingDistributor";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingDistributorFeeUpdate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}, {
readonly name: "executableAt";
readonly type: "uint40";
}, {
readonly name: "pending";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "requester";
readonly type: "address";
}, {
readonly name: "burnedEarnShares";
readonly type: "uint256";
}, {
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "open";
readonly type: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rawEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "remainingDepositCapacity";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "earnShares";
readonly type: "uint256";
}, {
readonly name: "engineData";
readonly type: "bytes";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "rewardRateBaseline";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "scheduleDistributorFeeUpdate";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setDepositsPaused";
readonly inputs: readonly [{
readonly name: "paused";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setEmergencyRoles";
readonly inputs: readonly [{
readonly name: "newGuardian";
readonly type: "address";
}, {
readonly name: "newJanitor";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeConfig";
readonly inputs: readonly [{
readonly name: "config";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "fixedFeeCount";
readonly type: "uint8";
}, {
readonly name: "fixedFees";
readonly type: "tuple[4]";
readonly components: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "rateBps";
readonly type: "uint16";
}];
}, {
readonly name: "excess";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "enabled";
readonly type: "bool";
}, {
readonly name: "account";
readonly type: "address";
}, {
readonly name: "annualTargetRateBps";
readonly type: "uint16";
}, {
readonly name: "excessFeeRateBps";
readonly type: "uint16";
}];
}];
}];
readonly outputs: readonly [{
readonly name: "configId";
readonly type: "uint64";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setMaxManagedAssets";
readonly inputs: readonly [{
readonly name: "newMaxManagedAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "surplusEngineShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalEarnShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferDistributor";
readonly inputs: readonly [{
readonly name: "newDistributor";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "withdrawExact";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "maxEarnShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "earnSharesBurned";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "Contributed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DepositPauseChanged";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "paused";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdateCancelled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdateScheduled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "rateBps";
readonly type: "uint16";
readonly indexed: false;
}, {
readonly name: "executableAt";
readonly type: "uint40";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorFeeUpdated";
readonly inputs: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "rateBps";
readonly type: "uint16";
readonly indexed: false;
}, {
readonly name: "feeConfigId";
readonly type: "uint64";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferCancelled";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "pendingDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferStarted";
readonly inputs: readonly [{
readonly name: "distributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "pendingDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DistributorTransferred";
readonly inputs: readonly [{
readonly name: "previousDistributor";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newDistributor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EmergencyRolesChanged";
readonly inputs: readonly [{
readonly name: "emergencyGuardian";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "asyncJanitor";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EngineMigrated";
readonly inputs: readonly [{
readonly name: "oldEngine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newEngine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assetsMoved";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "totalEarnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EngineShareSurplusAbsorbed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "anchorEarnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "MaxManagedAssetsChanged";
readonly inputs: readonly [{
readonly name: "previousMaxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newMaxManagedAssets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemCancelled";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemFinalized";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemRequested";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "requester";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VenueSharesDeposited";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedVenueShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "receivedEngineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "earnSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "ActiveSupplyWithoutBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DepositsPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DistributorFeeUpdateNotPending";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DistributorFeeUpdateNotReady";
readonly inputs: readonly [{
readonly name: "executableAt";
readonly type: "uint40";
}];
}, {
readonly type: "error";
readonly name: "DistributorTransferNotPending";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DuplicateRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "EngineAssetMismatch";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineCapabilityUnsupported";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
}, {
readonly type: "error";
readonly name: "EngineEarnVaultMismatch";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineExitUnsupported";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ExceedsMaxEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ExcessiveConversionLoss";
readonly inputs: readonly [{
readonly name: "inputShares";
readonly type: "uint256";
}, {
readonly name: "representedShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ExcessiveMigrationClassificationError";
readonly inputs: readonly [{
readonly name: "expectedManagedAssets";
readonly type: "uint256";
}, {
readonly name: "actualManagedAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "FeeValuationStale";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "FinalizedAssetMismatch";
readonly inputs: readonly [{
readonly name: "finalizedAsset";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "GlobalFeeDisableUnavailable";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InitialEarnShareSupplyNotZero";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientEngineShareSurplus";
readonly inputs: readonly [{
readonly name: "available";
readonly type: "uint256";
}, {
readonly name: "requested";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InsufficientOutput";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidDistributorConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidDistributorFeeConfiguration";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEarnDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidEngineShareScale";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "MaxManagedAssetsExceeded";
readonly inputs: readonly [{
readonly name: "maximum";
readonly type: "uint256";
}, {
readonly name: "actual";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumAssetsNotMet";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumEarnSharesNotMet";
readonly inputs: readonly [{
readonly name: "minimumEarnShares";
readonly type: "uint256";
}, {
readonly name: "actualEarnShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "MinimumEngineSharesNotMet";
readonly inputs: readonly [{
readonly name: "minimumEngineShares";
readonly type: "uint256";
}, {
readonly name: "actualEngineShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "NoEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotDistributor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEmergencyGuardianOrOperator";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotOperator";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotPendingDistributor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotRequesterOrJanitor";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OperatorMigrationDisabled";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "PendingRedeemsOpen";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RequestNotOpen";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "ResidualBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RewardRateLimitExceeded";
readonly inputs: readonly [{
readonly name: "normalizedRate";
readonly type: "uint256";
}, {
readonly name: "baselineRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "SameEngine";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TokenCallFalse";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroAmount";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumAssets";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEarnShares";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ZeroMinimumEngineShares";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "vault_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}, {
readonly name: "nameOverride_";
readonly type: "string";
}, {
readonly name: "symbolOverride_";
readonly type: "string";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "baseAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositInKind";
readonly inputs: readonly [{
readonly name: "venueShares";
readonly type: "uint256";
}, {
readonly name: "from";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineSharesReceived";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "finalOwner_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnVaultInitialized";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VenueSharesDeposited";
readonly inputs: readonly [{
readonly name: "from";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "requestedVenueShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "receivedEngineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EarnVaultNotSet";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InsufficientAssetsReceived";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidVenueShareDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoVenueSharesReceived";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "TransferFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedAssetsReceived";
readonly inputs: readonly [{
readonly name: "expectedAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesBurned";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly type: "function";
readonly name: "ENGINE_SALT_DOMAIN";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "computeEngineSalt";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
}, {
readonly type: "function";
readonly name: "deploy";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "engine";
readonly type: "address";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "predictEngine";
readonly inputs: readonly [{
readonly name: "deploymentId";
readonly type: "bytes32";
}, {
readonly name: "vault";
readonly type: "address";
}, {
readonly name: "owner";
readonly type: "address";
}, {
readonly name: "nameOverride";
readonly type: "string";
}, {
readonly name: "symbolOverride";
readonly type: "string";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "event";
readonly name: "ERC4626EngineDeployed";
readonly inputs: readonly [{
readonly name: "engine";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "vault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "owner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "deploymentId";
readonly type: "bytes32";
readonly indexed: false;
}, {
readonly name: "engineSalt";
readonly type: "bytes32";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "EmptyDeploymentId";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineAlreadyExists";
readonly inputs: readonly [{
readonly name: "engine";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "FactoryCannotBeFinalOwner";
readonly inputs: readonly [];
}, {
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "peripheryRegistry_";
readonly type: "address";
}, {
readonly name: "owner_";
readonly type: "address";
}, {
readonly name: "maxRateAge_";
readonly type: "uint64";
}, {
readonly name: "name_";
readonly type: "string";
}, {
readonly name: "symbol_";
readonly type: "string";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "acceptOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "accountant";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "accountantRateUpdatedAt";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "asset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "authorizedForwarder";
readonly inputs: readonly [{
readonly name: "forwarder";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "authorized";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "baseAsset";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "cancelRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimQueue";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claimRedeem";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "deposit";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "earnVault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "finalizeOneExternal";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "forwardSolved";
readonly inputs: readonly [{
readonly name: "requestIds";
readonly type: "bytes32[]";
}, {
readonly name: "asset_";
readonly type: "address";
}, {
readonly name: "delta";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "claimed";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "getClaim";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "status";
readonly type: "uint8";
}, {
readonly name: "request";
readonly type: "tuple";
readonly components: readonly [{
readonly name: "nonce";
readonly type: "uint96";
}, {
readonly name: "user";
readonly type: "address";
}, {
readonly name: "assetOut";
readonly type: "address";
}, {
readonly name: "amountOfShares";
readonly type: "uint128";
}, {
readonly name: "amountOfAssets";
readonly type: "uint128";
}, {
readonly name: "creationTime";
readonly type: "uint40";
}, {
readonly name: "secondsToMaturity";
readonly type: "uint24";
}, {
readonly name: "secondsToDeadline";
readonly type: "uint24";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}, {
readonly name: "finalOwner_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "initializeEarnVault";
readonly inputs: readonly [{
readonly name: "earnVault_";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isFeeValuationFresh";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "maxRateAge";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "name";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "openClaimsByQueue";
readonly inputs: readonly [{
readonly name: "requestQueue";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "count";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "owner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "pendingOwner";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "peripheryRegistry";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "peripheryVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "previewWithdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "queue";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "rate";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "recoverExternalSettlement";
readonly inputs: readonly [{
readonly name: "requestIds";
readonly type: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "claimed";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "redeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}, {
readonly name: "minAssets";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceOwnership";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestRedeem";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}, {
readonly name: "requestData";
readonly type: "bytes";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setAuthorizedForwarder";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}, {
readonly name: "authorized";
readonly type: "bool";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setMaxRateAge";
readonly inputs: readonly [{
readonly name: "newMaxRateAge";
readonly type: "uint64";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settled";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "shareScale";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "sweepDust";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
}, {
readonly name: "to";
readonly type: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "symbol";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "syncVedaPeriphery";
readonly inputs: readonly [{
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "teller";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalAssets";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "transferOwnership";
readonly inputs: readonly [{
readonly name: "newOwner";
readonly type: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "unresolvedClaimCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "valueOf";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly outputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "vault";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "withdraw";
readonly inputs: readonly [{
readonly name: "assets";
readonly type: "uint256";
}, {
readonly name: "receiver";
readonly type: "address";
}];
readonly outputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "AuthorizedForwarderChanged";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "authorized";
readonly type: "bool";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Deposited";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "DustSwept";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "EarnVaultInitialized";
readonly inputs: readonly [{
readonly name: "earnVault";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "ExternalSettlementRecovered";
readonly inputs: readonly [{
readonly name: "requestCount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "recoveredAssets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "claimed";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "FinalizeFailed";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Finalized";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "MaxRateAgeUpdated";
readonly inputs: readonly [{
readonly name: "oldMaxRateAge";
readonly type: "uint64";
readonly indexed: false;
}, {
readonly name: "newMaxRateAge";
readonly type: "uint64";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferStarted";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "OwnershipTransferred";
readonly inputs: readonly [{
readonly name: "previousOwner";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "newOwner";
readonly type: "address";
readonly indexed: true;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemCancelledOnQueue";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint128";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemClaimed";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "RedeemRequested";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
readonly indexed: true;
}, {
readonly name: "assetOut";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint128";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Redeemed";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "engineShares";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Settled";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newTotal";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "Unearmarked";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "newTotal";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "VedaPeripheryUpdated";
readonly inputs: readonly [{
readonly name: "registryVersion";
readonly type: "uint64";
readonly indexed: true;
}, {
readonly name: "oldTeller";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldQueue";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "oldAccountant";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newTeller";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newQueue";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "newAccountant";
readonly type: "address";
readonly indexed: false;
}, {
readonly name: "validatedRate";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "WithdrewExact";
readonly inputs: readonly [{
readonly name: "receiver";
readonly type: "address";
readonly indexed: true;
}, {
readonly name: "assets";
readonly type: "uint256";
readonly indexed: false;
}, {
readonly name: "engineSharesBurned";
readonly type: "uint256";
readonly indexed: false;
}];
readonly anonymous: false;
}, {
readonly type: "error";
readonly name: "AlreadyInitialized";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "AssetsNotArrived";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "BaseAssetSweepBlocked";
readonly inputs: readonly [{
readonly name: "unresolvedClaims";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "CannotSweepEngineBacking";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "ClaimNotClaimable";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "ClaimNotOpen";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "CreditExceedsBalance";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}, {
readonly name: "have";
readonly type: "uint256";
}, {
readonly name: "wantTotal";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "DepositsNotPaused";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "DuplicateRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "EarnVaultNotSet";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EmptyMetadata";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "EngineSharesTooLarge";
readonly inputs: readonly [{
readonly name: "engineShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InsufficientAssetsReceived";
readonly inputs: readonly [{
readonly name: "minimumAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidAsset";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidMaxRateAge";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "InvalidRateTimestamp";
readonly inputs: readonly [{
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly name: "currentTime";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidTrackedRequest";
readonly inputs: readonly [{
readonly name: "requestId";
readonly type: "bytes32";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaPeriphery";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaPeripheryWiring";
readonly inputs: readonly [{
readonly name: "component";
readonly type: "address";
}, {
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "InvalidVedaRateBounds";
readonly inputs: readonly [{
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "InvalidVenueShareDecimals";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoPublishedVedaPeriphery";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoRecoverableClaims";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NoVenueSharesReceived";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "NotAuthorizedForwarder";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "NotEarnVault";
readonly inputs: readonly [{
readonly name: "caller";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "NotSelf";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "OwnableInvalidOwner";
readonly inputs: readonly [{
readonly name: "owner";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "OwnableUnauthorizedAccount";
readonly inputs: readonly [{
readonly name: "account";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "QueueTrackingDisabled";
readonly inputs: readonly [{
readonly name: "queue";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "QueueUnavailable";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RateChangedWithinTransaction";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "uint256";
}, {
readonly name: "actual";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ReentrantCall";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "RegistryEngineMismatch";
readonly inputs: readonly [{
readonly name: "expected";
readonly type: "address";
}, {
readonly name: "actual";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "SolveUnderfunded";
readonly inputs: readonly [{
readonly name: "asset";
readonly type: "address";
}, {
readonly name: "delivered";
readonly type: "uint256";
}, {
readonly name: "required";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "StaleAccountantRate";
readonly inputs: readonly [{
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly name: "currentTime";
readonly type: "uint256";
}, {
readonly name: "maxAge";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "SweepExceedsAvailableBalance";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
}, {
readonly name: "available";
readonly type: "uint256";
}, {
readonly name: "requested";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "TransferFailed";
readonly inputs: readonly [];
}, {
readonly type: "error";
readonly name: "UnexpectedAssetsReceived";
readonly inputs: readonly [{
readonly name: "expectedAssets";
readonly type: "uint256";
}, {
readonly name: "actualAssets";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesBurned";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnexpectedVenueSharesQueued";
readonly inputs: readonly [{
readonly name: "expectedShares";
readonly type: "uint256";
}, {
readonly name: "actualShares";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "UnsupportedAccountantFreshness";
readonly inputs: readonly [{
readonly name: "accountant";
readonly type: "address";
}];
}, {
readonly type: "error";
readonly name: "VedaRateOutOfBounds";
readonly inputs: readonly [{
readonly name: "rate";
readonly type: "uint256";
}, {
readonly name: "minRate";
readonly type: "uint256";
}, {
readonly name: "maxRate";
readonly type: "uint256";
}];
}, {
readonly type: "error";
readonly name: "ZeroAddress";
readonly inputs: readonly [];
}, {
readonly name: "relayMessage";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "bytes32";
readonly name: "senderTag";
}, {
readonly type: "address";
readonly name: "target";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "bytes";
readonly name: "data";
}];
readonly outputs: readonly [];
}, {
readonly name: "tempoGasRate";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint128";
}];
}, {
readonly name: "maxWithdrawalsPerBlock";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint32";
}];
}, {
readonly name: "lastBatch";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
}];
}];
}, {
readonly name: "lastFinalizedTimestamp";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "nextWithdrawalIndex";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "lastFallbackNonce";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "pendingWithdrawalsCount";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "getPendingWithdrawals";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "tuple[]";
readonly components: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "sender";
}, {
readonly type: "bytes32";
readonly name: "txHash";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "callbackData";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
}];
}, {
readonly name: "consumeFallbackRecipient";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "fallbackNonce";
}];
readonly outputs: readonly [{
readonly type: "address";
readonly name: "recipient";
}];
}, {
readonly name: "calculateWithdrawalFee";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "gasLimit";
}];
readonly outputs: readonly [{
readonly type: "uint128";
readonly name: "fee";
}];
}, {
readonly name: "MAX_CALLBACK_DATA_SIZE";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "MAX_WITHDRAWAL_GAS_LIMIT";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "WITHDRAWAL_BASE_GAS";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint64";
}];
}, {
readonly name: "REVEAL_TO_KEY_LENGTH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "AUTHENTICATED_WITHDRAWAL_CIPHERTEXT_LENGTH";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly type: "uint256";
}];
}, {
readonly name: "setTempoGasRate";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "_tempoGasRate";
}];
readonly outputs: readonly [];
}, {
readonly name: "setMaxWithdrawalsPerBlock";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "_maxWithdrawalsPerBlock";
}];
readonly outputs: readonly [];
}, {
readonly name: "requestWithdrawal";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "address";
readonly name: "zoneFallbackRecipient";
}, {
readonly type: "bytes";
readonly name: "data";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
readonly outputs: readonly [];
}, {
readonly name: "enqueueDepositBounceBack";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "address";
readonly name: "token";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "address";
readonly name: "tempoRefundRecipient";
}];
readonly outputs: readonly [];
}, {
readonly name: "finalizeWithdrawalBatch";
readonly type: "function";
readonly stateMutability: "nonpayable";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "count";
}, {
readonly type: "uint64";
readonly name: "blockNumber";
}, {
readonly type: "bytes[]";
readonly name: "encryptedSenders";
}];
readonly outputs: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}];
}, {
readonly name: "WithdrawalRequested";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint64";
readonly name: "withdrawalIndex";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "sender";
readonly indexed: true;
}, {
readonly type: "address";
readonly name: "token";
}, {
readonly type: "address";
readonly name: "to";
}, {
readonly type: "uint128";
readonly name: "amount";
}, {
readonly type: "uint128";
readonly name: "fee";
}, {
readonly type: "bytes32";
readonly name: "memo";
}, {
readonly type: "uint64";
readonly name: "gasLimit";
}, {
readonly type: "uint64";
readonly name: "fallbackNonce";
}, {
readonly type: "bytes";
readonly name: "data";
}, {
readonly type: "bytes";
readonly name: "revealTo";
}];
}, {
readonly name: "BatchFinalized";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
readonly indexed: true;
}, {
readonly type: "uint64";
readonly name: "withdrawalBatchIndex";
}];
}, {
readonly name: "TempoGasRateUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint128";
readonly name: "tempoGasRate";
}];
}, {
readonly name: "MaxWithdrawalsPerBlockUpdated";
readonly type: "event";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "maxWithdrawalsPerBlock";
}];
}, {
readonly name: "OnlySequencer";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasLimitTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "OnlyZoneInbox";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidWithdrawalCount";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidEncryptedSenderCount";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidEncryptedSenderLength";
readonly type: "error";
readonly inputs: readonly [{
readonly type: "uint256";
readonly name: "actual";
}, {
readonly type: "uint256";
readonly name: "expected";
}];
}, {
readonly name: "InvalidFallbackRecipient";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "CallbackDataTooLarge";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "GasFeeRateTooHigh";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TransferFailed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidBlockNumber";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "TooManyWithdrawalsThisBlock";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidRevealTo";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "InvalidCurrentTxHash";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "ZeroAmountWithdrawal";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "StaticCallNotAllowed";
readonly type: "error";
readonly inputs: readonly [];
}, {
readonly name: "verify";
readonly type: "function";
readonly stateMutability: "view";
readonly inputs: readonly [{
readonly type: "uint32";
readonly name: "zoneId";
}, {
readonly type: "uint64";
readonly name: "tempoBlockNumber";
}, {
readonly type: "uint64";
readonly name: "anchorBlockNumber";
}, {
readonly type: "bytes32";
readonly name: "anchorBlockHash";
}, {
readonly type: "uint64";
readonly name: "expectedWithdrawalBatchIndex";
}, {
readonly type: "tuple";
readonly name: "blockTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevBlockHash";
}, {
readonly type: "bytes32";
readonly name: "nextBlockHash";
}];
}, {
readonly type: "tuple";
readonly name: "depositQueueTransition";
readonly components: readonly [{
readonly type: "bytes32";
readonly name: "prevProcessedHash";
}, {
readonly type: "bytes32";
readonly name: "nextProcessedHash";
}, {
readonly type: "uint64";
readonly name: "prevDepositNumber";
}, {
readonly type: "uint64";
readonly name: "nextDepositNumber";
}];
}, {
readonly type: "bytes32";
readonly name: "withdrawalQueueHash";
}, {
readonly type: "bytes";
readonly name: "verifierConfig";
}, {
readonly type: "bytes";
readonly name: "proof";
}];
readonly outputs: readonly [{
readonly type: "bool";
}];
}];
//# sourceMappingURL=Abis.d.ts.map