import type { CustomizationAction, RecipeIngredientRole } from "../enums.js"

export interface IngredientDto {
    id: string
    shopId: string
    name: string
    allergen: boolean
    extraPrice: number
    imageUrl: string | null
    active: boolean
    createdAt: string
}

export interface RecipeIngredientDto {
    id: string
    ingredientId: string
    name: string
    allergen: boolean
    extraPrice: number
    imageUrl: string | null
    role: RecipeIngredientRole
    defaultQuantity: number
    maxQuantity: number | null
}

export interface RecipeDto {
    id: string
    shopId: string
    name: string
    description: string | null
    active: boolean
    createdAt: string
    ingredients: RecipeIngredientDto[]
    products: { productId: string; productName: string; isDefault: boolean; displayOrder: number }[]
}

export interface ProductRecipeDto {
    id: string
    recipeId: string
    recipeName: string
    isDefault: boolean
    displayOrder: number
    ingredients: RecipeIngredientDto[]
}

export interface OrderItemCustomizationDto {
    id: string
    ingredientId: string | null
    ingredientName: string
    action: CustomizationAction
    quantity: number
    extraPrice: number
}
