import { Signer } from 'ethers';
import type { Provider } from '@ethersproject/providers';
import type { SynthetixExchangeRates, SynthetixExchangeRatesInterface } from '../SynthetixExchangeRates';
export declare class SynthetixExchangeRates__factory {
    static readonly abi: readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_owner";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_resolver";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "aggregator";
            readonly type: "address";
        }];
        readonly name: "AggregatorAdded";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "aggregator";
            readonly type: "address";
        }];
        readonly name: "AggregatorRemoved";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "name";
            readonly type: "bytes32";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "destination";
            readonly type: "address";
        }];
        readonly name: "CacheUpdated";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "newDexPriceAggregator";
            readonly type: "address";
        }];
        readonly name: "DexPriceAggregatorUpdated";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "oldOwner";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "newOwner";
            readonly type: "address";
        }];
        readonly name: "OwnerChanged";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "newOwner";
            readonly type: "address";
        }];
        readonly name: "OwnerNominated";
        readonly type: "event";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "CONTRACT_NAME";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [];
        readonly name: "acceptOwnership";
        readonly outputs: readonly [];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "address";
            readonly name: "aggregatorAddress";
            readonly type: "address";
        }];
        readonly name: "addAggregator";
        readonly outputs: readonly [];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "aggregatorKeys";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "aggregatorWarningFlags";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly name: "aggregators";
        readonly outputs: readonly [{
            readonly internalType: "contract AggregatorV2V3Interface";
            readonly name: "";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "currencyKeys";
            readonly type: "bytes32[]";
        }];
        readonly name: "anyRateIsInvalid";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "currencyKeys";
            readonly type: "bytes32[]";
        }, {
            readonly internalType: "uint256[]";
            readonly name: "roundIds";
            readonly type: "uint256[]";
        }];
        readonly name: "anyRateIsInvalidAtRound";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "aggregator";
            readonly type: "address";
        }];
        readonly name: "currenciesUsingAggregator";
        readonly outputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "currencies";
            readonly type: "bytes32[]";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly name: "currencyKeyDecimals";
        readonly outputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "";
            readonly type: "uint8";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "dexPriceAggregator";
        readonly outputs: readonly [{
            readonly internalType: "contract IDexPriceAggregator";
            readonly name: "";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "sourceCurrencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "destinationCurrencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "effectiveAtomicValueAndRates";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "systemValue";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "systemSourceRate";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "systemDestinationRate";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "currencyKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "address";
                readonly name: "dexPriceAggregator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "atomicEquivalentForDexPricing";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicExchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicTwapWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicMaxVolumePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityConsiderationWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityUpdateThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeMaxDynamicFee";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeRounds";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeWeightDecay";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IDirectIntegrationManager.ParameterIntegrationSettings";
            readonly name: "sourceSettings";
            readonly type: "tuple";
        }, {
            readonly internalType: "uint256";
            readonly name: "sourceAmount";
            readonly type: "uint256";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "currencyKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "address";
                readonly name: "dexPriceAggregator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "atomicEquivalentForDexPricing";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicExchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicTwapWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicMaxVolumePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityConsiderationWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityUpdateThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeMaxDynamicFee";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeRounds";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeWeightDecay";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IDirectIntegrationManager.ParameterIntegrationSettings";
            readonly name: "destinationSettings";
            readonly type: "tuple";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "currencyKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "address";
                readonly name: "dexPriceAggregator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "atomicEquivalentForDexPricing";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicExchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicTwapWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicMaxVolumePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityConsiderationWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityUpdateThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeMaxDynamicFee";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeRounds";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeWeightDecay";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IDirectIntegrationManager.ParameterIntegrationSettings";
            readonly name: "usdSettings";
            readonly type: "tuple";
        }];
        readonly name: "effectiveAtomicValueAndRates";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "systemValue";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "systemSourceRate";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "systemDestinationRate";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "sourceCurrencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "sourceAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "destinationCurrencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "effectiveValue";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "sourceCurrencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "sourceAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "destinationCurrencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "effectiveValueAndRates";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "sourceRate";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationRate";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "sourceCurrencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "sourceAmount";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "destinationCurrencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "roundIdForSrc";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "roundIdForDest";
            readonly type: "uint256";
        }];
        readonly name: "effectiveValueAndRatesAtRound";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "sourceRate";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "destinationRate";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "getCurrentRoundId";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "startingRoundId";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "startingTimestamp";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "timediff";
            readonly type: "uint256";
        }];
        readonly name: "getLastRoundIdBeforeElapsedSecs";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "isResolverCached";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "lastRateUpdateTimes";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "currencyKeys";
            readonly type: "bytes32[]";
        }];
        readonly name: "lastRateUpdateTimesForCurrencies";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "";
            readonly type: "uint256[]";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_owner";
            readonly type: "address";
        }];
        readonly name: "nominateNewOwner";
        readonly outputs: readonly [];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "nominatedOwner";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "owner";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateAndInvalid";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "rate";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "isInvalid";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "roundId";
            readonly type: "uint256";
        }];
        readonly name: "rateAndTimestampAtRound";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "rate";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "time";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateAndUpdatedTime";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "rate";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "time";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateForCurrency";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateIsFlagged";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateIsInvalid";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateIsStale";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "rateStalePeriod";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "rateWithSafetyChecks";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "rate";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "broken";
            readonly type: "bool";
        }, {
            readonly internalType: "bool";
            readonly name: "staleOrInvalid";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "currencyKeys";
            readonly type: "bytes32[]";
        }];
        readonly name: "ratesAndInvalidForCurrencies";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "rates";
            readonly type: "uint256[]";
        }, {
            readonly internalType: "bool";
            readonly name: "anyRateInvalid";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }, {
            readonly internalType: "uint256";
            readonly name: "numRounds";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "roundId";
            readonly type: "uint256";
        }];
        readonly name: "ratesAndUpdatedTimeForCurrencyLastNRounds";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "rates";
            readonly type: "uint256[]";
        }, {
            readonly internalType: "uint256[]";
            readonly name: "times";
            readonly type: "uint256[]";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "currencyKeys";
            readonly type: "bytes32[]";
        }];
        readonly name: "ratesForCurrencies";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "";
            readonly type: "uint256[]";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [];
        readonly name: "rebuildCache";
        readonly outputs: readonly [];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "removeAggregator";
        readonly outputs: readonly [];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "resolver";
        readonly outputs: readonly [{
            readonly internalType: "contract AddressResolver";
            readonly name: "";
            readonly type: "address";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [];
        readonly name: "resolverAddressesRequired";
        readonly outputs: readonly [{
            readonly internalType: "bytes32[]";
            readonly name: "addresses";
            readonly type: "bytes32[]";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: false;
        readonly inputs: readonly [{
            readonly internalType: "contract IDexPriceAggregator";
            readonly name: "_dexPriceAggregator";
            readonly type: "address";
        }];
        readonly name: "setDexPriceAggregator";
        readonly outputs: readonly [];
        readonly payable: false;
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "currencyKey";
            readonly type: "bytes32";
        }];
        readonly name: "synthTooVolatileForAtomicExchange";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly constant: true;
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "currencyKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "address";
                readonly name: "dexPriceAggregator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "atomicEquivalentForDexPricing";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicExchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicTwapWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicMaxVolumePerBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityConsiderationWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "atomicVolatilityUpdateThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeFeeRate";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeMaxDynamicFee";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeRounds";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeThreshold";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "exchangeDynamicFeeWeightDecay";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IDirectIntegrationManager.ParameterIntegrationSettings";
            readonly name: "settings";
            readonly type: "tuple";
        }];
        readonly name: "synthTooVolatileForAtomicExchange";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly payable: false;
        readonly stateMutability: "view";
        readonly type: "function";
    }];
    static createInterface(): SynthetixExchangeRatesInterface;
    static connect(address: string, signerOrProvider: Signer | Provider): SynthetixExchangeRates;
}
