import { Updateable } from 'kysely'; import { Partners } from 'src/db'; import { PartnerEntity } from 'src/entities/partner.entity'; export interface PartnerIds { sharedById: string; sharedWithId: string; } export enum PartnerDirection { SharedBy = 'shared-by', SharedWith = 'shared-with', } export const IPartnerRepository = 'IPartnerRepository'; export interface IPartnerRepository { getAll(userId: string): Promise; get(partner: PartnerIds): Promise; create(partner: PartnerIds): Promise; remove(partner: PartnerIds): Promise; update(partner: PartnerIds, entity: Updateable): Promise; }