import type { ArtifactReader, ArtifactWriter } from '@hyperlane-xyz/provider-sdk/artifact';
import type { DeployedRawIsmArtifact, IRawIsmArtifactManager, RawIsmArtifactConfigs } from '@hyperlane-xyz/provider-sdk/ism';
import type { SvmSigner } from '../clients/signer.js';
import type { SvmDeployedIsm, SvmRpc } from '../types.js';
export declare class SvmIsmArtifactManager implements IRawIsmArtifactManager {
    private readonly rpc;
    constructor(rpc: SvmRpc);
    readIsm(address: string): Promise<DeployedRawIsmArtifact>;
    createReader<T extends keyof RawIsmArtifactConfigs>(type: T): ArtifactReader<RawIsmArtifactConfigs[T], SvmDeployedIsm>;
    createWriter<T extends keyof RawIsmArtifactConfigs>(type: T, signer: SvmSigner): ArtifactWriter<RawIsmArtifactConfigs[T], SvmDeployedIsm>;
    private altVmToTypeKey;
}
//# sourceMappingURL=ism-artifact-manager.d.ts.map