UNPKG

@faast/ethereum-payments

Version:

Library to assist in processing ethereum payments, such as deriving addresses and sweeping funds

580 lines (579 loc) 25.2 kB
import * as t from 'io-ts'; export declare enum EthereumAddressFormat { Lowercase = "lowercase", Checksum = "checksum" } export declare const EthereumAddressFormatT: t.Type<EthereumAddressFormat, EthereumAddressFormat, unknown>; export declare type EthTxType = 'ETHEREUM_TRANSFER' | 'CONTRACT_DEPLOY' | 'TOKEN_SWEEP' | 'TOKEN_TRANSFER'; export declare const EthereumSignatory: t.TypeC<{ address: t.StringC; keys: t.TypeC<{ pub: t.StringC; prv: t.StringC; }>; xkeys: t.TypeC<{ xprv: t.StringC; xpub: t.StringC; }>; }>; export declare type EthereumSignatory = t.TypeOf<typeof EthereumSignatory>; export declare const EthereumPaymentsUtilsConfig: t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>; export declare type EthereumPaymentsUtilsConfig = t.TypeOf<typeof EthereumPaymentsUtilsConfig>; export declare const BaseEthereumPaymentsConfig: t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>; export declare type BaseEthereumPaymentsConfig = t.TypeOf<typeof BaseEthereumPaymentsConfig>; export declare const HdEthereumPaymentsConfig: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ hdKey: t.StringC; }>]>; export declare type HdEthereumPaymentsConfig = t.TypeOf<typeof HdEthereumPaymentsConfig>; export declare const KeyPairEthereumPaymentsConfig: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ keyPairs: t.UnionC<[t.ArrayC<t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>, t.RecordC<t.NumberC, t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>]>; }>]>; export declare type KeyPairEthereumPaymentsConfig = t.TypeOf<typeof KeyPairEthereumPaymentsConfig>; export declare const BaseErc20PaymentsConfig: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>; export declare type BaseErc20PaymentsConfig = t.TypeOf<typeof BaseErc20PaymentsConfig>; export declare const HdErc20PaymentsConfig: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>, t.TypeC<{ hdKey: t.StringC; }>]>; export declare type HdErc20PaymentsConfig = t.TypeOf<typeof HdErc20PaymentsConfig>; export declare const KeyPairErc20PaymentsConfig: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>, t.TypeC<{ keyPairs: t.UnionC<[t.ArrayC<t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>, t.RecordC<t.NumberC, t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>]>; }>]>; export declare type KeyPairErc20PaymentsConfig = t.TypeOf<typeof KeyPairErc20PaymentsConfig>; export declare const Erc20PaymentsConfig: t.UnionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>, t.TypeC<{ hdKey: t.StringC; }>]>, t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>, t.TypeC<{ keyPairs: t.UnionC<[t.ArrayC<t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>, t.RecordC<t.NumberC, t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>]>; }>]>]>; export declare type Erc20PaymentsConfig = t.TypeOf<typeof Erc20PaymentsConfig>; export declare const EthereumPaymentsConfig: t.UnionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ hdKey: t.StringC; }>]>, t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ keyPairs: t.UnionC<[t.ArrayC<t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>, t.RecordC<t.NumberC, t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>]>; }>]>, t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>, t.TypeC<{ hdKey: t.StringC; }>]>, t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.PartialC<{ network: t.Type<import("@faast/payments-common").NetworkType, import("@faast/payments-common").NetworkType, unknown>; logger: import("@faast/ts-common").LoggerC; }>, t.PartialC<{ fullNode: t.UnionC<[t.StringC, t.UndefinedC]>; parityNode: t.UnionC<[t.StringC, t.UndefinedC]>; blockbookNode: t.UnionC<[t.StringC, t.UndefinedC]>; gasStation: t.UnionC<[t.StringC, t.UndefinedC]>; symbol: t.UnionC<[t.StringC, t.UndefinedC]>; name: t.UnionC<[t.StringC, t.UndefinedC]>; decimals: t.NumberC; providerOptions: t.AnyC; web3: t.AnyC; }>]>, t.PartialC<{ depositKeyIndex: t.UnionC<[t.NumberC, t.UndefinedC]>; }>]>, t.TypeC<{ tokenAddress: t.StringC; }>, t.PartialC<{ masterAddress: t.StringC; }>]>, t.TypeC<{ keyPairs: t.UnionC<[t.ArrayC<t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>, t.RecordC<t.NumberC, t.UnionC<[t.StringC, t.NullC, t.UndefinedC]>>]>; }>]>]>; export declare type EthereumPaymentsConfig = t.TypeOf<typeof EthereumPaymentsConfig>; export declare const EthereumTransactionOptions: t.IntersectionC<[t.IntersectionC<[t.UnionC<[t.IntersectionC<[t.TypeC<{ feeRate: t.StringC; feeRateType: t.Type<import("@faast/payments-common").FeeRateType, import("@faast/payments-common").FeeRateType, unknown>; }>, t.PartialC<{ feeLevel: t.LiteralC<import("@faast/payments-common").FeeLevel.Custom>; }>]>, t.PartialC<{ feeLevel: t.UnionC<[t.LiteralC<import("@faast/payments-common").FeeLevel.High>, t.LiteralC<import("@faast/payments-common").FeeLevel.Medium>, t.LiteralC<import("@faast/payments-common").FeeLevel.Low>]>; }>]>, t.PartialC<{ sequenceNumber: t.UnionC<[t.StringC, t.NumberC, import("@faast/ts-common").BigNumberC]>; payportBalance: t.UnionC<[t.StringC, t.NumberC, import("@faast/ts-common").BigNumberC]>; forcedUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; availableUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; useAllUtxos: t.BooleanC; useUnconfirmedUtxos: t.BooleanC; recipientPaysFee: t.BooleanC; maxFeePercent: t.UnionC<[t.StringC, t.NumberC, import("@faast/ts-common").BigNumberC]>; }>]>, t.PartialC<{ data: t.StringC; gas: t.UnionC<[t.StringC, t.NumberC, import("@faast/ts-common").BigNumberC]>; proxyAddress: t.StringC; }>]>; export declare type EthereumTransactionOptions = t.TypeOf<typeof EthereumTransactionOptions>; export declare const EthereumUnsignedTransaction: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.TypeC<{ status: t.Type<import("@faast/payments-common").TransactionStatus, import("@faast/payments-common").TransactionStatus, unknown>; id: t.UnionC<[t.StringC, t.NullC]>; fromAddress: t.UnionC<[t.StringC, t.NullC]>; toAddress: t.UnionC<[t.StringC, t.NullC]>; fromIndex: t.UnionC<[t.NumberC, t.NullC]>; toIndex: t.UnionC<[t.NumberC, t.NullC]>; amount: t.UnionC<[t.StringC, t.NullC]>; fee: t.UnionC<[t.StringC, t.NullC]>; }>, t.PartialC<{ fromExtraId: t.UnionC<[t.StringC, t.NullC]>; toExtraId: t.UnionC<[t.StringC, t.NullC]>; sequenceNumber: t.UnionC<[t.UnionC<[t.StringC, t.NumberC]>, t.NullC]>; inputUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; outputUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; externalOutputs: t.ArrayC<t.IntersectionC<[t.TypeC<{ address: t.StringC; value: t.StringC; }>, t.PartialC<{ extraId: t.UnionC<[t.StringC, t.NullC]>; }>]>>; weight: t.NumberC; }>]>, t.TypeC<{ fromAddress: t.StringC; toAddress: t.StringC; fromIndex: t.NumberC; targetFeeLevel: t.Type<import("@faast/payments-common").FeeLevel, import("@faast/payments-common").FeeLevel, unknown>; targetFeeRate: t.UnionC<[t.StringC, t.NullC]>; targetFeeRateType: t.UnionC<[t.Type<import("@faast/payments-common").FeeRateType, import("@faast/payments-common").FeeRateType, unknown>, t.NullC]>; }>, t.PartialC<{ multisigData: t.TypeC<{ m: t.NumberC; accountIds: t.ArrayC<t.StringC>; publicKeys: t.ArrayC<t.StringC>; signedAccountIds: t.ArrayC<t.StringC>; }>; }>]>, t.TypeC<{ status: t.LiteralC<import("@faast/payments-common").TransactionStatus.Unsigned>; data: t.ObjectC; }>]>, t.TypeC<{ amount: t.StringC; fee: t.StringC; }>]>; export declare type EthereumUnsignedTransaction = t.TypeOf<typeof EthereumUnsignedTransaction>; export declare const EthereumSignedTransaction: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.TypeC<{ status: t.Type<import("@faast/payments-common").TransactionStatus, import("@faast/payments-common").TransactionStatus, unknown>; id: t.UnionC<[t.StringC, t.NullC]>; fromAddress: t.UnionC<[t.StringC, t.NullC]>; toAddress: t.UnionC<[t.StringC, t.NullC]>; fromIndex: t.UnionC<[t.NumberC, t.NullC]>; toIndex: t.UnionC<[t.NumberC, t.NullC]>; amount: t.UnionC<[t.StringC, t.NullC]>; fee: t.UnionC<[t.StringC, t.NullC]>; }>, t.PartialC<{ fromExtraId: t.UnionC<[t.StringC, t.NullC]>; toExtraId: t.UnionC<[t.StringC, t.NullC]>; sequenceNumber: t.UnionC<[t.UnionC<[t.StringC, t.NumberC]>, t.NullC]>; inputUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; outputUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; externalOutputs: t.ArrayC<t.IntersectionC<[t.TypeC<{ address: t.StringC; value: t.StringC; }>, t.PartialC<{ extraId: t.UnionC<[t.StringC, t.NullC]>; }>]>>; weight: t.NumberC; }>]>, t.TypeC<{ fromAddress: t.StringC; toAddress: t.StringC; fromIndex: t.NumberC; targetFeeLevel: t.Type<import("@faast/payments-common").FeeLevel, import("@faast/payments-common").FeeLevel, unknown>; targetFeeRate: t.UnionC<[t.StringC, t.NullC]>; targetFeeRateType: t.UnionC<[t.Type<import("@faast/payments-common").FeeRateType, import("@faast/payments-common").FeeRateType, unknown>, t.NullC]>; }>, t.PartialC<{ multisigData: t.TypeC<{ m: t.NumberC; accountIds: t.ArrayC<t.StringC>; publicKeys: t.ArrayC<t.StringC>; signedAccountIds: t.ArrayC<t.StringC>; }>; }>]>, t.TypeC<{ status: t.LiteralC<import("@faast/payments-common").TransactionStatus.Signed>; id: t.StringC; amount: t.StringC; fee: t.StringC; data: t.ObjectC; }>]>, t.TypeC<{ data: t.TypeC<{ hex: t.StringC; }>; }>]>; export declare type EthereumSignedTransaction = t.TypeOf<typeof EthereumSignedTransaction>; export declare const EthereumTransactionInfo: t.IntersectionC<[t.IntersectionC<[t.TypeC<{ status: t.Type<import("@faast/payments-common").TransactionStatus, import("@faast/payments-common").TransactionStatus, unknown>; id: t.UnionC<[t.StringC, t.NullC]>; fromAddress: t.UnionC<[t.StringC, t.NullC]>; toAddress: t.UnionC<[t.StringC, t.NullC]>; fromIndex: t.UnionC<[t.NumberC, t.NullC]>; toIndex: t.UnionC<[t.NumberC, t.NullC]>; amount: t.UnionC<[t.StringC, t.NullC]>; fee: t.UnionC<[t.StringC, t.NullC]>; }>, t.PartialC<{ fromExtraId: t.UnionC<[t.StringC, t.NullC]>; toExtraId: t.UnionC<[t.StringC, t.NullC]>; sequenceNumber: t.UnionC<[t.UnionC<[t.StringC, t.NumberC]>, t.NullC]>; inputUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; outputUtxos: t.ArrayC<t.IntersectionC<[t.TypeC<{ txid: t.StringC; vout: t.NumberC; value: t.StringC; }>, t.PartialC<{ satoshis: t.UnionC<[t.NumberC, t.StringC]>; confirmations: t.NumberC; height: t.StringC; lockTime: t.StringC; coinbase: t.BooleanC; txHex: t.StringC; scriptPubKeyHex: t.StringC; address: t.StringC; spent: t.BooleanC; }>]>>; externalOutputs: t.ArrayC<t.IntersectionC<[t.TypeC<{ address: t.StringC; value: t.StringC; }>, t.PartialC<{ extraId: t.UnionC<[t.StringC, t.NullC]>; }>]>>; weight: t.NumberC; }>]>, t.TypeC<{ id: t.StringC; amount: t.StringC; fee: t.StringC; isExecuted: t.BooleanC; isConfirmed: t.BooleanC; confirmations: t.NumberC; confirmationId: t.UnionC<[t.StringC, t.NullC]>; confirmationTimestamp: t.UnionC<[import("@faast/ts-common").DateC, t.NullC]>; data: t.ObjectC; }>, t.PartialC<{ currentBlockNumber: t.UnionC<[t.StringC, t.NumberC]>; confirmationNumber: t.UnionC<[t.StringC, t.NumberC]>; }>]>; export declare type EthereumTransactionInfo = t.TypeOf<typeof EthereumTransactionInfo>; export declare const EthereumBroadcastResult: t.TypeC<{ id: t.StringC; }>; export declare type EthereumBroadcastResult = t.TypeOf<typeof EthereumBroadcastResult>; export declare const EthereumResolvedFeeOption: t.IntersectionC<[t.TypeC<{ targetFeeLevel: t.Type<import("@faast/payments-common").FeeLevel, import("@faast/payments-common").FeeLevel, unknown>; targetFeeRate: t.StringC; targetFeeRateType: t.Type<import("@faast/payments-common").FeeRateType, import("@faast/payments-common").FeeRateType, unknown>; feeBase: t.StringC; feeMain: t.StringC; }>, t.TypeC<{ gasPrice: t.StringC; }>]>; export declare type EthereumResolvedFeeOption = t.TypeOf<typeof EthereumResolvedFeeOption>; export declare const EthereumFeeOption: t.IntersectionC<[t.UnionC<[t.IntersectionC<[t.TypeC<{ feeRate: t.StringC; feeRateType: t.Type<import("@faast/payments-common").FeeRateType, import("@faast/payments-common").FeeRateType, unknown>; }>, t.PartialC<{ feeLevel: t.LiteralC<import("@faast/payments-common").FeeLevel.Custom>; }>]>, t.PartialC<{ feeLevel: t.UnionC<[t.LiteralC<import("@faast/payments-common").FeeLevel.High>, t.LiteralC<import("@faast/payments-common").FeeLevel.Medium>, t.LiteralC<import("@faast/payments-common").FeeLevel.Low>]>; }>]>, t.PartialC<{ isSweep: t.BooleanC; }>]>; export declare type EthereumFeeOption = t.TypeOf<typeof EthereumFeeOption>; export declare const EthereumFeeOptionCustom: t.IntersectionC<[t.IntersectionC<[t.TypeC<{ feeRate: t.StringC; feeRateType: t.Type<import("@faast/payments-common").FeeRateType, import("@faast/payments-common").FeeRateType, unknown>; }>, t.PartialC<{ feeLevel: t.LiteralC<import("@faast/payments-common").FeeLevel.Custom>; }>]>, t.PartialC<{ isSweep: t.BooleanC; }>]>; export declare type EthereumFeeOptionCustom = t.TypeOf<typeof EthereumFeeOptionCustom>; export declare const BaseDenominationOptions: t.IntersectionC<[t.ObjectC, t.PartialC<{ rounding: t.UnionC<[t.LiteralC<1>, t.LiteralC<2>, t.LiteralC<3>, t.LiteralC<4>, t.LiteralC<5>, t.LiteralC<6>, t.LiteralC<7>, t.LiteralC<8>]>; }>]>; export declare type BaseDenominationOptions = t.TypeOf<typeof BaseDenominationOptions>;