export interface ProductSummary { id: string; gtin: string | null; name: string; brand: string | null; category_path: string | null; } export interface Barcode { gtin: string; gtin_type: string; pack_level: string; region: string | null; is_primary: boolean; } export interface Product { id: string; gtin: string | null; barcodes?: Barcode[] | null; name: string; brand: string | null; category_path: string | null; net_content_value: number | null; net_content_unit: string | null; country_of_origin: string | null; quality_score: number; nutriments?: Record | null; nutrition_basis?: string | null; nutri_score?: string | null; ingredients_text?: string | null; allergens?: string[] | null; additives?: string[] | null; } export interface Category { id: string; name_zh: string; name_en: string | null; path: string; level: number; } export interface SubmissionImage { url: string; kind: string; } export interface SubmissionInput { gtin?: string | null; name: string; brand_name?: string | null; category_id?: string | null; net_content_value?: number | null; net_content_unit?: string | null; country_of_origin?: string | null; ingredients_text?: string | null; nutriments?: Record | null; nutrition_basis?: string | null; serving_size?: string | null; nutri_score?: string | null; images?: SubmissionImage[]; submitter_name?: string | null; submitter_contact?: string | null; note?: string | null; } export const NUTRIMENT_LABELS: Record = { energy_kcal: "能量 (kcal)", energy_kj: "能量 (kJ)", fat: "脂肪 (g)", saturated_fat: "饱和脂肪 (g)", carbohydrates: "碳水 (g)", sugars: "糖 (g)", proteins: "蛋白质 (g)", salt: "盐 (g)", sodium: "钠 (g)", fiber: "膳食纤维 (g)", };