import { BaseContract } from '@0x/base-contract'; import { BlockParamLiteral, CallData, ContractAbi, ContractArtifact, DecodedLogArgs, Provider, TxData, TxDataPayable } from 'ethereum-types'; import { BigNumber } from '@0x/utils'; export declare type KyberReserveEventArgs = KyberReserveDepositTokenEventArgs | KyberReserveTradeExecuteEventArgs | KyberReserveTradeEnabledEventArgs | KyberReserveWithdrawAddressApprovedEventArgs | KyberReserveNewTokenWalletEventArgs | KyberReserveWithdrawFundsEventArgs | KyberReserveSetContractAddressesEventArgs | KyberReserveTokenWithdrawEventArgs | KyberReserveEtherWithdrawEventArgs | KyberReserveTransferAdminPendingEventArgs | KyberReserveAdminClaimedEventArgs | KyberReserveAlerterAddedEventArgs | KyberReserveOperatorAddedEventArgs; export declare enum KyberReserveEvents { DepositToken = "DepositToken", TradeExecute = "TradeExecute", TradeEnabled = "TradeEnabled", WithdrawAddressApproved = "WithdrawAddressApproved", NewTokenWallet = "NewTokenWallet", WithdrawFunds = "WithdrawFunds", SetContractAddresses = "SetContractAddresses", TokenWithdraw = "TokenWithdraw", EtherWithdraw = "EtherWithdraw", TransferAdminPending = "TransferAdminPending", AdminClaimed = "AdminClaimed", AlerterAdded = "AlerterAdded", OperatorAdded = "OperatorAdded" } export interface KyberReserveDepositTokenEventArgs extends DecodedLogArgs { token: string; amount: BigNumber; } export interface KyberReserveTradeExecuteEventArgs extends DecodedLogArgs { origin: string; src: string; srcAmount: BigNumber; destToken: string; destAmount: BigNumber; destAddress: string; } export interface KyberReserveTradeEnabledEventArgs extends DecodedLogArgs { enable: boolean; } export interface KyberReserveWithdrawAddressApprovedEventArgs extends DecodedLogArgs { token: string; addr: string; approve: boolean; } export interface KyberReserveNewTokenWalletEventArgs extends DecodedLogArgs { token: string; wallet: string; } export interface KyberReserveWithdrawFundsEventArgs extends DecodedLogArgs { token: string; amount: BigNumber; destination: string; } export interface KyberReserveSetContractAddressesEventArgs extends DecodedLogArgs { network: string; rate: string; sanity: string; } export interface KyberReserveTokenWithdrawEventArgs extends DecodedLogArgs { token: string; amount: BigNumber; sendTo: string; } export interface KyberReserveEtherWithdrawEventArgs extends DecodedLogArgs { amount: BigNumber; sendTo: string; } export interface KyberReserveTransferAdminPendingEventArgs extends DecodedLogArgs { pendingAdmin: string; } export interface KyberReserveAdminClaimedEventArgs extends DecodedLogArgs { newAdmin: string; previousAdmin: string; } export interface KyberReserveAlerterAddedEventArgs extends DecodedLogArgs { newAlerter: string; isAdd: boolean; } export interface KyberReserveOperatorAddedEventArgs extends DecodedLogArgs { newOperator: string; isAdd: boolean; } export declare class KyberReserveContract extends BaseContract { removeAlerter: { sendTransactionAsync(alerter: string, txData?: Partial): Promise; estimateGasAsync(alerter: string, txData?: Partial): Promise; getABIEncodedTransactionData(alerter: string): string; callAsync(alerter: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; pendingAdmin: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; getOperators: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; withdrawToken: { sendTransactionAsync(token: string, amount: BigNumber, sendTo: string, txData?: Partial): Promise; estimateGasAsync(token: string, amount: BigNumber, sendTo: string, txData?: Partial): Promise; getABIEncodedTransactionData(token: string, amount: BigNumber, sendTo: string): string; callAsync(token: string, amount: BigNumber, sendTo: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; addAlerter: { sendTransactionAsync(newAlerter: string, txData?: Partial): Promise; estimateGasAsync(newAlerter: string, txData?: Partial): Promise; getABIEncodedTransactionData(newAlerter: string): string; callAsync(newAlerter: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; sanityRatesContract: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; transferAdmin: { sendTransactionAsync(newAdmin: string, txData?: Partial): Promise; estimateGasAsync(newAdmin: string, txData?: Partial): Promise; getABIEncodedTransactionData(newAdmin: string): string; callAsync(newAdmin: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; claimAdmin: { sendTransactionAsync(txData?: Partial): Promise; estimateGasAsync(txData?: Partial): Promise; getABIEncodedTransactionData(): string; callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; transferAdminQuickly: { sendTransactionAsync(newAdmin: string, txData?: Partial): Promise; estimateGasAsync(newAdmin: string, txData?: Partial): Promise; getABIEncodedTransactionData(newAdmin: string): string; callAsync(newAdmin: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; getAlerters: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; addOperator: { sendTransactionAsync(newOperator: string, txData?: Partial): Promise; estimateGasAsync(newOperator: string, txData?: Partial): Promise; getABIEncodedTransactionData(newOperator: string): string; callAsync(newOperator: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; tokenWallet: { callAsync(index_0: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; removeOperator: { sendTransactionAsync(operator: string, txData?: Partial): Promise; estimateGasAsync(operator: string, txData?: Partial): Promise; getABIEncodedTransactionData(operator: string): string; callAsync(operator: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; kyberNetwork: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; withdrawEther: { sendTransactionAsync(amount: BigNumber, sendTo: string, txData?: Partial): Promise; estimateGasAsync(amount: BigNumber, sendTo: string, txData?: Partial): Promise; getABIEncodedTransactionData(amount: BigNumber, sendTo: string): string; callAsync(amount: BigNumber, sendTo: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; conversionRatesContract: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; tradeEnabled: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; approvedWithdrawAddresses: { callAsync(index_0: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; admin: { callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; trade: { sendTransactionAsync(srcToken: string, srcAmount: BigNumber, destToken: string, destAddress: string, conversionRate: BigNumber, validate: boolean, txData?: Partial): Promise; estimateGasAsync(srcToken: string, srcAmount: BigNumber, destToken: string, destAddress: string, conversionRate: BigNumber, validate: boolean, txData?: Partial): Promise; getABIEncodedTransactionData(srcToken: string, srcAmount: BigNumber, destToken: string, destAddress: string, conversionRate: BigNumber, validate: boolean): string; callAsync(srcToken: string, srcAmount: BigNumber, destToken: string, destAddress: string, conversionRate: BigNumber, validate: boolean, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; enableTrade: { sendTransactionAsync(txData?: Partial): Promise; estimateGasAsync(txData?: Partial): Promise; getABIEncodedTransactionData(): string; callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; disableTrade: { sendTransactionAsync(txData?: Partial): Promise; estimateGasAsync(txData?: Partial): Promise; getABIEncodedTransactionData(): string; callAsync(callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; approveWithdrawAddress: { sendTransactionAsync(token: string, addr: string, approve: boolean, txData?: Partial): Promise; estimateGasAsync(token: string, addr: string, approve: boolean, txData?: Partial): Promise; getABIEncodedTransactionData(token: string, addr: string, approve: boolean): string; callAsync(token: string, addr: string, approve: boolean, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; setTokenWallet: { sendTransactionAsync(token: string, wallet: string, txData?: Partial): Promise; estimateGasAsync(token: string, wallet: string, txData?: Partial): Promise; getABIEncodedTransactionData(token: string, wallet: string): string; callAsync(token: string, wallet: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; withdraw: { sendTransactionAsync(token: string, amount: BigNumber, destination: string, txData?: Partial): Promise; estimateGasAsync(token: string, amount: BigNumber, destination: string, txData?: Partial): Promise; getABIEncodedTransactionData(token: string, amount: BigNumber, destination: string): string; callAsync(token: string, amount: BigNumber, destination: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; setContracts: { sendTransactionAsync(_kyberNetwork: string, _conversionRates: string, _sanityRates: string, txData?: Partial): Promise; estimateGasAsync(_kyberNetwork: string, _conversionRates: string, _sanityRates: string, txData?: Partial): Promise; getABIEncodedTransactionData(_kyberNetwork: string, _conversionRates: string, _sanityRates: string): string; callAsync(_kyberNetwork: string, _conversionRates: string, _sanityRates: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; getBalance: { callAsync(token: string, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; getDestQty: { callAsync(src: string, dest: string, srcQty: BigNumber, rate: BigNumber, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; getSrcQty: { callAsync(src: string, dest: string, dstQty: BigNumber, rate: BigNumber, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; getConversionRate: { callAsync(src: string, dest: string, srcQty: BigNumber, blockNumber: BigNumber, callData?: Partial, defaultBlock?: number | BlockParamLiteral | undefined): Promise; }; static deployFrom0xArtifactAsync(artifact: ContractArtifact, provider: Provider, txDefaults: Partial, _kyberNetwork: string, _ratesContract: string, _admin: string): Promise; static deployAsync(bytecode: string, abi: ContractAbi, provider: Provider, txDefaults: Partial, _kyberNetwork: string, _ratesContract: string, _admin: string): Promise; constructor(abi: ContractAbi, address: string, provider: Provider, txDefaults?: Partial); }