export declare const priceAndFeeCalculatorAbi: readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "numeraire"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "oracleRegistry"; readonly internalType: "contract IOracleRegistry"; readonly type: "address"; }, { readonly name: "owner_"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "authority_"; readonly internalType: "contract Authority"; readonly type: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "NUMERAIRE"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "ORACLE_REGISTRY"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "contract IOracleRegistry"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "acceptOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "authority"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "contract Authority"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "feeTokenBalance"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "claimFees"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "feeTokenBalance"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "claimProtocolFees"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokenAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "convertTokenToUnits"; readonly outputs: readonly [{ readonly name: "unitsAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokenAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "rounding"; readonly internalType: "enum Math.Rounding"; readonly type: "uint8"; }]; readonly name: "convertTokenToUnitsIfActive"; readonly outputs: readonly [{ readonly name: "unitsAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "unitsAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "convertUnitsToNumeraire"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "convertUnitsToToken"; readonly outputs: readonly [{ readonly name: "tokenAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "rounding"; readonly internalType: "enum Math.Rounding"; readonly type: "uint8"; }]; readonly name: "convertUnitsToTokenIfActive"; readonly outputs: readonly [{ readonly name: "tokenAmount"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "getVaultState"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "struct VaultPriceState"; readonly type: "tuple"; readonly components: readonly [{ readonly name: "paused"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint8"; readonly type: "uint8"; }, { readonly name: "minUpdateIntervalMinutes"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxPriceToleranceRatio"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "minPriceToleranceRatio"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxUpdateDelayDays"; readonly internalType: "uint8"; readonly type: "uint8"; }, { readonly name: "timestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "accrualLag"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "unitPrice"; readonly internalType: "uint128"; readonly type: "uint128"; }, { readonly name: "highestPrice"; readonly internalType: "uint128"; readonly type: "uint128"; }, { readonly name: "lastTotalSupply"; readonly internalType: "uint128"; readonly type: "uint128"; }]; }, { readonly name: ""; readonly internalType: "struct VaultAccruals"; readonly type: "tuple"; readonly components: readonly [{ readonly name: "fees"; readonly internalType: "struct Fee"; readonly type: "tuple"; readonly components: readonly [{ readonly name: "tvl"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "performance"; readonly internalType: "uint16"; readonly type: "uint16"; }]; }, { readonly name: "accruedFees"; readonly internalType: "uint112"; readonly type: "uint112"; }, { readonly name: "accruedProtocolFees"; readonly internalType: "uint112"; readonly type: "uint112"; }]; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "getVaultsPriceAge"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "isVaultPaused"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "owner"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "pauseVault"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "pendingOwner"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "feeTokenBalance"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "previewFees"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "protocolFeeRecipient"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "protocolFees"; readonly outputs: readonly [{ readonly name: "tvl"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "performance"; readonly internalType: "uint16"; readonly type: "uint16"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "registerVault"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "resetHighestPrice"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "newAuthority"; readonly internalType: "contract Authority"; readonly type: "address"; }]; readonly name: "setAuthority"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "price"; readonly internalType: "uint128"; readonly type: "uint128"; }, { readonly name: "timestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }]; readonly name: "setInitialPrice"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "feeRecipient"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "setProtocolFeeRecipient"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "tvl"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "performance"; readonly internalType: "uint16"; readonly type: "uint16"; }]; readonly name: "setProtocolFees"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "minPriceToleranceRatio"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxPriceToleranceRatio"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "minUpdateIntervalMinutes"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint8"; readonly type: "uint8"; }, { readonly name: "maxUpdateDelayDays"; readonly internalType: "uint8"; readonly type: "uint8"; }]; readonly name: "setThresholds"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "price"; readonly internalType: "uint128"; readonly type: "uint128"; }, { readonly name: "timestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }]; readonly name: "setUnitPrice"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "accountant"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "setVaultAccountant"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "tvl"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "performance"; readonly internalType: "uint16"; readonly type: "uint16"; }]; readonly name: "setVaultFees"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "newOwner"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "transferOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "price"; readonly internalType: "uint128"; readonly type: "uint128"; }, { readonly name: "timestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }]; readonly name: "unpauseVault"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "vaultAccountant"; readonly outputs: readonly [{ readonly name: "accountant"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "newAuthority"; readonly internalType: "contract Authority"; readonly type: "address"; readonly indexed: true; }]; readonly name: "AuthorityUpdated"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "newHighestPrice"; readonly internalType: "uint128"; readonly type: "uint128"; readonly indexed: false; }]; readonly name: "HighestPriceReset"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "previousOwner"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "newOwner"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "OwnershipTransferStarted"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "newOwner"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "OwnershipTransferred"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "feeRecipient"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "ProtocolFeeRecipientSet"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "tvlFee"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }, { readonly name: "performanceFee"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }]; readonly name: "ProtocolFeesSet"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minPriceToleranceRatio"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }, { readonly name: "maxPriceToleranceRatio"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }, { readonly name: "minUpdateIntervalMinutes"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint8"; readonly type: "uint8"; readonly indexed: false; }]; readonly name: "ThresholdsSet"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "price"; readonly internalType: "uint128"; readonly type: "uint128"; readonly indexed: false; }, { readonly name: "timestamp"; readonly internalType: "uint32"; readonly type: "uint32"; readonly indexed: false; }]; readonly name: "UnitPriceUpdated"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: false; }, { readonly name: "accountant"; readonly internalType: "address"; readonly type: "address"; readonly indexed: false; }]; readonly name: "VaultAccountantSet"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tvlFee"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }, { readonly name: "performanceFee"; readonly internalType: "uint16"; readonly type: "uint16"; readonly indexed: false; }]; readonly name: "VaultFeesSet"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "paused"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "VaultPausedChanged"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "vault"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "VaultRegistered"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotAuthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotVaultAccountant"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotVaultOwner"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CurrentPriceAboveHighestPrice"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidMaxPriceAge"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidMaxPriceToleranceRatio"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidMaxUpdateDelayDays"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidMinPriceToleranceRatio"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidPrice"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PerformanceFeeTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__StalePrice"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ThresholdNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TimestampCantBeInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TimestampMismatch"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TimestampMustBeAfterLastUpdate"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TvlFeeTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitPriceMismatch"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__VaultAlreadyInitialized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__VaultAlreadyRegistered"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__VaultNotInitialized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__VaultNotPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__VaultNotRegistered"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__VaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressNumeraire"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressOracleRegistry"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressProtocolFeeRecipient"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "bits"; readonly internalType: "uint8"; readonly type: "uint8"; }, { readonly name: "value"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly name: "SafeCastOverflowedUintDowncast"; }]; //# sourceMappingURL=priceAndFeeCalculator.d.ts.map