/** * @prettier */ import { EthLikeTokenConfig } from '@bitgo/statics'; import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo/sdk-core'; import { TransactionBuilder as EthLikeTransactionBuilder } from './lib'; import { AbstractEthLikeNewCoins, TransactionPrebuild, RecoverOptions, RecoveryInfo, OfflineVaultTxInfo } from './abstractEthLikeNewCoins'; export type CoinNames = { [network: string]: string; }; export declare class EthLikeToken extends AbstractEthLikeNewCoins { readonly tokenConfig: EthLikeTokenConfig; protected readonly sendMethodName: 'sendMultiSig' | 'sendMultiSigToken'; protected constructor(bitgo: BitGoBase, tokenConfig: EthLikeTokenConfig, coinNames: CoinNames); static createTokenConstructor(config: EthLikeTokenConfig, coinNames: CoinNames): CoinConstructor; static createTokenConstructors(coinNames: CoinNames, tokenConfigs?: EthLikeTokenConfig[]): NamedCoinConstructor[]; get type(): string; get name(): string; get coin(): string; get network(): string; get tokenContractAddress(): string; get decimalPlaces(): number; getChain(): string; getBaseChain(): string; getFullName(): string; getBaseFactor(): number; /** * Flag for sending value of 0 * @returns {boolean} True if okay to send 0 value, false otherwise */ valuelessTransferAllowed(): boolean; /** * Flag for sending data along with transactions * @returns {boolean} True if okay to send tx data (ETH), false otherwise */ transactionDataAllowed(): boolean; isToken(): boolean; getOperation(recipient: any, expireTime: any, contractSequenceId: any): any[][]; getSendMethodArgs(txInfo: any): { name: string; type: string; value: any; }[]; /** * Builds a token recovery transaction without BitGo * @param params * @param params.userKey {String} [encrypted] xprv * @param params.backupKey {String} [encrypted] xprv or xpub if the xprv is held by a KRS providers * @param params.walletPassphrase {String} used to decrypt userKey and backupKey * @param params.walletContractAddress {String} the ETH address of the wallet contract * @param params.recoveryDestination {String} target address to send recovered funds to * @param params.krsProvider {String} necessary if backup key is held by KRS * @param params.tokenContractAddress {String} contract address for token to recover */ recover(params: RecoverOptions): Promise; verifyCoin(txPrebuild: TransactionPrebuild): boolean; /** @inheritDoc */ getSignablePayload(serializedTx: string): Promise; /** * Create a new transaction builder for the current chain * @return a new transaction builder */ protected getTransactionBuilder(): EthLikeTransactionBuilder; /** * Check whether gas limit passed in by user are within our max and min bounds * If they are not set, set them to the defaults * @param {number} userGasLimit user defined gas limit * @returns {number} the gas limit to use for this transaction */ setGasLimit(userGasLimit?: number): number; } //# sourceMappingURL=ethLikeToken.d.ts.map