Skip to content

Instantly share code, notes, and snippets.

@jxxe
Last active May 28, 2023 05:59
Show Gist options
  • Save jxxe/bf6b0e45b16f18c9bebb67bb77c926fb to your computer and use it in GitHub Desktop.
Save jxxe/bf6b0e45b16f18c9bebb67bb77c926fb to your computer and use it in GitHub Desktop.
interface MenuResponse {
days: {
date: string,
cafes: { [key: string]: MenuCafe }
}[],
items: { [key: string]: MenuItem },
superplates: unknown,
goitems: { [key: string]: GoItem },
cors_icons: { [key: string]: CorsIcon },
version: 2
}
interface CorsIcon {
sort: string,
label: string,
description: string,
image: string,
is_filter: 'Y'|'N',
allergen: 0|1,
type: 'diet',
position: string,
show_name_ds: 'N'
}
interface GoItem extends MenuItem {
contains_statement: string,
is_orderable: 0|1
}
interface MenuCafe {
name: string,
comma_operator: 'N',
pipe_operator: 'N',
menu_id: string,
dayparts: {
starttime: string,
endtime: string,
id: string,
label: string, // e.g. Brunch
abbreviation: string, // e.g. Br
message: string,
stations: {
order_id: string,
id: string,
label: string, // e.g. wood & stone
price: string,
note: string,
soup: 0|1,
image: string,
items: string[]
}[]
}[][]
}
interface MenuItem {
id: string,
label: string, // e.g. herb chicken breast
recipes: {
entrees: {
recipe_id: string,
recipe_name: string // e.g. marinated grilled chicken
}[]
},
description: string,
short_name: string,
raw_cooked: '0'|'1',
is_rotating: '0'|'1',
zero_entree: '0'|'1',
cor_icon: {
[key: string]: string // e.g. Made without Gluten-Containing Ingredients
},
ordered_cor_icon: {
[key: string]: {
id: string,
label: string
}
},
nextepid: null|''|'0',
price: string|'', // e.g. 4.99
sizes: [],
nutrition: {
kcal: string,
well_being: null|'',
well_being_image: ''
},
special: 0|1,
tier3: 0,
tier: 1|2|3,
rating: '',
connector: '',
options: [],
station_id: string,
station: string, // e.g. <strong>@burger bar static</strong>
nutrition_details: {
calories: NutritionDetailItem,
servingSize: NutritionDetailItem,
fatContent: NutritionDetailItem,
saturatedFatContent: NutritionDetailItem,
transFatContent: NutritionDetailItem,
cholesterolContent: NutritionDetailItem,
sodiumContent: NutritionDetailItem,
carbohydrateContent: NutritionDetailItem,
fiberContent: NutritionDetailItem,
sugarContent: NutritionDetailItem,
proteinContent: NutritionDetailItem
},
ingredients: string, // e.g. black pepper, salt, garlic, dijon mustard, balsamic vinegar, canola oil, chicken
nutrition_link: string, // e.g. nutrition information
sub_station_id: string,
sub_station: string, // e.g. protiens
sub_station_order: string,
monotony: {}|[]
}
interface NutritionDetailItem {
label: string,
value: string,
unit: string
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment