import type { providers as EV5Providers, PopulatedTransaction as EV5Transaction } from 'ethers'; import { Address, HexString, Numberish } from '@hyperlane-xyz/utils'; import { ChainMetadata } from '../metadata/chainMetadataTypes.js'; import { AleoProvider, AleoTransaction, CosmJsNativeProvider, CosmJsNativeTransaction, CosmJsProvider, CosmJsTransaction, CosmJsWasmProvider, CosmJsWasmTransaction, EthersV5Provider, RadixProvider, RadixTransaction, SolanaWeb3Provider, SolanaWeb3Transaction, StarknetJsProvider, StarknetJsTransaction, TypedProvider, TypedTransaction, ViemProvider, ViemTransaction } from './ProviderType.js'; export interface TransactionFeeEstimate { gasUnits: number | bigint; gasPrice: number | bigint; fee: number | bigint; } export declare function estimateTransactionFeeEthersV5({ transaction, provider, sender, }: { transaction: EV5Transaction; provider: EV5Providers.Provider; sender: Address; }): Promise; export declare function estimateTransactionFeeEthersV5ForGasUnits({ provider, gasUnits, }: { provider: EthersV5Provider['provider']; gasUnits: bigint; }): Promise; export declare function estimateTransactionFeeViem({ transaction, provider, sender, }: { transaction: ViemTransaction; provider: ViemProvider; sender: Address; }): Promise; export declare function estimateTransactionFeeSolanaWeb3({ provider, transaction, }: { transaction: SolanaWeb3Transaction; provider: SolanaWeb3Provider; }): Promise; export declare function estimateTransactionFeeCosmJs({ transaction, provider, estimatedGasPrice, sender, senderPubKey, memo, }: { transaction: CosmJsTransaction; provider: CosmJsProvider; estimatedGasPrice: Numberish; sender: Address; senderPubKey: HexString; memo?: string; }): Promise; export declare function estimateTransactionFeeCosmJsWasm({ transaction, provider, estimatedGasPrice, sender, senderPubKey, memo, }: { transaction: CosmJsWasmTransaction; provider: CosmJsWasmProvider; estimatedGasPrice: Numberish; sender: Address; senderPubKey: HexString; memo?: string; }): Promise; export declare function estimateTransactionFeeCosmJsNative({ transaction, provider, estimatedGasPrice, senderAddress, senderPubKey, }: { transaction: CosmJsNativeTransaction; provider: CosmJsNativeProvider; estimatedGasPrice: Numberish; senderAddress: Address; senderPubKey: HexString; }): Promise; export declare function estimateTransactionFeeStarknet({ transaction: _transaction, provider: _provider, sender: _sender, }: { transaction: StarknetJsTransaction; provider: StarknetJsProvider; sender: Address; }): Promise; export declare function estimateTransactionFeeRadix({ transaction, provider, }: { transaction: RadixTransaction; provider: RadixProvider; }): Promise; export declare function estimateTransactionFeeAleo({ transaction, provider, }: { transaction: AleoTransaction; provider: AleoProvider; }): Promise; export declare function estimateTransactionFee({ transaction, provider, chainMetadata, sender, senderPubKey, }: { transaction: TypedTransaction; provider: TypedProvider; chainMetadata: ChainMetadata; sender: Address; senderPubKey?: HexString; }): Promise; //# sourceMappingURL=transactionFeeEstimators.d.ts.map