import { CosmWasmClient } from "@cosmjs/cosmwasm-stargate";
import { ChainAddress, ChainsConfig, Contracts, NativeAddress, Network, TokenBridge, TokenId, TxHash } from "@wormhole-foundation/connect-sdk";
import { AnyCosmwasmAddress, CosmwasmChains, CosmwasmPlatformType, CosmwasmUnsignedTransaction } from "@wormhole-foundation/connect-sdk-cosmwasm";
import "@wormhole-foundation/connect-sdk-cosmwasm-core";
export declare class CosmwasmTokenBridge<N extends Network, C extends CosmwasmChains> implements TokenBridge<N, C> {
    readonly network: N;
    readonly chain: C;
    readonly rpc: CosmWasmClient;
    readonly contracts: Contracts;
    private tokenBridge;
    private translator?;
    private constructor();
    static fromRpc<N extends Network>(rpc: CosmWasmClient, config: ChainsConfig<N, CosmwasmPlatformType>): Promise<CosmwasmTokenBridge<N, CosmwasmChains>>;
    isWrappedAsset(token: AnyCosmwasmAddress): Promise<boolean>;
    hasWrappedAsset(token: TokenId): Promise<boolean>;
    getWrappedAsset(token: TokenId): Promise<NativeAddress<C>>;
    getOriginalAsset(token: AnyCosmwasmAddress): Promise<TokenId>;
    isTransferCompleted(vaa: TokenBridge.TransferVAA): Promise<boolean>;
    createAttestation(token: AnyCosmwasmAddress, payer?: AnyCosmwasmAddress): AsyncGenerator<CosmwasmUnsignedTransaction<N, C>>;
    submitAttestation(vaa: TokenBridge.AttestVAA, payer?: AnyCosmwasmAddress): AsyncGenerator<CosmwasmUnsignedTransaction<N, C>>;
    transfer(sender: AnyCosmwasmAddress, recipient: ChainAddress, token: AnyCosmwasmAddress, amount: bigint, payload?: Uint8Array): AsyncGenerator<CosmwasmUnsignedTransaction<N, C>>;
    redeem(sender: AnyCosmwasmAddress, vaa: TokenBridge.TransferVAA, unwrapNative?: boolean): AsyncGenerator<CosmwasmUnsignedTransaction<N, C>>;
    parseTransactionDetails(txid: TxHash): Promise<void>;
    getWrappedNative(): Promise<NativeAddress<C>>;
    private createUnsignedTx;
}
//# sourceMappingURL=tokenBridge.d.ts.map