TF-3040 Create public_asset feature

This commit is contained in:
DatDang
2024-08-07 11:17:59 +07:00
committed by Dat H. Pham
parent 34b7bf78c3
commit 0656fd9390
6 changed files with 349 additions and 0 deletions
@@ -0,0 +1,36 @@
import 'package:jmap_dart_client/jmap/account_id.dart';
import 'package:jmap_dart_client/jmap/core/id.dart';
import 'package:jmap_dart_client/jmap/core/session/session.dart';
import 'package:jmap_dart_client/jmap/identities/identity.dart';
import 'package:jmap_dart_client/jmap/mail/extensions/public_asset/public_asset.dart';
abstract class PublicAssetDatasource {
const PublicAssetDatasource();
Future<List<PublicAsset>> getPublicAssetFromIds(
Session session,
AccountId accountId,
{required List<Id> publicAssetIds}
);
Future<PublicAsset> createPublicAsset(
Session session,
AccountId accountId,
{
required Id blobId,
required IdentityId? identityId
}
);
Future<void> deletePublicAssets(
Session session,
AccountId accountId,
{required List<Id> publicAssetIds}
);
Future<void> updatePublicAssets(
Session session,
AccountId accountId,
{required List<PublicAsset> publicAssets}
);
}