2022-12-02 20:40:08 +02:00
|
|
|
import 'package:selfprivacy/logic/api_maps/api_generic_result.dart';
|
2022-07-13 14:58:23 +03:00
|
|
|
import 'package:selfprivacy/logic/api_maps/rest_maps/api_map.dart';
|
2022-11-04 14:18:35 +02:00
|
|
|
import 'package:selfprivacy/logic/models/disk_size.dart';
|
2022-07-12 15:54:16 +03:00
|
|
|
import 'package:selfprivacy/logic/models/hive/server_details.dart';
|
2022-10-12 04:42:45 +03:00
|
|
|
import 'package:selfprivacy/logic/models/price.dart';
|
2022-07-12 15:54:16 +03:00
|
|
|
|
2022-12-02 20:40:08 +02:00
|
|
|
export 'package:selfprivacy/logic/api_maps/api_generic_result.dart';
|
|
|
|
|
2022-07-13 14:58:23 +03:00
|
|
|
mixin VolumeProviderApi on ApiMap {
|
2022-12-02 20:40:08 +02:00
|
|
|
Future<APIGenericResult<ServerVolume?>> createVolume();
|
2022-07-12 15:54:16 +03:00
|
|
|
Future<List<ServerVolume>> getVolumes({final String? status});
|
2022-12-02 20:40:08 +02:00
|
|
|
Future<APIGenericResult<bool>> attachVolume(
|
|
|
|
final ServerVolume volume,
|
|
|
|
final int serverId,
|
|
|
|
);
|
2022-10-18 02:58:29 +03:00
|
|
|
Future<bool> detachVolume(final ServerVolume volume);
|
2022-11-04 14:18:35 +02:00
|
|
|
Future<bool> resizeVolume(final ServerVolume volume, final DiskSize size);
|
2022-10-18 02:58:29 +03:00
|
|
|
Future<void> deleteVolume(final ServerVolume volume);
|
2022-10-12 04:42:45 +03:00
|
|
|
Future<Price?> getPricePerGb();
|
2022-07-12 15:54:16 +03:00
|
|
|
}
|