@celo/contractkit
Version:
Celo's ContractKit to interact with Celo network
29 lines (28 loc) • 1.06 kB
TypeScript
import { FeeCurrencyDirectory } from '@celo/abis/web3/FeeCurrencyDirectory';
import { StrongAddress } from '@celo/base';
import BigNumber from 'bignumber.js';
import { AbstractFeeCurrencyWrapper } from './AbstractFeeCurrencyWrapper';
export interface FeeCurrencyDirectoryConfig {
intrinsicGasForAlternativeFeeCurrency: {
[feeCurrencyAddress: StrongAddress]: BigNumber;
};
}
/**
* FeeCurrencyDirectory contract listing available currencies usable to pay fees
*/
export declare class FeeCurrencyDirectoryWrapper extends AbstractFeeCurrencyWrapper<FeeCurrencyDirectory> {
getCurrencies: () => Promise<`0x${string}`[]>;
getAddresses(): Promise<StrongAddress[]>;
getExchangeRate: (token: StrongAddress) => Promise<{
numerator: BigNumber;
denominator: BigNumber;
}>;
getCurrencyConfig: (token: StrongAddress) => Promise<{
oracle: StrongAddress;
intrinsicGas: BigNumber;
}>;
/**
* Returns current configuration parameters.
*/
getConfig(): Promise<FeeCurrencyDirectoryConfig>;
}