API ReferenceSetup and configurationVariable
letterOfCreditV3Abi
const letterOfCreditV3Abi: readonly [ { inputs: readonly []; stateMutability: 'nonpayable'; type: 'constructor'; }, { inputs: readonly [ { name: 'target'; type: 'address'; }, ]; name: 'AddressEmptyCode'; type: 'error'; }, { inputs: readonly [ { name: 'account'; type: 'address'; }, ]; name: 'AddressInsufficientBalance'; type: 'error'; }, { inputs: readonly [ { name: '_address'; type: 'address'; }, { name: '_forID'; type: 'uint96'; }, ]; name: 'AddressUnauthorizedForLOC'; type: 'error'; }, { inputs: readonly [ { name: '_collateralToken'; type: 'address'; }, { name: '_creditedToken'; type: 'address'; }, ]; name: 'AssetPairUnauthorized'; type: 'error'; }, { inputs: readonly [ { name: 'input'; type: 'uint256'; }, ]; name: 'CastOverflow'; type: 'error'; }, { inputs: readonly []; name: 'CollateralAmountInCreditedTokenZero'; type: 'error'; }, { inputs: readonly [ { name: '_creationCollateralFactor'; type: 'uint16'; }, { name: '_liquidationCollateralFactor'; type: 'uint16'; }, ]; name: 'CollateralFactorOverlap'; type: 'error'; }, { inputs: readonly [ { name: '_expectedFundsReceived'; type: 'uint256'; }, { name: '_actualFundsReceived'; type: 'uint256'; }, ]; name: 'ConversionFundsReceivedMismatch'; type: 'error'; }, { inputs: readonly []; name: 'CreditedTokenMinMaxOverlap'; type: 'error'; }, { inputs: readonly []; name: 'EnabledCreditedTokenMinPerDynamicLOCZero'; type: 'error'; }, { inputs: readonly []; name: 'FailedInnerCall'; type: 'error'; }, { inputs: readonly [ { name: '_globalMaxInUse'; type: 'uint256'; }, { name: '_value'; type: 'uint256'; }, ]; name: 'GlobalCreditedTokenMaxInUseExceeded'; type: 'error'; }, { inputs: readonly [ { name: '_need'; type: 'uint256'; }, { name: '_have'; type: 'uint256'; }, ]; name: 'InsufficientCollateral'; type: 'error'; }, { inputs: readonly [ { name: '_value'; type: 'uint16'; }, ]; name: 'InvalidBasisPointValue'; type: 'error'; }, { inputs: readonly [ { name: '_maxBasisPoints'; type: 'uint16'; }, { name: '_basisPoints'; type: 'uint16'; }, ]; name: 'InvalidCollateralFactor'; type: 'error'; }, { inputs: readonly []; name: 'InvalidInitialization'; type: 'error'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, { name: '_newExpirationTimestampSeconds'; type: 'uint32'; }, ]; name: 'InvalidLOCExtensionTimestamp'; type: 'error'; }, { inputs: readonly []; name: 'InvalidLOCParameters'; type: 'error'; }, { inputs: readonly [ { name: '_min'; type: 'uint16'; }, { name: '_max'; type: 'uint16'; }, { name: '_value'; type: 'uint16'; }, ]; name: 'InvalidMaxPriceUpdateSecondsAgo'; type: 'error'; }, { inputs: readonly [ { name: 'account'; type: 'address'; }, { name: 'signatureType'; type: 'bytes32'; }, { name: 'currentNonce'; type: 'uint256'; }, ]; name: 'InvalidNonce'; type: 'error'; }, { inputs: readonly [ { name: '_requestedAmount'; type: 'uint256'; }, { name: '_maxAvailable'; type: 'uint256'; }, ]; name: 'InvalidRedeemAmount'; type: 'error'; }, { inputs: readonly [ { name: '_accountAddress'; type: 'address'; }, ]; name: 'InvalidSignature'; type: 'error'; }, { inputs: readonly []; name: 'InvalidUpgradeContract'; type: 'error'; }, { inputs: readonly []; name: 'InvalidZeroAddress'; type: 'error'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, ]; name: 'LOCAlreadyConverted'; type: 'error'; }, { inputs: readonly [ { name: '_maxPerLOC'; type: 'uint256'; }, { name: '_value'; type: 'uint256'; }, ]; name: 'LOCCreditedTokenMaxExceeded'; type: 'error'; }, { inputs: readonly [ { name: '_minPerLOC'; type: 'uint256'; }, { name: '_value'; type: 'uint256'; }, ]; name: 'LOCCreditedTokenUnderMinimum'; type: 'error'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, { name: '_expirationTimestampSeconds'; type: 'uint32'; }, ]; name: 'LOCExpired'; type: 'error'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, ]; name: 'LOCHealthy'; type: 'error'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, ]; name: 'LOCNotFound'; type: 'error'; }, { inputs: readonly [ { name: '_collateralToSendLiquidator'; type: 'uint256'; }, { name: '_creditedAmountToReceive'; type: 'uint256'; }, ]; name: 'LiquidationAmountTooSmall'; type: 'error'; }, { inputs: readonly [ { name: '_max'; type: 'uint16'; }, { name: '_value'; type: 'uint16'; }, ]; name: 'LiquidatorIncentiveAboveMax'; type: 'error'; }, { inputs: readonly [ { name: '_was'; type: 'uint16'; }, { name: '_is'; type: 'uint16'; }, ]; name: 'LiquidatorIncentiveChanged'; type: 'error'; }, { inputs: readonly [ { name: '_maxSeconds'; type: 'uint32'; }, { name: '_expirationTimestampSeconds'; type: 'uint32'; }, ]; name: 'MaxLOCDurationExceeded'; type: 'error'; }, { inputs: readonly []; name: 'NoOp'; type: 'error'; }, { inputs: readonly []; name: 'NotInitializing'; type: 'error'; }, { inputs: readonly [ { name: 'owner'; type: 'address'; }, ]; name: 'OwnableInvalidOwner'; type: 'error'; }, { inputs: readonly [ { name: 'account'; type: 'address'; }, ]; name: 'OwnableUnauthorizedAccount'; type: 'error'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, ]; name: 'PartialConvertWithoutRedeem'; type: 'error'; }, { inputs: readonly []; name: 'PartialRedeemInsolvent'; type: 'error'; }, { inputs: readonly [ { name: '_publishTimeSeconds'; type: 'uint32'; }, { name: '_maxPriceUpdateSecondsAgo'; type: 'uint16'; }, ]; name: 'PriceUpdateStale'; type: 'error'; }, { inputs: readonly [ { name: '_max'; type: 'uint16'; }, { name: '_value'; type: 'uint16'; }, ]; name: 'RedeemBufferAboveMax'; type: 'error'; }, { inputs: readonly []; name: 'ReentrancyGuardReentrantCall'; type: 'error'; }, { inputs: readonly [ { name: 'token'; type: 'address'; }, ]; name: 'SafeERC20FailedOperation'; type: 'error'; }, { inputs: readonly [ { name: '_maxBytes'; type: 'uint256'; }, { name: '_actualBytes'; type: 'uint256'; }, ]; name: 'TagTooLong'; type: 'error'; }, { inputs: readonly [ { name: 'oldCollateralAddress'; type: 'address'; }, { name: 'newCollateralAddress'; type: 'address'; }, ]; name: 'CollateralAddressUpgraded'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'collateralTokenAddress'; type: 'address'; }, { indexed: true; name: 'creditedTokenAddress'; type: 'address'; }, { name: 'creationCollateralFactorBasisPoints'; type: 'uint16'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, ]; name: 'CollateralFactorUpdated'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'collateralTokenAddress'; type: 'address'; }, { indexed: true; name: 'creditedTokenAddress'; type: 'address'; }, { name: 'creationCollateralFactorBasisPoints'; type: 'uint16'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'redeemBufferBasisPoints'; type: 'uint16'; }, ]; name: 'CollateralFactorUpdatedV2'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'tokenAddress'; type: 'address'; }, { name: 'minPerDynamicLOC'; type: 'uint256'; }, { name: 'maxPerDynamicLOC'; type: 'uint256'; }, { name: 'globalMaxInDynamicUse'; type: 'uint256'; }, ]; name: 'CreditedTokenUpdated'; type: 'event'; }, { inputs: readonly []; name: 'EIP712DomainChanged'; type: 'event'; }, { inputs: readonly [ { name: 'version'; type: 'uint64'; }, ]; name: 'Initialized'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'id'; type: 'uint96'; }, ]; name: 'LOCCanceled'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'id'; type: 'uint96'; }, { name: 'oldCollateralAmount'; type: 'uint256'; }, { name: 'newCollateralAmount'; type: 'uint256'; }, { name: 'newClaimableCollateral'; type: 'uint256'; }, ]; name: 'LOCCollateralModified'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'id'; type: 'uint96'; }, { indexed: true; name: 'initiator'; type: 'address'; }, { indexed: true; name: 'liquidator'; type: 'address'; }, { name: 'liquidationAmount'; type: 'uint256'; }, { name: 'liquidationFeeAmount'; type: 'uint256'; }, { name: 'creditedTokenAmountReceived'; type: 'uint256'; }, ]; name: 'LOCConverted'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'creator'; type: 'address'; }, { indexed: true; name: 'beneficiary'; type: 'address'; }, { name: 'collateralContractAddress'; type: 'address'; }, { name: 'collateralTokenAddress'; type: 'address'; }, { name: 'collateralTokenAmount'; type: 'uint256'; }, { name: 'claimableCollateral'; type: 'uint256'; }, { name: 'expirationTimestamp'; type: 'uint32'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'creditedTokenAddress'; type: 'address'; }, { name: 'creditedTokenAmount'; type: 'uint256'; }, { name: 'id'; type: 'uint96'; }, ]; name: 'LOCCreated'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'creator'; type: 'address'; }, { indexed: true; name: 'beneficiary'; type: 'address'; }, { indexed: true; name: 'tag'; type: 'bytes32'; }, { name: 'collateralContractAddress'; type: 'address'; }, { name: 'collateralTokenAddress'; type: 'address'; }, { name: 'collateralTokenAmount'; type: 'uint256'; }, { name: 'claimableCollateral'; type: 'uint256'; }, { name: 'expirationTimestamp'; type: 'uint32'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'creditedTokenAddress'; type: 'address'; }, { name: 'creditedTokenAmount'; type: 'uint256'; }, { name: 'id'; type: 'uint96'; }, { name: 'collateralId'; type: 'uint96'; }, ]; name: 'LOCCreatedV2'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'creator'; type: 'address'; }, { indexed: true; name: 'beneficiary'; type: 'address'; }, { name: 'tag'; type: 'bytes'; }, { name: 'collateralContractAddress'; type: 'address'; }, { name: 'collateralTokenAddress'; type: 'address'; }, { name: 'collateralTokenAmount'; type: 'uint256'; }, { name: 'claimableCollateral'; type: 'uint256'; }, { name: 'expirationTimestamp'; type: 'uint32'; }, { name: 'creditedTokenAddress'; type: 'address'; }, { name: 'creditedTokenAmount'; type: 'uint256'; }, { name: 'id'; type: 'uint96'; }, { name: 'collateralId'; type: 'uint96'; }, ]; name: 'LOCCreatedV3'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'id'; type: 'uint96'; }, { name: 'oldExpirationTimestamp'; type: 'uint32'; }, { name: 'newExpirationTimestamp'; type: 'uint32'; }, ]; name: 'LOCExtended'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'id'; type: 'uint96'; }, { indexed: true; name: 'initiator'; type: 'address'; }, { indexed: true; name: 'liquidator'; type: 'address'; }, { name: 'liquidationAmount'; type: 'uint256'; }, { name: 'liquidationFeeAmount'; type: 'uint256'; }, { name: 'creditedTokenAmountReceived'; type: 'uint256'; }, ]; name: 'LOCPartiallyLiquidated'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'id'; type: 'uint96'; }, { indexed: true; name: 'destinationAddress'; type: 'address'; }, { name: 'creditedTokenAmount'; type: 'uint256'; }, { name: 'collateralTokenAmountUsed'; type: 'uint256'; }, { name: 'claimableCollateralUsed'; type: 'uint256'; }, ]; name: 'LOCRedeemed'; type: 'event'; }, { inputs: readonly [ { name: 'oldMaxDurationSeconds'; type: 'uint32'; }, { name: 'newMaxDurationSeconds'; type: 'uint32'; }, ]; name: 'MaxLocDurationSecondsUpdated'; type: 'event'; }, { inputs: readonly [ { name: 'oldSecondsAgo'; type: 'uint16'; }, { name: 'newSecondsAgo'; type: 'uint16'; }, ]; name: 'MaxPriceUpdateSecondsAgoUpdated'; type: 'event'; }, { inputs: readonly [ { name: 'timeDelay'; type: 'uint256'; }, { name: 'validAfterTimestamp'; type: 'uint256'; }, ]; name: 'OracleTimeDelayUpdatePending'; type: 'event'; }, { inputs: readonly [ { name: 'oldTimeDelay'; type: 'uint256'; }, { name: 'newTimeDelay'; type: 'uint256'; }, ]; name: 'OracleTimeDelayUpdated'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'previousOwner'; type: 'address'; }, { indexed: true; name: 'newOwner'; type: 'address'; }, ]; name: 'OwnershipTransferStarted'; type: 'event'; }, { inputs: readonly [ { indexed: true; name: 'previousOwner'; type: 'address'; }, { indexed: true; name: 'newOwner'; type: 'address'; }, ]; name: 'OwnershipTransferred'; type: 'event'; }, { inputs: readonly [ { name: 'priceOracle'; type: 'address'; }, { name: 'validAfterTimestamp'; type: 'uint256'; }, ]; name: 'PriceOracleUpgradePending'; type: 'event'; }, { inputs: readonly []; name: 'PriceOracleUpgradeRevoked'; type: 'event'; }, { inputs: readonly [ { name: 'oldPriceOracle'; type: 'address'; }, { name: 'newPriceOracle'; type: 'address'; }, ]; name: 'PriceOracleUpgraded'; type: 'event'; }, { inputs: readonly []; name: 'CANCEL_TYPEHASH'; outputs: readonly [ { type: 'bytes32'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'MAX_TAG_BYTES'; outputs: readonly [ { type: 'uint256'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'REDEEM_TYPEHASH'; outputs: readonly [ { type: 'bytes32'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'acceptOwnership'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: '_locId'; type: 'uint96'; }, { name: '_beneficiaryAuthorization'; type: 'bytes'; }, ]; name: 'cancelLOC'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly []; name: 'collateralContract'; outputs: readonly [ { type: 'address'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_locId'; type: 'uint96'; }, { name: '_liquidatorToUse'; type: 'address'; }, { name: '_oraclePriceUpdate'; type: 'bytes'; }, { type: 'bytes'; }, { name: '_liquidatorParams'; type: 'bytes'; }, ]; name: 'convertLOC'; outputs: readonly []; stateMutability: 'payable'; type: 'function'; }, { inputs: readonly [ { name: '_beneficiary'; type: 'address'; }, { name: '_collateralTokenAddress'; type: 'address'; }, { name: '_collateralTokenAmount'; type: 'uint256'; }, { name: '_creditedTokenAddress'; type: 'address'; }, { name: '_creditedTokenAmount'; type: 'uint256'; }, { name: '_expirationTimestamp'; type: 'uint32'; }, { name: '_oraclePriceUpdate'; type: 'bytes'; }, { name: '_collateralizableAllowanceSignature'; type: 'bytes'; }, { name: '_tag'; type: 'bytes'; }, ]; name: 'createDynamicLOC'; outputs: readonly [ { type: 'uint96'; }, ]; stateMutability: 'payable'; type: 'function'; }, { inputs: readonly [ { name: '_beneficiary'; type: 'address'; }, { name: '_tokenAddress'; type: 'address'; }, { name: '_tokenAmount'; type: 'uint256'; }, { name: '_expirationTimestamp'; type: 'uint32'; }, { name: '_collateralizableAllowanceSignature'; type: 'bytes'; }, { name: '_tag'; type: 'bytes'; }, ]; name: 'createStaticLOC'; outputs: readonly [ { type: 'uint96'; }, ]; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly []; name: 'eip712Domain'; outputs: readonly [ { name: 'fields'; type: 'bytes1'; }, { name: 'name'; type: 'string'; }, { name: 'version'; type: 'string'; }, { name: 'chainId'; type: 'uint256'; }, { name: 'verifyingContract'; type: 'address'; }, { name: 'salt'; type: 'bytes32'; }, { name: 'extensions'; type: 'uint256[]'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_locId'; type: 'uint96'; }, { name: '_newExpirationTimestamp'; type: 'uint32'; }, ]; name: 'extendLOC'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: '_collateralTokenAddress'; type: 'address'; }, { name: '_creditedTokenAddress'; type: 'address'; }, ]; name: 'getCollateralFactor'; outputs: readonly [ { components: readonly [ { name: 'creationCollateralFactorBasisPoints'; type: 'uint16'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'redeemBufferBasisPoints'; type: 'uint16'; }, ]; type: 'tuple'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_address'; type: 'address'; }, ]; name: 'getCreditedToken'; outputs: readonly [ { components: readonly [ { name: 'minPerDynamicLOC'; type: 'uint256'; }, { name: 'maxPerDynamicLOC'; type: 'uint256'; }, { name: 'globalMaxInDynamicUse'; type: 'uint256'; }, { name: 'globalAmountInDynamicUse'; type: 'uint256'; }, ]; type: 'tuple'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_id'; type: 'uint96'; }, ]; name: 'getLOC'; outputs: readonly [ { components: readonly [ { name: 'collateralId'; type: 'uint96'; }, { name: 'creator'; type: 'address'; }, { name: 'beneficiary'; type: 'address'; }, { name: 'expirationTimestamp'; type: 'uint32'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'collateralContract'; type: 'address'; }, { name: 'collateralTokenAddress'; type: 'address'; }, { name: 'collateralTokenAmount'; type: 'uint256'; }, { name: 'claimableCollateral'; type: 'uint256'; }, { name: 'creditedTokenAddress'; type: 'address'; }, { name: 'creditedTokenAmount'; type: 'uint256'; }, ]; type: 'tuple'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_owner'; type: 'address'; }, { name: '_collateralContract'; type: 'address'; }, { name: '_priceOracle'; type: 'address'; }, { name: '_maxPriceUpdateSecondsAgo'; type: 'uint16'; }, { name: '_maxLocDurationSeconds'; type: 'uint32'; }, { components: readonly [ { name: 'tokenAddress'; type: 'address'; }, { name: 'minPerDynamicLOC'; type: 'uint256'; }, { name: 'maxPerDynamicLOC'; type: 'uint256'; }, { name: 'globalMaxInDynamicUse'; type: 'uint256'; }, ]; name: '_creditedTokens'; type: 'tuple[]'; }, { components: readonly [ { name: 'collateralTokenAddress'; type: 'address'; }, { name: 'creditedTokenAddress'; type: 'address'; }, { components: readonly [ { name: 'creationCollateralFactorBasisPoints'; type: 'uint16'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'redeemBufferBasisPoints'; type: 'uint16'; }, ]; name: 'collateralFactor'; type: 'tuple'; }, ]; name: '_assetPairCollateralFactors'; type: 'tuple[]'; }, ]; name: 'initialize'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly []; name: 'maxLocDurationSeconds'; outputs: readonly [ { type: 'uint32'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'maxPriceUpdateSecondsAgo'; outputs: readonly [ { type: 'uint16'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_locId'; type: 'uint96'; }, { name: '_byAmount'; type: 'int256'; }, { name: '_oraclePriceUpdate'; type: 'bytes'; }, { name: '_collateralizableAllowanceSignature'; type: 'bytes'; }, ]; name: 'modifyLOCCollateral'; outputs: readonly []; stateMutability: 'payable'; type: 'function'; }, { inputs: readonly [ { name: '_owner'; type: 'address'; }, { name: '_signatureType'; type: 'bytes32'; }, ]; name: 'nonces'; outputs: readonly [ { type: 'uint256'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'owner'; outputs: readonly [ { type: 'address'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'pendingOwner'; outputs: readonly [ { type: 'address'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly []; name: 'priceOracle'; outputs: readonly [ { type: 'address'; }, ]; stateMutability: 'view'; type: 'function'; }, { inputs: readonly [ { name: '_locId'; type: 'uint96'; }, { name: '_creditedAmountToRedeem'; type: 'uint256'; }, { name: '_destinationAddress'; type: 'address'; }, { name: '_iLiquidatorToUse'; type: 'address'; }, { name: '_oraclePriceUpdate'; type: 'bytes'; }, { name: '_beneficiaryAuthorization'; type: 'bytes'; }, { name: '_liquidatorParams'; type: 'bytes'; }, ]; name: 'redeemLOC'; outputs: readonly []; stateMutability: 'payable'; type: 'function'; }, { inputs: readonly []; name: 'renounceOwnership'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: 'newOwner'; type: 'address'; }, ]; name: 'transferOwnership'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: '_newMaxLocDurationSeconds'; type: 'uint32'; }, ]; name: 'updateMaxLocDurationSeconds'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: '_maxPriceUpdateSecondsAgo'; type: 'uint16'; }, ]; name: 'updateMaxPriceUpdateSecondsAgo'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: '_collateralContract'; type: 'address'; }, ]; name: 'upgradeCollateralContract'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { name: '_newPriceOracle'; type: 'address'; }, ]; name: 'upgradePriceOracle'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { components: readonly [ { name: 'collateralTokenAddress'; type: 'address'; }, { name: 'creditedTokenAddress'; type: 'address'; }, { components: readonly [ { name: 'creationCollateralFactorBasisPoints'; type: 'uint16'; }, { name: 'collateralFactorBasisPoints'; type: 'uint16'; }, { name: 'liquidatorIncentiveBasisPoints'; type: 'uint16'; }, { name: 'redeemBufferBasisPoints'; type: 'uint16'; }, ]; name: 'collateralFactor'; type: 'tuple'; }, ]; name: '_assetPairCollateralFactors'; type: 'tuple[]'; }, ]; name: 'upsertCollateralFactors'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; }, { inputs: readonly [ { components: readonly [ { name: 'tokenAddress'; type: 'address'; }, { name: 'minPerDynamicLOC'; type: 'uint256'; }, { name: 'maxPerDynamicLOC'; type: 'uint256'; }, { name: 'globalMaxInDynamicUse'; type: 'uint256'; }, ]; name: '_creditedTokens'; type: 'tuple[]'; }, ]; name: 'upsertCreditedTokens'; outputs: readonly []; stateMutability: 'nonpayable'; type: 'function'; },];