import { PaymentsFactory } from '@faast/payments-common';
import { EthereumPaymentsUtilsConfig, HdEthereumPaymentsConfig, KeyPairEthereumPaymentsConfig, HdErc20PaymentsConfig, KeyPairErc20PaymentsConfig } from './types';
import { EthereumConnectionManager } from './EthereumConnectionManager';
import { BaseEthereumPayments } from './BaseEthereumPayments';
import { EthereumPaymentsUtils } from './EthereumPaymentsUtils';
import { HdEthereumPayments } from './HdEthereumPayments';
import { KeyPairEthereumPayments } from './KeyPairEthereumPayments';
import { HdErc20Payments } from './erc20/HdErc20Payments';
import { KeyPairErc20Payments } from './erc20/KeyPairErc20Payments';
export declare class EthereumPaymentsFactory extends PaymentsFactory<EthereumPaymentsUtilsConfig, EthereumPaymentsUtils, BaseEthereumPayments<EthereumPaymentsUtilsConfig>> {
    readonly packageName = "ethereum-payments";
    newPayments(config: HdErc20PaymentsConfig): HdErc20Payments;
    newPayments(config: KeyPairErc20PaymentsConfig): KeyPairErc20Payments;
    newPayments(config: HdEthereumPaymentsConfig): HdEthereumPayments;
    newPayments(config: KeyPairEthereumPaymentsConfig): KeyPairEthereumPayments;
    newUtils(config: EthereumPaymentsUtilsConfig): EthereumPaymentsUtils;
    connectionManager: EthereumConnectionManager;
}
export default EthereumPaymentsFactory;
