import { ChainMap, ChainName } from '@hyperlane-xyz/sdk';
import { ChainResolver } from './types.js';
declare enum ChainSelectionMode {
    AGENT_KURTOSIS = 0,
    WARP_CONFIG = 1,
    WARP_READ = 2,
    STRATEGY = 3,
    CORE_APPLY = 4,
    DEFAULT = 5
}
/**
 * @title MultiChainResolver
 * @notice Resolves chains based on the specified selection mode.
 */
export declare class MultiChainResolver implements ChainResolver {
    private mode;
    constructor(mode: ChainSelectionMode);
    resolveChains(argv: ChainMap<any>): Promise<ChainName[]>;
    private resolveWarpRouteConfigChains;
    private resolveWarpCoreConfigChains;
    private resolveAgentChains;
    private resolveStrategyChains;
    private resolveRelayerChains;
    private getWarpRouteConfigChains;
    private resolveCoreApplyChains;
    private getEvmChains;
    static forAgentKurtosis(): MultiChainResolver;
    static forRelayer(): MultiChainResolver;
    static forStrategyConfig(): MultiChainResolver;
    static forWarpRouteConfig(): MultiChainResolver;
    static forWarpCoreConfig(): MultiChainResolver;
    static forCoreApply(): MultiChainResolver;
    static default(): MultiChainResolver;
}
export {};
//# sourceMappingURL=MultiChainResolver.d.ts.map