import type { BigNumber, Signer, ethers } from 'ethers'; import { z } from 'zod'; import type { AltVM, ProtocolType } from '@hyperlane-xyz/provider-sdk'; import type { Address, Domain } from '@hyperlane-xyz/utils'; import type { MultiProvider } from './providers/MultiProvider.js'; import { ProtocolReceipt, ProtocolTransaction } from './providers/ProviderType.js'; export type ChainName = string; export type ChainMap = Record; export type ProtocolMap = Partial>; export type ChainNameOrId = ChainName | Domain; export type Connection = ethers.providers.Provider | ethers.Signer; export declare const OwnableSchema: z.ZodObject<{ owner: z.ZodString; ownerOverrides: z.ZodOptional>; }, "strip", z.ZodTypeAny, { owner: string; ownerOverrides?: Record | undefined; }, { owner: string; ownerOverrides?: Record | undefined; }>; export type OwnableConfig = z.infer; export declare const DeployedOwnableSchema: z.ZodObject<{ owner: z.ZodString; ownerOverrides: z.ZodOptional>; } & { address: z.ZodOptional; }, "strip", z.ZodTypeAny, { owner: string; address?: string | undefined; ownerOverrides?: Record | undefined; }, { owner: string; address?: string | undefined; ownerOverrides?: Record | undefined; }>; export type DeployedOwnableConfig = z.infer; export declare const DerivedOwnableSchema: z.ZodObject<{ address: z.ZodString; owner: z.ZodString; }, "strip", z.ZodTypeAny, { address: string; owner: string; }, { address: string; owner: string; }>; export type DerivedOwnableConfig = z.infer; export declare const PausableSchema: z.ZodObject<{ owner: z.ZodString; ownerOverrides: z.ZodOptional>; } & { paused: z.ZodBoolean; }, "strip", z.ZodTypeAny, { owner: string; paused: boolean; ownerOverrides?: Record | undefined; }, { owner: string; paused: boolean; ownerOverrides?: Record | undefined; }>; export type PausableConfig = z.infer; export type TypedSigner = Signer | AltVM.ISigner, ProtocolReceipt>; export interface IMultiProtocolSignerManager { getMultiProvider(): Promise; getEVMSigner(chain: ChainName): Signer; getSignerAddress(chain: ChainName): Promise
; getBalance(params: { address: Address; chain: ChainName; denom?: string; }): Promise; } //# sourceMappingURL=types.d.ts.map