import type { CosmWasmClient } from "@cosmjs/cosmwasm-stargate";
import type { IndexedTx } from "@cosmjs/stargate";
import type { Chain, ChainsConfig, Contracts, Network, VAA, WormholeCore, WormholeMessageId } from "@wormhole-foundation/sdk-connect";
import type { AnyCosmwasmAddress, CosmwasmChains, CosmwasmPlatformType, CosmwasmUnsignedTransaction } from "@wormhole-foundation/sdk-cosmwasm";
export declare class CosmwasmWormholeCore<N extends Network, C extends CosmwasmChains> implements WormholeCore<N, C> {
    readonly network: N;
    readonly chain: C;
    readonly rpc: CosmWasmClient;
    readonly contracts: Contracts;
    private coreAddress;
    constructor(network: N, chain: C, rpc: CosmWasmClient, contracts: Contracts);
    getGuardianSet(index: number): Promise<WormholeCore.GuardianSet>;
    getGuardianSetIndex(): Promise<number>;
    getMessageFee(): Promise<bigint>;
    static fromRpc<N extends Network>(rpc: CosmWasmClient, config: ChainsConfig<N, CosmwasmPlatformType>): Promise<CosmwasmWormholeCore<N, CosmwasmChains>>;
    publishMessage(sender: AnyCosmwasmAddress, message: Uint8Array, nonce: number, consistencyLevel: number): AsyncGenerator<CosmwasmUnsignedTransaction<N, C>>;
    verifyMessage(sender: AnyCosmwasmAddress, vaa: VAA): AsyncGenerator<never, void, unknown>;
    parseTransaction(txid: string): Promise<WormholeMessageId[]>;
    parseMessages(txid: string): Promise<VAA<"Uint8Array">[]>;
    static parseWormholeMessage(chain: Chain, coreAddress: string, tx: IndexedTx): VAA<"Uint8Array">;
    static parseWormholeMessageId(chain: Chain, coreAddress: string, tx: IndexedTx): WormholeMessageId;
}
//# sourceMappingURL=core.d.ts.map