import { type DeliverTxResponse } from '@cosmjs/stargate'; import { type ArtifactDeployed, type ArtifactNew, type ArtifactReader, type ArtifactWriter } from '@hyperlane-xyz/provider-sdk/artifact'; import { type DeployedMailboxAddress, type MailboxOnChain } from '@hyperlane-xyz/provider-sdk/mailbox'; import { type CosmosNativeSigner } from '../clients/signer.js'; import { type AnnotatedEncodeObject } from '../utils/types.js'; import { type CosmosMailboxQueryClient } from './mailbox-query.js'; /** * Reader for Cosmos Mailbox. * Reads deployed mailbox configuration from the chain. */ export declare class CosmosMailboxReader implements ArtifactReader { protected readonly query: CosmosMailboxQueryClient; constructor(query: CosmosMailboxQueryClient); read(address: string): Promise>; } /** * Writer for Cosmos Mailbox. * Handles deployment and updates. */ export declare class CosmosMailboxWriter extends CosmosMailboxReader implements ArtifactWriter { private readonly signer; private readonly domainId; constructor(query: CosmosMailboxQueryClient, signer: CosmosNativeSigner, domainId: number); create(artifact: ArtifactNew): Promise<[ ArtifactDeployed, DeliverTxResponse[] ]>; update(artifact: ArtifactDeployed): Promise; } //# sourceMappingURL=mailbox.d.ts.map