import { type SupportedChainName } from '../constants/chains.js'; /** Resolve a chain alias (case-insensitive) to a canonical SupportedChainName. * Returns undefined if the alias is not recognized. */ export declare function resolveChainAlias(input: string): SupportedChainName | undefined; /** Resolve a chain ID to a canonical SupportedChainName. * Returns undefined if the chain ID is not recognized. */ export declare function chainIdToName(chainId: number): SupportedChainName | undefined; /** Validate an Ethereum address (0x-prefixed, 40 hex chars) */ export declare function isValidAddress(address: string): address is `0x${string}`; /** Validate and return a typed Ethereum address, or throw */ export declare function validateAddress(address: string): `0x${string}`; /** Check if an address is the zero address */ export declare function isZeroAddress(address: string): boolean; /** Validate a private key format (0x-prefixed, 64 hex chars) */ export declare function isValidPrivateKey(key: string): boolean; /** Validate and return a typed private key, or throw */ export declare function validatePrivateKey(key: string): `0x${string}`; /** Validate a chain name against supported chains */ export declare function isValidChainName(chain: string): chain is SupportedChainName; /** Validate and return a typed chain name, or throw. * Accepts aliases (e.g. 'base-sepolia', 'eth-sepolia', 'sepolia'). */ export declare function validateChainName(chain: string): SupportedChainName; /** Validate a bytes32 hex string (0x-prefixed, 64 hex chars) */ export declare function isValidBytes32(value: string): boolean; /** Validate a URL, optionally requiring HTTPS */ export declare function isValidUrl(url: string, requireHttps?: boolean): boolean; /** Heuristic: does a registry `endpoint` look like a real, callable public service URL? * Returns false for blank/whitespace, non-http(s), placeholder hosts (example.com, localhost), * and well-known ephemeral tunnels (*.ngrok-free.app, *.trycloudflare.com, …). * * This is an ADVISORY "looks callable" flag for ranking/skipping dead listings — NOT a * reachability guarantee and NOT a security control (the SSRF guard protects the actual fetch). (F8) */ export declare function isUsableEndpoint(endpoint?: string | null): endpoint is string; /** Validate a BigInt is within uint256 range */ export declare function isValidUint256(value: bigint): boolean; //# sourceMappingURL=validation.d.ts.map