import { HexString, ProtocolType } from '@hyperlane-xyz/utils';
import type { MultiProviderAdapter } from '../providers/MultiProviderAdapter.js';
import { ChainName } from '../types.js';
import { IMultiProtocolSigner } from './types.js';
export type MultiProtocolSignerSignerAccountInfo = {
    protocol: Exclude<ProtocolType, ProtocolType.Sealevel | ProtocolType.Starknet>;
    privateKey: HexString;
} | {
    protocol: ProtocolType.Sealevel;
    privateKey: Uint8Array;
} | {
    protocol: ProtocolType.Starknet;
    privateKey: HexString;
    address: HexString;
};
export declare function getSignerForChain<TProtocol extends ProtocolType>(chainName: ChainName, accountConfig: MultiProtocolSignerSignerAccountInfo, multiProtocolProvider: MultiProviderAdapter): Promise<IMultiProtocolSigner<TProtocol>>;
//# sourceMappingURL=signers.d.ts.map