import type { Chain } from 'viem'; import type { ConnectorOptions } from '../connectors/types.js'; import type { SubscriptionConfig } from './subscription-config.js'; /** * Main ConnectKit configuration */ export interface ConnectKitConfig { appName: string; appDescription?: string; appUrl?: string; appIcon?: string; chains: Chain[]; defaultChainId?: number; connectorOptions?: ConnectorOptions; subscription?: SubscriptionConfig; theme?: 'light' | 'dark' | 'auto'; accentColor?: string; borderRadius?: 'none' | 'small' | 'medium' | 'large'; features?: { multiAccount?: boolean; networkSwitching?: boolean; siweAuth?: boolean; ensResolution?: boolean; walletConnectQR?: boolean; }; modal?: { disableClose?: boolean; overlayBlur?: boolean; className?: string; }; onConnect?: (address: string, chainId: number) => void; onDisconnect?: () => void; onChainChanged?: (chainId: number) => void; onAccountsChanged?: (accounts: string[]) => void; onError?: (error: Error) => void; } /** * Default configuration values */ export declare const defaultConfig: Partial; /** * Merge user config with defaults */ export declare function mergeConfig(userConfig: ConnectKitConfig): ConnectKitConfig;