import type { ArtifactReader, ArtifactWriter } from '@hyperlane-xyz/provider-sdk/artifact';
import type { DeployedRawValidatorAnnounceArtifact, DeployedValidatorAnnounceAddress, IRawValidatorAnnounceArtifactManager, RawValidatorAnnounceArtifactConfigs, ValidatorAnnounceType } from '@hyperlane-xyz/provider-sdk/validator-announce';
import type { SvmSigner } from '../clients/signer.js';
import type { SvmRpc } from '../types.js';
export declare class SvmValidatorAnnounceArtifactManager implements IRawValidatorAnnounceArtifactManager {
    private readonly rpc;
    private readonly domainId;
    constructor(rpc: SvmRpc, domainId: number);
    readValidatorAnnounce(address: string): Promise<DeployedRawValidatorAnnounceArtifact>;
    createReader<T extends ValidatorAnnounceType>(_type: T): ArtifactReader<RawValidatorAnnounceArtifactConfigs[T], DeployedValidatorAnnounceAddress>;
    createWriter<T extends ValidatorAnnounceType>(_type: T, signer: SvmSigner): ArtifactWriter<RawValidatorAnnounceArtifactConfigs[T], DeployedValidatorAnnounceAddress>;
}
//# sourceMappingURL=validator-announce-artifact-manager.d.ts.map