package contract import ( "apskel-pos-be/internal/models" "github.com/google/uuid" ) type IngredientCompositionContract interface { Create(request *models.CreateIngredientCompositionRequest, organizationID uuid.UUID) (*models.IngredientCompositionResponse, error) GetByID(id uuid.UUID, organizationID uuid.UUID) (*models.IngredientCompositionResponse, error) GetByParentIngredientID(parentIngredientID uuid.UUID, organizationID uuid.UUID) ([]*models.IngredientCompositionResponse, error) GetByChildIngredientID(childIngredientID uuid.UUID, organizationID uuid.UUID) ([]*models.IngredientCompositionResponse, error) Update(id uuid.UUID, request *models.UpdateIngredientCompositionRequest, organizationID uuid.UUID) (*models.IngredientCompositionResponse, error) Delete(id uuid.UUID, organizationID uuid.UUID) error }