You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

15 lines
492 B

  1. import { ProjectReadItem, ProjectWriteItem, ProjectItemList } from '~/domain/models/project/project'
  2. export type SearchOption = {[key: string]: string | (string | null)[]}
  3. export interface ProjectRepository {
  4. list({ limit, offset, q }: SearchOption): Promise<ProjectItemList>
  5. findById(id: string): Promise<ProjectReadItem>
  6. create(item: ProjectWriteItem): Promise<ProjectReadItem>
  7. update(item: ProjectWriteItem): Promise<void>
  8. bulkDelete(projectIds: number[]): Promise<void>
  9. }