export const IAccessRepository = 'IAccessRepository'; export interface IAccessRepository { activity: { hasOwnerAccess(userId: string, activityId: string): Promise; hasAlbumOwnerAccess(userId: string, activityId: string): Promise; hasCreateAccess(userId: string, albumId: string): Promise; }; asset: { checkOwnerAccess(userId: string, assetIds: Set): Promise>; checkAlbumAccess(userId: string, assetIds: Set): Promise>; checkPartnerAccess(userId: string, assetIds: Set): Promise>; checkSharedLinkAccess(sharedLinkId: string, assetIds: Set): Promise>; }; authDevice: { checkOwnerAccess(userId: string, deviceIds: Set): Promise>; }; album: { checkOwnerAccess(userId: string, albumIds: Set): Promise>; checkSharedAlbumAccess(userId: string, albumIds: Set): Promise>; checkSharedLinkAccess(sharedLinkId: string, albumIds: Set): Promise>; }; library: { checkOwnerAccess(userId: string, libraryIds: Set): Promise>; checkPartnerAccess(userId: string, partnerIds: Set): Promise>; }; timeline: { checkPartnerAccess(userId: string, partnerIds: Set): Promise>; }; person: { hasFaceOwnerAccess(userId: string, assetFaceId: Set): Promise>; checkOwnerAccess(userId: string, personIds: Set): Promise>; }; partner: { checkUpdateAccess(userId: string, partnerIds: Set): Promise>; }; }