import type { BehaviorSubject } from 'rxjs'; import type { BaseModelWithCustomData } from '../base/base-model-with-custom-data'; import type { GroupModifier } from '../group-modifier/group-modifier'; import type { Group } from '../group/group'; import type { Image } from '../image/image'; export type DiscountType = 'FIXED' | 'PERCENT'; export interface Dish extends BaseModelWithCustomData { id: string; rmsId: string; name: string; slug: string; description: string; price: number; salePrice: number | null; weight: number; balance: number; sortOrder: number; tags?: Array>; additionalInfo?: string | number | { [key: string]: string | any; } | null; images: Array>; groupId?: string; parentGroup: Partial>; modifiers?: Array>> | undefined; carbohydrateAmount?: number; carbohydrateFullAmount?: number; energyAmount?: number; energyFullAmount?: number; fatAmount?: number; fatFullAmount?: number; fiberAmount?: number; fiberFullAmount?: number; measureUnit?: string; discountAmount: number | null; discountType: DiscountType | null; isLoading?: BehaviorSubject; seoDescription: string | null; seoKeywords: string | null; seoText: string | null; seoTitle: string | null; notForSale: boolean; } export interface DishTag { name: string; }