import { UserId } from "@/server/user/domain/models"; import { DeleteMaterial, DeleteProjectMaterial, Material, MaterialId, ProjectMaterial, UpdateProjectMaterial, } from "./models"; import { ProjectId } from "@/server/project/domain/models"; export interface MaterialRepository { getAll(): Promise; create(data: Material, userId: UserId): Promise; createProjectMaterial( data: ProjectMaterial, userId: UserId ): Promise; updateProjectMaterial( data: ProjectMaterial, userId: UserId ): Promise>; delete( deleteMaterials: DeleteMaterial, userId: UserId ): Promise; deleteProjectMaterials( data: DeleteProjectMaterial, userId: UserId ): Promise; getProjectMaterialByProject( materialId: MaterialId, projectId: ProjectId ): Promise; getById(materialId: MaterialId): Promise; }