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