import { Address } from '@hyperlane-xyz/utils'; import { HyperlaneContractsMap } from '../contracts/types.js'; import { CoreFactories } from '../core/contracts.js'; import { CoreConfig } from '../core/types.js'; import { IgpFactories } from '../gas/contracts.js'; import { IgpConfig } from '../gas/types.js'; import { HookConfig, HookType } from '../hook/types.js'; import { IsmConfig, IsmType, MultisigIsmConfig, WeightedMultisigIsmConfig } from '../ism/types.js'; import { RouterConfig } from '../router/types.js'; import { ChainMap, ChainName } from '../types.js'; export declare function randomInt(max: number, min?: number): number; export declare function randomAddress(): Address; export declare function randomSvmAddress(): Address; export declare function randomStarknetAddress(): Address; export declare function randomCosmosAddress(prefix: string): Promise
; export declare function createRouterConfigMap(owner: Address, coreContracts: HyperlaneContractsMap, igpContracts: HyperlaneContractsMap): ChainMap; export declare function testCoreConfig(chains: ChainName[], owner?: string): ChainMap; export declare function testIgpConfig(chains: ChainName[], owner?: string): ChainMap; export declare const hookTypes: ("custom" | "merkleTreeHook" | "interchainGasPaymaster" | "aggregationHook" | "protocolFee" | "opStackHook" | "domainRoutingHook" | "fallbackRoutingHook" | "amountRoutingHook" | "pausableHook" | "arbL2ToL1Hook" | "defaultHook" | "ccipHook" | "unknownHook")[]; export declare const hookTypesToFilter: HookType[]; export declare const DEFAULT_TOKEN_DECIMALS = 18; export declare function randomHookConfig(depth?: number, maxDepth?: number, providedHookType?: HookType): HookConfig; export declare const randomMultisigIsmConfig: (m: number, n: number, addresses?: string[]) => MultisigIsmConfig; export declare const randomWeightedMultisigIsmConfig: (n: number, addresses?: string[]) => WeightedMultisigIsmConfig; export declare const randomIsmConfig: (depth?: number, maxDepth?: number, providedIsmType?: IsmType) => Exclude; /** * Generate a random ISM config suitable for deployment with specific validators/relayer. * Unlike randomIsmConfig, this version allows specifying validator addresses and relayer * for use in hardhat tests where real signatures are needed. */ export declare const randomDeployableIsmConfig: (maxDepth?: number, validatorAddresses?: string[], relayerAddress?: string) => Exclude; //# sourceMappingURL=testUtils.d.ts.map