circles_types/config.rs
1use alloy_primitives::Address;
2use serde::{Deserialize, Serialize};
3
4/// Circles protocol configuration for a specific chain.
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct CirclesConfig {
7 /// RPC URL for Circles-specific endpoints
8 pub circles_rpc_url: String,
9 /// Pathfinder service URL for computing transfer paths
10 pub pathfinder_url: String,
11 /// Profile service URL for user profiles and metadata
12 pub profile_service_url: String,
13 /// Circles V1 Hub contract address
14 pub v1_hub_address: Address,
15 /// Circles V2 Hub contract address
16 pub v2_hub_address: Address,
17 /// Name Registry contract address
18 pub name_registry_address: Address,
19 /// Base Group Mint Policy contract address
20 pub base_group_mint_policy: Address,
21 /// Standard Treasury contract address
22 pub standard_treasury: Address,
23 /// Core Members Group Deployer contract address
24 pub core_members_group_deployer: Address,
25 /// Base Group Factory contract address
26 pub base_group_factory_address: Address,
27 /// Lift ERC20 contract address
28 pub lift_erc20_address: Address,
29 /// Invitation Escrow contract address
30 pub invitation_escrow_address: Address,
31 /// Invitation Farm contract address
32 pub invitation_farm_address: Address,
33 /// Referrals Module contract address
34 pub referrals_module_address: Address,
35}