2023-03-30 15:38:55 -04:00
|
|
|
import { SharedLinkEntity } from '@app/infra/entities';
|
2023-01-25 11:35:28 -05:00
|
|
|
|
|
|
|
|
export const ISharedLinkRepository = 'ISharedLinkRepository';
|
|
|
|
|
|
|
|
|
|
export interface ISharedLinkRepository {
|
|
|
|
|
getAll(userId: string): Promise<SharedLinkEntity[]>;
|
|
|
|
|
get(userId: string, id: string): Promise<SharedLinkEntity | null>;
|
|
|
|
|
getByKey(key: string): Promise<SharedLinkEntity | null>;
|
2023-01-31 13:11:49 -05:00
|
|
|
create(entity: Omit<SharedLinkEntity, 'id' | 'user'>): Promise<SharedLinkEntity>;
|
2023-01-25 11:35:28 -05:00
|
|
|
remove(entity: SharedLinkEntity): Promise<SharedLinkEntity>;
|
|
|
|
|
save(entity: Partial<SharedLinkEntity>): Promise<SharedLinkEntity>;
|
|
|
|
|
hasAssetAccess(id: string, assetId: string): Promise<boolean>;
|
|
|
|
|
}
|