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;

Выполнить команду


Для локальной разработки. Не используйте в интернете!