import { Program } from '@project-serum/anchor';
import { Connection, TransactionResponse, VersionedTransactionResponse } from '@solana/web3.js';
import { ChainId, ChainsConfig, Contracts, Network, Platform, UniversalAddress, VAA, WormholeCore, WormholeMessageId } from '@wormhole-foundation/connect-sdk';
import { AnySolanaAddress, SolanaChains, SolanaUnsignedTransaction } from '@wormhole-foundation/connect-sdk-solana';
import { Wormhole as WormholeCoreContract } from './types';
import { BridgeData } from './utils';
export declare class SolanaWormholeCore<N extends Network, C extends SolanaChains> implements WormholeCore<N, C> {
    readonly network: N;
    readonly chain: C;
    readonly connection: Connection;
    readonly contracts: Contracts;
    readonly chainId: ChainId;
    readonly coreBridge: Program<WormholeCoreContract>;
    readonly address: string;
    protected bridgeData?: BridgeData;
    constructor(network: N, chain: C, connection: Connection, contracts: Contracts);
    static fromRpc<N extends Network>(connection: Connection, config: ChainsConfig<N, Platform>): Promise<SolanaWormholeCore<N, "Solana" | "Pythnet">>;
    getMessageFee(): Promise<bigint>;
    publishMessage(sender: AnySolanaAddress, message: Uint8Array, nonce: number, consistencyLevel: number): AsyncGenerator<SolanaUnsignedTransaction<N, C>, void, unknown>;
    verifyMessage(sender: AnySolanaAddress, vaa: VAA): AsyncGenerator<SolanaUnsignedTransaction<N, C>, void, unknown>;
    postVaa(sender: AnySolanaAddress, vaa: VAA): AsyncGenerator<SolanaUnsignedTransaction<N, C>, void, unknown>;
    static parseSequenceFromLog(coreBridgeAddress: string, transaction: VersionedTransactionResponse | TransactionResponse): [UniversalAddress, bigint] | null;
    parseTransaction(txid: string): Promise<WormholeMessageId[]>;
    private createUnsignedTx;
}
//# sourceMappingURL=core.d.ts.map