/** * ERC-8004 contract addresses and chain configuration. * * Contract addresses sourced from the official erc-8004-contracts repository: * https://github.com/erc-8004/erc-8004-contracts * * All mainnets share the same contract addresses. * All testnets share the same contract addresses. */ /** Contract addresses shared across all ERC-8004 mainnets */ export declare const ERC8004_MAINNET_CONTRACTS: { readonly IDENTITY_REGISTRY: "0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"; readonly REPUTATION_REGISTRY: "0x8004BAa17C55a88189AE136b182e5fdA19dE9b63"; }; /** Contract addresses shared across all ERC-8004 testnets */ export declare const ERC8004_TESTNET_CONTRACTS: { readonly IDENTITY_REGISTRY: "0x8004A818BFB912233c491871b3d84c89A494BD9e"; readonly REPUTATION_REGISTRY: "0x8004B663056A597Dffe9eCcC1965A193B7388713"; }; /** Configuration for an ERC-8004 supported chain */ export interface Erc8004ChainConfig { /** Numeric chain ID */ chainId: number; /** Human-readable network name */ network: string; /** Display name */ name: string; /** Whether this is a testnet */ testnet: boolean; /** Default public RPC URL */ rpcUrl: string; /** Block explorer base URL */ blockExplorerUrl: string; /** ERC-8004 contract addresses */ contracts: { IDENTITY_REGISTRY: string; REPUTATION_REGISTRY: string; }; } /** * All chains where ERC-8004 contracts are deployed. * * Source: https://github.com/erc-8004/erc-8004-contracts */ export declare const ERC8004_CHAINS: Record; /** * Get the ERC-8004 chain configuration for a given chain ID. * * @param chainId - The numeric chain ID * @returns The chain configuration, or undefined if the chain is not supported * * @example * ```typescript * const baseConfig = getErc8004Chain(8453); * console.log(baseConfig?.contracts.IDENTITY_REGISTRY); * // "0x8004A169FB4a3325136EB29fA0ceB6D2e539a432" * ``` */ export declare function getErc8004Chain(chainId: number): Erc8004ChainConfig | undefined; /** * Get the ERC-8004 contract addresses for a given chain ID. * * @param chainId - The numeric chain ID * @returns The contract addresses * @throws Error if the chain ID is not supported * * @example * ```typescript * const contracts = getErc8004Contracts(8453); * console.log(contracts.IDENTITY_REGISTRY); * // "0x8004A169FB4a3325136EB29fA0ceB6D2e539a432" * ``` */ export declare function getErc8004Contracts(chainId: number): { IDENTITY_REGISTRY: string; REPUTATION_REGISTRY: string; }; /** * List all supported ERC-8004 chain IDs. * * @param filter - Optional filter: "mainnet", "testnet", or undefined for all * @returns Array of supported chain IDs * * @example * ```typescript * const allChains = listErc8004ChainIds(); * const mainnets = listErc8004ChainIds("mainnet"); * const testnets = listErc8004ChainIds("testnet"); * ``` */ export declare function listErc8004ChainIds(filter?: "mainnet" | "testnet"): number[]; //# sourceMappingURL=erc8004-contracts.d.ts.map