PHP WebShell
Текущая директория: /opt/BitGoJS/node_modules/@celo/contractkit/lib
Просмотр файла: celo-tokens.d.ts
import { CeloTokenType, StableToken, Token } from '@celo/base';
import { BigNumber } from 'bignumber.js';
import { AddressRegistry } from './address-registry';
import { CeloContract, CeloTokenContract, ExchangeContract, StableTokenContract } from './base';
import { ContractCacheType } from './basic-contract-cache-type';
import { GoldTokenWrapper } from './wrappers/GoldTokenWrapper';
import { StableTokenWrapper } from './wrappers/StableTokenWrapper';
export { CeloTokenType, StableToken, Token } from '@celo/base';
export declare type EachCeloToken<T> = {
[key in CeloTokenType]?: T;
};
export declare type CeloTokenWrapper = GoldTokenWrapper | StableTokenWrapper;
export interface CeloTokenInfo {
contract: CeloTokenContract;
symbol: CeloTokenType;
}
export interface StableTokenInfo extends CeloTokenInfo {
contract: StableTokenContract;
exchangeContract: ExchangeContract;
}
/** Basic info for each stable token */
export declare const stableTokenInfos: {
[key in StableToken]: StableTokenInfo;
};
/** Basic info for each supported celo token, including stable tokens */
export declare const celoTokenInfos: {
[key in CeloTokenType]: CeloTokenInfo;
};
/**
* A helper class to interact with all Celo tokens, ie CELO and stable tokens
*/
export declare class CeloTokens {
readonly contracts: ContractCacheType;
readonly registry: AddressRegistry;
constructor(contracts: ContractCacheType, registry: AddressRegistry);
/**
* Gets an address's balance for each celo token.
* @param address the address to look up the balances for
* @return a promise resolving to an object containing the address's balance
* for each celo token
*/
balancesOf(address: string): Promise<EachCeloToken<BigNumber>>;
/**
* Gets the wrapper for each celo token.
* @return an promise resolving to an object containing the wrapper for each celo token.
*/
getWrappers(): Promise<EachCeloToken<CeloTokenWrapper>>;
/**
* Gets the address for each celo token proxy contract.
* @return an promise resolving to an object containing the address for each celo token proxy.
*/
getAddresses(): Promise<EachCeloToken<string>>;
getStablesConfigs(humanReadable?: boolean): Promise<EachCeloToken<import("./wrappers/StableTokenWrapper").StableTokenConfig | {
inflationParameters: {
updatePeriod: string;
factorLastUpdated: string;
rate: BigNumber;
factor: BigNumber;
};
decimals: number;
name: string;
symbol: string;
}>>;
getExchangesConfigs(humanReadable?: boolean): Promise<EachCeloToken<import("./wrappers/Exchange").ExchangeConfig | {
updateFrequency: string;
lastBucketUpdate: string;
spread: BigNumber;
reserveFraction: BigNumber;
minimumReports: BigNumber;
}>>;
/**
* Runs fn for each celo token found in celoTokenInfos, and returns the
* value of each call in an object keyed by the token.
* @param fn the function to be called for each CeloTokenInfo.
* @return an object containing the resolved value the call to fn for each
* celo token.
*/
forEachCeloToken<T>(fn: (info: CeloTokenInfo) => T | Promise<T>): Promise<EachCeloToken<T>>;
/**
* Runs fn for each stable token found in stableTokenInfos, and returns the
* value of each call in an object keyed by the token.
* @param fn the function to be called for each StableTokenInfo.
* @return an object containing the resolved value the call to fn for each
* celo token.
*/
forStableCeloToken<T>(fn: (info: StableTokenInfo) => T | Promise<T>): Promise<EachCeloToken<T>>;
private forEachWrapperInfo;
validCeloTokenInfos(): Promise<CeloTokenInfo[]>;
validStableTokenInfos(): Promise<StableTokenInfo[]>;
/**
* Gets the wrapper for a given celo token.
* @param token the token to get the appropriate wrapper for
* @return an promise resolving to the wrapper for the token
*/
getWrapper(token: StableToken): Promise<StableTokenWrapper>;
getWrapper(token: Token): Promise<GoldTokenWrapper>;
getWrapper(token: CeloTokenType): Promise<CeloTokenWrapper>;
/**
* Gets the contract for the provided token
* @param token the token to get the contract of
* @return The contract for the token
*/
getContract(token: StableToken): StableTokenContract;
/**
* Gets the exchange contract for the provided stable token
* @param token the stable token to get exchange contract of
* @return The exchange contract for the token
*/
getExchangeContract(token: StableToken): ExchangeContract;
/**
* Gets the address of the contract for the provided token.
* @param token the token to get the (proxy) contract address for
* @return A promise resolving to the address of the token's contract
*/
getAddress: (token: CeloTokenType) => Promise<string>;
/**
* Gets the address to use as the feeCurrency when paying for gas with the
* provided token.
* @param token the token to get the feeCurrency address for
* @return If not CELO, the address of the token's contract. If CELO, undefined.
*/
getFeeCurrencyAddress(token: CeloTokenType): Promise<string> | undefined;
/**
* Returns if the provided token is a StableToken
* @param token the token
* @return if token is a StableToken
*/
isStableToken(token: CeloTokenType): boolean;
isStableTokenContract: typeof isStableTokenContract;
}
export declare function isStableTokenContract(contract: CeloContract): boolean;
Выполнить команду
Для локальной разработки. Не используйте в интернете!