/** * The types defined here are the source of truth for chain metadata. * ANY CHANGES HERE NEED TO BE REFLECTED IN HYPERLANE-BASE CONFIG PARSING. */ import { z } from 'zod'; import { ModuleType } from '@hyperlane-xyz/sdk'; import { ProtocolType } from '@hyperlane-xyz/utils'; import { MultiProvider } from '../providers/MultiProvider.js'; import { ChainMap, ChainName } from '../types.js'; import { HyperlaneDeploymentArtifacts } from './deploymentArtifacts.js'; export declare enum RpcConsensusType { Single = "single", Fallback = "fallback", Quorum = "quorum" } export declare enum AgentLogLevel { Off = "off", Error = "error", Warn = "warn", Info = "info", Debug = "debug", Trace = "trace" } export declare enum AgentLogFormat { Json = "json", Compact = "compact", Full = "full", Pretty = "pretty" } export declare enum AgentIndexMode { Block = "block", Sequence = "sequence" } export declare enum AgentSignerKeyType { Aws = "aws", Hex = "hexKey", Node = "node", Cosmos = "cosmosKey", Starknet = "starkKey", Radix = "radixKey" } export declare enum AgentSealevelPriorityFeeOracleType { Helius = "helius", Constant = "constant" } export declare enum AgentSealevelHeliusFeeLevel { Recommended = "recommended", Min = "min", Low = "low", Medium = "medium", High = "high", VeryHigh = "veryHigh", UnsafeMax = "unsafeMax" } export declare enum AgentSealevelTransactionSubmitterType { Rpc = "rpc", Jito = "jito" } declare const AgentSignerHexKeySchema: z.ZodObject<{ type: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>; declare const AgentSignerAwsKeySchema: z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>; declare const AgentSignerNodeSchema: z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>; declare const AgentSignerSchema: z.ZodUnion<[z.ZodObject<{ type: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>; export type AgentSignerHexKey = z.infer; export type AgentSignerAwsKey = z.infer; export type AgentSignerCosmosKey = z.infer; export type AgentSignerNode = z.infer; export type AgentSigner = z.infer; declare const AgentCosmosChainMetadataSchema: z.ZodObject<{ canonicalAsset: z.ZodString; gasPrice: z.ZodObject<{ denom: z.ZodString; amount: z.ZodString; }, "strip", z.ZodTypeAny, { denom: string; amount: string; }, { denom: string; amount: string; }>; contractAddressBytes: z.ZodNumber; }, "strip", z.ZodTypeAny, { gasPrice: { denom: string; amount: string; }; canonicalAsset: string; contractAddressBytes: number; }, { gasPrice: { denom: string; amount: string; }; canonicalAsset: string; contractAddressBytes: number; }>; export type AgentCosmosGasPrice = z.infer['gasPrice']; declare const AgentSealevelChainMetadataSchema: z.ZodObject<{ priorityFeeOracle: z.ZodOptional; url: z.ZodString; feeLevel: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }>, z.ZodObject<{ type: z.ZodLiteral; fee: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }>]>>; transactionSubmitter: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }>>; processAltOverrides: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; addressLookupTable: z.ZodString; }, "strip", z.ZodTypeAny, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }>, "many">, z.ZodString]>>; }, "strip", z.ZodTypeAny, { priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; }, { priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; }>; export type AgentSealevelChainMetadata = z.infer; export type AgentSealevelPriorityFeeOracle = AgentSealevelChainMetadata['priorityFeeOracle']; export type AgentSealevelTransactionSubmitter = AgentSealevelChainMetadata['transactionSubmitter']; export declare const AgentChainMetadataSchema: z.ZodEffects; reasons: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }>, z.ZodObject<{ status: z.ZodLiteral; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }>]>>; bech32Prefix: z.ZodOptional; blockExplorers: z.ZodOptional; family: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ExplorerFamily, string>>; }, "strip", z.ZodTypeAny, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }>, "many">>; blocks: z.ZodOptional>; estimateBlockTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }>>; bypassBatchSimulation: z.ZodOptional; chainId: z.ZodUnion<[z.ZodNumber, z.ZodString]>; customGrpcUrls: z.ZodOptional; deployer: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; url?: string | undefined; email?: string | undefined; }, { name: string; url?: string | undefined; email?: string | undefined; }>>; displayName: z.ZodOptional; displayNameShort: z.ZodOptional; domainId: z.ZodNumber; gasCurrencyCoinGeckoId: z.ZodOptional; gnosisSafeTransactionServiceUrl: z.ZodOptional; gnosisSafeApiKey: z.ZodOptional; grpcUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; isTestnet: z.ZodOptional; logoURI: z.ZodOptional; name: z.ZodString; nativeToken: z.ZodOptional; }, "strip", z.ZodTypeAny, { symbol: string; name: string; decimals: number; denom?: string | undefined; }, { symbol: string; name: string; decimals: number; denom?: string | undefined; }>>; protocol: z.ZodEffects, z.ZodString]>, ProtocolType, string>; restUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; rpcUrls: z.ZodArray; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">; slip44: z.ZodOptional; technicalStack: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ChainTechnicalStack, string>>; transactionOverrides: z.ZodOptional>; mailbox: z.ZodString; merkleTreeHook: z.ZodString; interchainGasPaymaster: z.ZodString; validatorAnnounce: z.ZodString; interchainSecurityModule: z.ZodOptional; customRpcUrls: z.ZodOptional; rpcConsensusType: z.ZodOptional>; signer: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; index: z.ZodOptional; chunk: z.ZodOptional; mode: z.ZodOptional>; }, "strip", z.ZodTypeAny, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }>>; } & { canonicalAsset: z.ZodOptional; gasPrice: z.ZodOptional>; contractAddressBytes: z.ZodOptional; } & { priorityFeeOracle: z.ZodOptional; url: z.ZodString; feeLevel: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }>, z.ZodObject<{ type: z.ZodLiteral; fee: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }>]>>>; transactionSubmitter: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }>>>; processAltOverrides: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; addressLookupTable: z.ZodString; }, "strip", z.ZodTypeAny, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }>, "many">, z.ZodString]>>>; }, "strip", z.ZodTypeAny, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; export type AgentChainMetadata = z.infer; export declare const AgentConfigSchema: z.ZodObject<{ metricsPort: z.ZodOptional; chains: z.ZodEffects; reasons: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }>, z.ZodObject<{ status: z.ZodLiteral; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }>]>>; bech32Prefix: z.ZodOptional; blockExplorers: z.ZodOptional; family: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ExplorerFamily, string>>; }, "strip", z.ZodTypeAny, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }>, "many">>; blocks: z.ZodOptional>; estimateBlockTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }>>; bypassBatchSimulation: z.ZodOptional; chainId: z.ZodUnion<[z.ZodNumber, z.ZodString]>; customGrpcUrls: z.ZodOptional; deployer: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; url?: string | undefined; email?: string | undefined; }, { name: string; url?: string | undefined; email?: string | undefined; }>>; displayName: z.ZodOptional; displayNameShort: z.ZodOptional; domainId: z.ZodNumber; gasCurrencyCoinGeckoId: z.ZodOptional; gnosisSafeTransactionServiceUrl: z.ZodOptional; gnosisSafeApiKey: z.ZodOptional; grpcUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; isTestnet: z.ZodOptional; logoURI: z.ZodOptional; name: z.ZodString; nativeToken: z.ZodOptional; }, "strip", z.ZodTypeAny, { symbol: string; name: string; decimals: number; denom?: string | undefined; }, { symbol: string; name: string; decimals: number; denom?: string | undefined; }>>; protocol: z.ZodEffects, z.ZodString]>, ProtocolType, string>; restUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; rpcUrls: z.ZodArray; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">; slip44: z.ZodOptional; technicalStack: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ChainTechnicalStack, string>>; transactionOverrides: z.ZodOptional>; mailbox: z.ZodString; merkleTreeHook: z.ZodString; interchainGasPaymaster: z.ZodString; validatorAnnounce: z.ZodString; interchainSecurityModule: z.ZodOptional; customRpcUrls: z.ZodOptional; rpcConsensusType: z.ZodOptional>; signer: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; index: z.ZodOptional; chunk: z.ZodOptional; mode: z.ZodOptional>; }, "strip", z.ZodTypeAny, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }>>; } & { canonicalAsset: z.ZodOptional; gasPrice: z.ZodOptional>; contractAddressBytes: z.ZodOptional; } & { priorityFeeOracle: z.ZodOptional; url: z.ZodString; feeLevel: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }>, z.ZodObject<{ type: z.ZodLiteral; fee: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }>]>>>; transactionSubmitter: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }>>>; processAltOverrides: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; addressLookupTable: z.ZodString; }, "strip", z.ZodTypeAny, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }>, "many">, z.ZodString]>>>; }, "strip", z.ZodTypeAny, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>; defaultSigner: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; log: z.ZodOptional>; level: z.ZodOptional>; }, "strip", z.ZodTypeAny, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }>>; }, "strip", z.ZodTypeAny, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; }, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; }>; export declare enum GasPaymentEnforcementPolicyType { None = "none", Minimum = "minimum", OnChainFeeQuoting = "onChainFeeQuoting" } declare const GasPaymentEnforcementSchema: z.ZodUnion<[z.ZodObject<{ matchingList: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">>; } & { type: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type?: GasPaymentEnforcementPolicyType.None | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }, { type?: GasPaymentEnforcementPolicyType.None | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }>, z.ZodObject<{ matchingList: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">>; } & { type: z.ZodOptional>; payment: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { payment: string | number; type?: GasPaymentEnforcementPolicyType.Minimum | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }, { payment: string | number; type?: GasPaymentEnforcementPolicyType.Minimum | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }>, z.ZodObject<{ matchingList: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">>; } & { type: z.ZodLiteral; gasFraction: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: GasPaymentEnforcementPolicyType.OnChainFeeQuoting; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; gasFraction?: string | undefined; }, { type: GasPaymentEnforcementPolicyType.OnChainFeeQuoting; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; gasFraction?: string | undefined; }>]>; export type GasPaymentEnforcement = z.infer; export declare enum IsmCachePolicy { MessageSpecific = "messageSpecific", IsmSpecific = "ismSpecific" } export declare enum IsmCacheSelectorType { DefaultIsm = "defaultIsm", AppContext = "appContext" } declare const IsmCacheConfigSchema: z.ZodObject<{ selector: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: IsmCacheSelectorType.DefaultIsm; }, { type: IsmCacheSelectorType.DefaultIsm; }>, z.ZodObject<{ type: z.ZodLiteral; context: z.ZodString; }, "strip", z.ZodTypeAny, { type: IsmCacheSelectorType.AppContext; context: string; }, { type: IsmCacheSelectorType.AppContext; context: string; }>]>; moduleTypes: z.ZodArray, "many">; chains: z.ZodOptional>; cachePolicy: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { selector: { type: IsmCacheSelectorType.DefaultIsm; } | { type: IsmCacheSelectorType.AppContext; context: string; }; moduleTypes: ModuleType[]; cachePolicy: IsmCachePolicy; chains?: string[] | undefined; }, { selector: { type: IsmCacheSelectorType.DefaultIsm; } | { type: IsmCacheSelectorType.AppContext; context: string; }; moduleTypes: ModuleType[]; cachePolicy: IsmCachePolicy; chains?: string[] | undefined; }>; export type IsmCacheConfig = z.infer; export declare const RelayerAgentConfigSchema: z.ZodObject<{ metricsPort: z.ZodOptional; chains: z.ZodEffects; reasons: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }>, z.ZodObject<{ status: z.ZodLiteral; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }>]>>; bech32Prefix: z.ZodOptional; blockExplorers: z.ZodOptional; family: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ExplorerFamily, string>>; }, "strip", z.ZodTypeAny, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }>, "many">>; blocks: z.ZodOptional>; estimateBlockTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }>>; bypassBatchSimulation: z.ZodOptional; chainId: z.ZodUnion<[z.ZodNumber, z.ZodString]>; customGrpcUrls: z.ZodOptional; deployer: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; url?: string | undefined; email?: string | undefined; }, { name: string; url?: string | undefined; email?: string | undefined; }>>; displayName: z.ZodOptional; displayNameShort: z.ZodOptional; domainId: z.ZodNumber; gasCurrencyCoinGeckoId: z.ZodOptional; gnosisSafeTransactionServiceUrl: z.ZodOptional; gnosisSafeApiKey: z.ZodOptional; grpcUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; isTestnet: z.ZodOptional; logoURI: z.ZodOptional; name: z.ZodString; nativeToken: z.ZodOptional; }, "strip", z.ZodTypeAny, { symbol: string; name: string; decimals: number; denom?: string | undefined; }, { symbol: string; name: string; decimals: number; denom?: string | undefined; }>>; protocol: z.ZodEffects, z.ZodString]>, ProtocolType, string>; restUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; rpcUrls: z.ZodArray; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">; slip44: z.ZodOptional; technicalStack: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ChainTechnicalStack, string>>; transactionOverrides: z.ZodOptional>; mailbox: z.ZodString; merkleTreeHook: z.ZodString; interchainGasPaymaster: z.ZodString; validatorAnnounce: z.ZodString; interchainSecurityModule: z.ZodOptional; customRpcUrls: z.ZodOptional; rpcConsensusType: z.ZodOptional>; signer: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; index: z.ZodOptional; chunk: z.ZodOptional; mode: z.ZodOptional>; }, "strip", z.ZodTypeAny, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }>>; } & { canonicalAsset: z.ZodOptional; gasPrice: z.ZodOptional>; contractAddressBytes: z.ZodOptional; } & { priorityFeeOracle: z.ZodOptional; url: z.ZodString; feeLevel: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }>, z.ZodObject<{ type: z.ZodLiteral; fee: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }>]>>>; transactionSubmitter: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }>>>; processAltOverrides: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; addressLookupTable: z.ZodString; }, "strip", z.ZodTypeAny, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }>, "many">, z.ZodString]>>>; }, "strip", z.ZodTypeAny, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>; defaultSigner: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; log: z.ZodOptional>; level: z.ZodOptional>; }, "strip", z.ZodTypeAny, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }>>; } & { db: z.ZodOptional; relayChains: z.ZodString; gasPaymentEnforcement: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">>; } & { type: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type?: GasPaymentEnforcementPolicyType.None | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }, { type?: GasPaymentEnforcementPolicyType.None | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }>, z.ZodObject<{ matchingList: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">>; } & { type: z.ZodOptional>; payment: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { payment: string | number; type?: GasPaymentEnforcementPolicyType.Minimum | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }, { payment: string | number; type?: GasPaymentEnforcementPolicyType.Minimum | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; }>, z.ZodObject<{ matchingList: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">>; } & { type: z.ZodLiteral; gasFraction: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: GasPaymentEnforcementPolicyType.OnChainFeeQuoting; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; gasFraction?: string | undefined; }, { type: GasPaymentEnforcementPolicyType.OnChainFeeQuoting; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; gasFraction?: string | undefined; }>]>, "many">, z.ZodString]>>; whitelist: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">, z.ZodString]>>; blacklist: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">, z.ZodString]>>; addressBlacklist: z.ZodOptional; transactionGasLimit: z.ZodOptional>; skipTransactionGasLimitFor: z.ZodOptional; allowLocalCheckpointSyncers: z.ZodOptional; metricAppContexts: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { name: string; matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; }, { name: string; matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; }>, "many">, z.ZodString]>>; ismCacheConfigs: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: IsmCacheSelectorType.DefaultIsm; }, { type: IsmCacheSelectorType.DefaultIsm; }>, z.ZodObject<{ type: z.ZodLiteral; context: z.ZodString; }, "strip", z.ZodTypeAny, { type: IsmCacheSelectorType.AppContext; context: string; }, { type: IsmCacheSelectorType.AppContext; context: string; }>]>; moduleTypes: z.ZodArray, "many">; chains: z.ZodOptional>; cachePolicy: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { selector: { type: IsmCacheSelectorType.DefaultIsm; } | { type: IsmCacheSelectorType.AppContext; context: string; }; moduleTypes: ModuleType[]; cachePolicy: IsmCachePolicy; chains?: string[] | undefined; }, { selector: { type: IsmCacheSelectorType.DefaultIsm; } | { type: IsmCacheSelectorType.AppContext; context: string; }; moduleTypes: ModuleType[]; cachePolicy: IsmCachePolicy; chains?: string[] | undefined; }>, "many">, z.ZodString]>>; allowContractCallCaching: z.ZodOptional; txIdIndexingEnabled: z.ZodOptional; igpIndexingEnabled: z.ZodOptional; }, "strip", z.ZodTypeAny, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; relayChains: string; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; db?: string | undefined; gasPaymentEnforcement?: string | ({ type?: GasPaymentEnforcementPolicyType.None | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; } | { payment: string | number; type?: GasPaymentEnforcementPolicyType.Minimum | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; } | { type: GasPaymentEnforcementPolicyType.OnChainFeeQuoting; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; gasFraction?: string | undefined; })[] | undefined; whitelist?: string | { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; blacklist?: string | { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; addressBlacklist?: string | undefined; transactionGasLimit?: string | number | undefined; skipTransactionGasLimitFor?: string | undefined; allowLocalCheckpointSyncers?: boolean | undefined; metricAppContexts?: string | { name: string; matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; }[] | undefined; ismCacheConfigs?: string | { selector: { type: IsmCacheSelectorType.DefaultIsm; } | { type: IsmCacheSelectorType.AppContext; context: string; }; moduleTypes: ModuleType[]; cachePolicy: IsmCachePolicy; chains?: string[] | undefined; }[] | undefined; allowContractCallCaching?: boolean | undefined; txIdIndexingEnabled?: boolean | undefined; igpIndexingEnabled?: boolean | undefined; }, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; relayChains: string; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; db?: string | undefined; gasPaymentEnforcement?: string | ({ type?: GasPaymentEnforcementPolicyType.None | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; } | { payment: string | number; type?: GasPaymentEnforcementPolicyType.Minimum | undefined; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; } | { type: GasPaymentEnforcementPolicyType.OnChainFeeQuoting; matchingList?: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; gasFraction?: string | undefined; })[] | undefined; whitelist?: string | { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; blacklist?: string | { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[] | undefined; addressBlacklist?: string | undefined; transactionGasLimit?: string | number | undefined; skipTransactionGasLimitFor?: string | undefined; allowLocalCheckpointSyncers?: boolean | undefined; metricAppContexts?: string | { name: string; matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; }[] | undefined; ismCacheConfigs?: string | { selector: { type: IsmCacheSelectorType.DefaultIsm; } | { type: IsmCacheSelectorType.AppContext; context: string; }; moduleTypes: ModuleType[]; cachePolicy: IsmCachePolicy; chains?: string[] | undefined; }[] | undefined; allowContractCallCaching?: boolean | undefined; txIdIndexingEnabled?: boolean | undefined; igpIndexingEnabled?: boolean | undefined; }>; export type RelayerConfig = z.infer; export declare const ScraperAgentConfigSchema: z.ZodObject<{ metricsPort: z.ZodOptional; chains: z.ZodEffects; reasons: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }>, z.ZodObject<{ status: z.ZodLiteral; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }>]>>; bech32Prefix: z.ZodOptional; blockExplorers: z.ZodOptional; family: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ExplorerFamily, string>>; }, "strip", z.ZodTypeAny, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }>, "many">>; blocks: z.ZodOptional>; estimateBlockTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }>>; bypassBatchSimulation: z.ZodOptional; chainId: z.ZodUnion<[z.ZodNumber, z.ZodString]>; customGrpcUrls: z.ZodOptional; deployer: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; url?: string | undefined; email?: string | undefined; }, { name: string; url?: string | undefined; email?: string | undefined; }>>; displayName: z.ZodOptional; displayNameShort: z.ZodOptional; domainId: z.ZodNumber; gasCurrencyCoinGeckoId: z.ZodOptional; gnosisSafeTransactionServiceUrl: z.ZodOptional; gnosisSafeApiKey: z.ZodOptional; grpcUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; isTestnet: z.ZodOptional; logoURI: z.ZodOptional; name: z.ZodString; nativeToken: z.ZodOptional; }, "strip", z.ZodTypeAny, { symbol: string; name: string; decimals: number; denom?: string | undefined; }, { symbol: string; name: string; decimals: number; denom?: string | undefined; }>>; protocol: z.ZodEffects, z.ZodString]>, ProtocolType, string>; restUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; rpcUrls: z.ZodArray; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">; slip44: z.ZodOptional; technicalStack: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ChainTechnicalStack, string>>; transactionOverrides: z.ZodOptional>; mailbox: z.ZodString; merkleTreeHook: z.ZodString; interchainGasPaymaster: z.ZodString; validatorAnnounce: z.ZodString; interchainSecurityModule: z.ZodOptional; customRpcUrls: z.ZodOptional; rpcConsensusType: z.ZodOptional>; signer: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; index: z.ZodOptional; chunk: z.ZodOptional; mode: z.ZodOptional>; }, "strip", z.ZodTypeAny, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }>>; } & { canonicalAsset: z.ZodOptional; gasPrice: z.ZodOptional>; contractAddressBytes: z.ZodOptional; } & { priorityFeeOracle: z.ZodOptional; url: z.ZodString; feeLevel: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }>, z.ZodObject<{ type: z.ZodLiteral; fee: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }>]>>>; transactionSubmitter: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }>>>; processAltOverrides: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; addressLookupTable: z.ZodString; }, "strip", z.ZodTypeAny, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }>, "many">, z.ZodString]>>>; }, "strip", z.ZodTypeAny, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>; defaultSigner: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; log: z.ZodOptional>; level: z.ZodOptional>; }, "strip", z.ZodTypeAny, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }>>; } & { db: z.ZodString; chainsToScrape: z.ZodString; }, "strip", z.ZodTypeAny, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; db: string; chainsToScrape: string; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; }, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; db: string; chainsToScrape: string; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; }>; export type ScraperConfig = z.infer; export declare const ValidatorAgentConfigSchema: z.ZodObject<{ metricsPort: z.ZodOptional; chains: z.ZodEffects; reasons: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; }>, z.ZodObject<{ status: z.ZodLiteral; }, "strip", z.ZodTypeAny, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }, { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; }>]>>; bech32Prefix: z.ZodOptional; blockExplorers: z.ZodOptional; family: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ExplorerFamily, string>>; }, "strip", z.ZodTypeAny, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }, { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }>, "many">>; blocks: z.ZodOptional>; estimateBlockTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }, { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; }>>; bypassBatchSimulation: z.ZodOptional; chainId: z.ZodUnion<[z.ZodNumber, z.ZodString]>; customGrpcUrls: z.ZodOptional; deployer: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; url?: string | undefined; email?: string | undefined; }, { name: string; url?: string | undefined; email?: string | undefined; }>>; displayName: z.ZodOptional; displayNameShort: z.ZodOptional; domainId: z.ZodNumber; gasCurrencyCoinGeckoId: z.ZodOptional; gnosisSafeTransactionServiceUrl: z.ZodOptional; gnosisSafeApiKey: z.ZodOptional; grpcUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; isTestnet: z.ZodOptional; logoURI: z.ZodOptional; name: z.ZodString; nativeToken: z.ZodOptional; }, "strip", z.ZodTypeAny, { symbol: string; name: string; decimals: number; denom?: string | undefined; }, { symbol: string; name: string; decimals: number; denom?: string | undefined; }>>; protocol: z.ZodEffects, z.ZodString]>, ProtocolType, string>; restUrls: z.ZodOptional; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">>; rpcUrls: z.ZodArray; webSocket: z.ZodOptional; pagination: z.ZodOptional; minBlockNumber: z.ZodOptional; maxBlockAge: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }, { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; }>>; retry: z.ZodOptional>; public: z.ZodOptional; }, "strip", z.ZodTypeAny, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }, { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }>, "many">; slip44: z.ZodOptional; technicalStack: z.ZodOptional, z.ZodString]>, import("@hyperlane-xyz/sdk").ChainTechnicalStack, string>>; transactionOverrides: z.ZodOptional>; mailbox: z.ZodString; merkleTreeHook: z.ZodString; interchainGasPaymaster: z.ZodString; validatorAnnounce: z.ZodString; interchainSecurityModule: z.ZodOptional; customRpcUrls: z.ZodOptional; rpcConsensusType: z.ZodOptional>; signer: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; index: z.ZodOptional; chunk: z.ZodOptional; mode: z.ZodOptional>; }, "strip", z.ZodTypeAny, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }, { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; }>>; } & { canonicalAsset: z.ZodOptional; gasPrice: z.ZodOptional>; contractAddressBytes: z.ZodOptional; } & { priorityFeeOracle: z.ZodOptional; url: z.ZodString; feeLevel: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }, { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; }>, z.ZodObject<{ type: z.ZodLiteral; fee: z.ZodUnion<[z.ZodNumber, z.ZodString]>; }, "strip", z.ZodTypeAny, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }, { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; }>]>>>; transactionSubmitter: z.ZodOptional; url: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }, { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; }>>>; processAltOverrides: z.ZodOptional, z.ZodString, z.ZodArray]>>; originDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; senderAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; destinationDomain: z.ZodOptional, z.ZodNumber, z.ZodArray]>>; recipientAddress: z.ZodOptional, z.ZodString, z.ZodArray]>>; bodyRegex: z.ZodOptional; }, "strip", z.ZodTypeAny, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }, { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }>, "many">; addressLookupTable: z.ZodString; }, "strip", z.ZodTypeAny, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }, { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }>, "many">, z.ZodString]>>>; }, "strip", z.ZodTypeAny, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: ProtocolType; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: import("@hyperlane-xyz/sdk").ExplorerFamily | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: import("@hyperlane-xyz/sdk").ChainTechnicalStack | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }, { name: string; rpcUrls: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[]; chainId: string | number; domainId: number; protocol: string; merkleTreeHook: string; interchainGasPaymaster: string; mailbox: string; validatorAnnounce: string; gasPrice?: { denom: string; amount: string; } | undefined; blockExplorers?: { name: string; url: string; apiUrl: string; apiKey?: string | undefined; family?: string | undefined; }[] | undefined; availability?: { status: import("@hyperlane-xyz/sdk").ChainStatus.Disabled; reasons: import("@hyperlane-xyz/sdk").ChainDisabledReason[]; } | { status: import("@hyperlane-xyz/sdk").ChainStatus.Live; } | undefined; bech32Prefix?: string | undefined; blocks?: { confirmations: number; reorgPeriod?: string | number | undefined; estimateBlockTime?: number | undefined; } | undefined; bypassBatchSimulation?: boolean | undefined; customGrpcUrls?: string | undefined; deployer?: { name: string; url?: string | undefined; email?: string | undefined; } | undefined; displayName?: string | undefined; displayNameShort?: string | undefined; gasCurrencyCoinGeckoId?: string | undefined; gnosisSafeTransactionServiceUrl?: string | undefined; gnosisSafeApiKey?: string | undefined; grpcUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; index?: { from?: number | undefined; mode?: AgentIndexMode | undefined; chunk?: number | undefined; } | undefined; isTestnet?: boolean | undefined; logoURI?: string | undefined; nativeToken?: { symbol: string; name: string; decimals: number; denom?: string | undefined; } | undefined; restUrls?: { http: string; webSocket?: string | undefined; public?: boolean | undefined; concurrency?: number | undefined; pagination?: { maxBlockRange?: number | undefined; minBlockNumber?: number | undefined; maxBlockAge?: number | undefined; } | undefined; retry?: { maxRequests: number; baseRetryMs: number; } | undefined; }[] | undefined; slip44?: number | undefined; technicalStack?: string | undefined; transactionOverrides?: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>, Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>>; defaultSigner: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>>; log: z.ZodOptional>; level: z.ZodOptional>; }, "strip", z.ZodTypeAny, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }, { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; }>>; } & { db: z.ZodOptional; originChainName: z.ZodString; validator: z.ZodUnion<[z.ZodObject<{ type: z.ZodOptional>; key: z.ZodString; }, "strip", z.ZodTypeAny, { key: string; type?: AgentSignerKeyType.Hex | undefined; }, { key: string; type?: AgentSignerKeyType.Hex | undefined; }>, z.ZodObject<{ type: z.ZodOptional>; id: z.ZodString; region: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }, { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; }>, z.ZodObject<{ type: z.ZodLiteral; prefix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }, { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; }>, z.ZodObject<{ type: z.ZodLiteral; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Node; }, { type: AgentSignerKeyType.Node; }>, z.ZodObject<{ type: z.ZodLiteral; suffix: z.ZodString; key: z.ZodString; }, "strip", z.ZodTypeAny, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }, { type: AgentSignerKeyType.Radix; key: string; suffix: string; }>]>; checkpointSyncer: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{ type: z.ZodLiteral<"localStorage">; path: z.ZodString; }, "strip", z.ZodTypeAny, { path: string; type: "localStorage"; }, { path: string; type: "localStorage"; }>, z.ZodObject<{ type: z.ZodLiteral<"s3">; bucket: z.ZodString; region: z.ZodString; folder: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "s3"; region: string; bucket: string; folder?: string | undefined; }, { type: "s3"; region: string; bucket: string; folder?: string | undefined; }>, z.ZodObject<{ type: z.ZodLiteral<"gcs">; bucket: z.ZodString; folder: z.ZodOptional; service_account_key: z.ZodOptional; user_secrets: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "gcs"; bucket: string; folder?: string | undefined; service_account_key?: string | undefined; user_secrets?: string | undefined; }, { type: "gcs"; bucket: string; folder?: string | undefined; service_account_key?: string | undefined; user_secrets?: string | undefined; }>]>; interval: z.ZodOptional; }, "strip", z.ZodTypeAny, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; originChainName: string; validator: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; }; checkpointSyncer: { path: string; type: "localStorage"; } | { type: "s3"; region: string; bucket: string; folder?: string | undefined; } | { type: "gcs"; bucket: string; folder?: string | undefined; service_account_key?: string | undefined; user_secrets?: string | undefined; }; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; db?: string | undefined; interval?: number | undefined; }, { chains: Record | undefined; signer?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; interchainSecurityModule?: string | undefined; canonicalAsset?: string | undefined; contractAddressBytes?: number | undefined; priorityFeeOracle?: { type: AgentSealevelPriorityFeeOracleType.Helius; url: string; feeLevel: AgentSealevelHeliusFeeLevel; } | { type: AgentSealevelPriorityFeeOracleType.Constant; fee: string | number; } | undefined; transactionSubmitter?: { type: AgentSealevelTransactionSubmitterType; url?: string | undefined; } | undefined; processAltOverrides?: string | { matchingList: { senderAddress?: string | string[] | undefined; destinationDomain?: number | "*" | [number, ...number[]] | undefined; messageId?: string | string[] | undefined; originDomain?: number | "*" | [number, ...number[]] | undefined; recipientAddress?: string | string[] | undefined; bodyRegex?: string | undefined; }[]; addressLookupTable: string; }[] | undefined; customRpcUrls?: string | undefined; rpcConsensusType?: RpcConsensusType | undefined; }>; originChainName: string; validator: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; }; checkpointSyncer: { path: string; type: "localStorage"; } | { type: "s3"; region: string; bucket: string; folder?: string | undefined; } | { type: "gcs"; bucket: string; folder?: string | undefined; service_account_key?: string | undefined; user_secrets?: string | undefined; }; log?: { format?: AgentLogFormat | undefined; level?: AgentLogLevel | undefined; } | undefined; metricsPort?: number | undefined; defaultSigner?: { key: string; type?: AgentSignerKeyType.Hex | undefined; } | { id: string; region: string; type?: AgentSignerKeyType.Aws | undefined; } | { type: AgentSignerKeyType.Cosmos; key: string; prefix: string; } | { type: AgentSignerKeyType.Radix; key: string; suffix: string; } | { type: AgentSignerKeyType.Node; } | undefined; db?: string | undefined; interval?: number | undefined; }>; export type ValidatorConfig = z.infer; export type AgentConfig = z.infer; export declare function buildAgentConfig(chains: ChainName[], multiProvider: MultiProvider, addresses: ChainMap, startBlocks: ChainMap, additionalConfig?: ChainMap): AgentConfig; export {}; //# sourceMappingURL=agentConfig.d.ts.map