import 'config_imports.dart'; class AppConfigBuilder { BasicConfig? _basicConfig; DNSConfig? _dnsConfig; TunConfig? _tunConfig; List? _proxies; List? _proxyGroups; List? _rules; AppConfigBuilder setBasicConfig(BasicConfig basicConfig) { _basicConfig = basicConfig; return this; } AppConfigBuilder setDNSConfig(DNSConfig? dnsConfig) { _dnsConfig = dnsConfig; return this; } AppConfigBuilder setTunConfig(TunConfig? tunConfig) { _tunConfig = tunConfig; return this; } AppConfigBuilder setProxies(List? proxies) { _proxies = proxies; return this; } AppConfigBuilder setProxyGroups(List? proxyGroups) { _proxyGroups = proxyGroups; return this; } AppConfigBuilder setRules(List? rules) { _rules = rules; return this; } AppConfig build() { // 默认的值或者抛出异常,取决于您的需求 return AppConfig( basicConfig: _basicConfig ?? BasicConfig(mixedPort: 9788,allowLan: false,bindAddress: '*',mode: ModeType.rule.name,logLevel: LogLevel.warning.name,externalController: '127.0.0.1:9799',unifiedDelay: false,geodataMode: true,tcpConcurrent: true,findProcessMode: ProcessMode.strict.name,globalClientFingerprint: Fingerprint.chrome.name), dnsConfig: _dnsConfig, tunConfig: _tunConfig, proxies: _proxies ?? [], proxyGroups: _proxyGroups ?? [], rules: _rules ?? [], ); } }