import type { Chain, ChainAddress, ChainId, ChainsConfig, Contracts, NativeAddress, Network, Platform, TokenBridge, TokenId } from '@wormhole-foundation/sdk-connect'; import { UniversalAddress } from '@wormhole-foundation/sdk-connect'; import type { AnySolanaAddress, SolanaChains } from '@wormhole-foundation/sdk-solana'; import { SolanaUnsignedTransaction } from '@wormhole-foundation/sdk-solana'; import { SolanaWormholeCore } from '@wormhole-foundation/sdk-solana-core'; import type { Program } from '@coral-xyz/anchor'; import type { Connection } from '@solana/web3.js'; import type { TokenBridge as TokenBridgeContract } from './tokenBridgeType.js'; import '@wormhole-foundation/sdk-solana-core'; export declare class SolanaTokenBridge implements TokenBridge { readonly network: N; readonly chain: C; readonly connection: Connection; readonly contracts: Contracts; readonly chainId: ChainId; readonly coreBridge: SolanaWormholeCore; readonly tokenBridge: Program; constructor(network: N, chain: C, connection: Connection, contracts: Contracts); static fromRpc(connection: Connection, config: ChainsConfig): Promise>; isWrappedAsset(token: AnySolanaAddress): Promise; getOriginalAsset(token: AnySolanaAddress): Promise; getTokenUniversalAddress(token: NativeAddress): Promise; getTokenNativeAddress(originChain: Chain, token: UniversalAddress): Promise>; hasWrappedAsset(token: TokenId): Promise; getWrappedAsset(token: TokenId): Promise extends infer T ? T extends import("@wormhole-foundation/sdk-connect").ChainToPlatform ? T extends "Solana" ? import("@wormhole-foundation/sdk-connect").WormholeRegistry.PlatformToNativeAddressMapping[T] : never : never : never>; isTransferCompleted(vaa: TokenBridge.TransferVAA): Promise; getWrappedNative(): Promise extends infer T ? T extends import("@wormhole-foundation/sdk-connect").ChainToPlatform ? T extends "Solana" ? import("@wormhole-foundation/sdk-connect").WormholeRegistry.PlatformToNativeAddressMapping[T] : never : never : never>; createAttestation(token: AnySolanaAddress, payer?: AnySolanaAddress): AsyncGenerator>; submitAttestation(vaa: TokenBridge.AttestVAA, payer?: AnySolanaAddress): AsyncGenerator>; private transferSol; transfer(sender: AnySolanaAddress, recipient: ChainAddress, token: AnySolanaAddress, amount: bigint, payload?: Uint8Array): AsyncGenerator>; private redeemAndUnwrap; private createAta; redeem(sender: AnySolanaAddress, vaa: TokenBridge.TransferVAA, unwrapNative?: boolean): AsyncGenerator, void, unknown>; private createUnsignedTx; } //# sourceMappingURL=tokenBridge.d.ts.map