import type { AccountAddress, ChainAddress, ChainsConfig, Contracts, ExecutorTokenBridge, Network, Platform, TokenAddress, TokenId } from '@wormhole-foundation/sdk-connect';
import type { EvmChains } from '@wormhole-foundation/sdk-evm';
import { EvmUnsignedTransaction } from '@wormhole-foundation/sdk-evm';
import type { Provider, TransactionRequest } from 'ethers';
import { Contract } from 'ethers';
import '@wormhole-foundation/sdk-evm-core';
import { EvmWormholeCore } from '@wormhole-foundation/sdk-evm-core';
export declare class EvmExecutorTokenBridge<N extends Network, C extends EvmChains> implements ExecutorTokenBridge<N, C> {
    readonly network: N;
    readonly chain: C;
    readonly provider: Provider;
    readonly contracts: Contracts;
    readonly chainId: bigint;
    readonly relayerAddress: string;
    readonly relayerWithReferrerAddress: string;
    readonly relayerWithReferrerContract: Contract;
    readonly core: EvmWormholeCore<N, C>;
    constructor(network: N, chain: C, provider: Provider, contracts: Contracts);
    static fromRpc<N extends Network>(provider: Provider, config: ChainsConfig<N, Platform>): Promise<EvmExecutorTokenBridge<N, EvmChains>>;
    transfer(sender: AccountAddress<C>, recipient: ChainAddress, token: TokenAddress<C>, amount: bigint, executorQuote: ExecutorTokenBridge.ExecutorQuote, referrerFee?: ExecutorTokenBridge.ReferrerFee): AsyncGenerator<EvmUnsignedTransaction<N, C>>;
    redeem(sender: AccountAddress<C>, vaa: ExecutorTokenBridge.VAA): AsyncGenerator<EvmUnsignedTransaction<N, C>>;
    estimateMsgValueAndGasLimit(receivedToken: TokenId, recipient?: ChainAddress): Promise<{
        msgValue: bigint;
        gasLimit: bigint;
    }>;
    createUnsignedTx(txReq: TransactionRequest, description: string): EvmUnsignedTransaction<N, C>;
}
//# sourceMappingURL=executorTokenBridge.d.ts.map