Files
umbrix/lib/domain/clash/clash_facade.dart

25 lines
728 B
Dart
Raw Normal View History

2023-07-06 17:18:41 +03:30
import 'package:fpdart/fpdart.dart';
import 'package:hiddify/domain/clash/clash.dart';
import 'package:hiddify/domain/constants.dart';
2023-08-19 22:27:23 +03:30
import 'package:hiddify/domain/core_service_failure.dart';
2023-07-06 17:18:41 +03:30
abstract class ClashFacade {
2023-08-19 22:27:23 +03:30
TaskEither<CoreServiceFailure, ClashConfig> getConfigs();
2023-07-06 17:18:41 +03:30
2023-08-19 22:27:23 +03:30
TaskEither<CoreServiceFailure, Unit> patchOverrides(ClashConfig overrides);
2023-07-06 17:18:41 +03:30
2023-08-19 22:27:23 +03:30
TaskEither<CoreServiceFailure, List<ClashProxy>> getProxies();
2023-07-06 17:18:41 +03:30
2023-08-19 22:27:23 +03:30
TaskEither<CoreServiceFailure, Unit> changeProxy(
2023-07-06 17:18:41 +03:30
String selectorName,
String proxyName,
);
2023-08-19 22:27:23 +03:30
TaskEither<CoreServiceFailure, int> testDelay(
2023-07-06 17:18:41 +03:30
String proxyName, {
2023-08-19 22:27:23 +03:30
String testUrl = Defaults.delayTestUrl,
2023-07-06 17:18:41 +03:30
});
2023-08-19 22:27:23 +03:30
Stream<Either<CoreServiceFailure, ClashTraffic>> watchTraffic();
2023-07-06 17:18:41 +03:30
}