munch-ease-frontend/src/api/types.ts

2068 lines
59 KiB
TypeScript

/**
* This file was auto-generated by openapi-typescript.
* Do not make direct changes to the file.
*/
export interface paths {
"/api/v1/auth/register": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Register */
post: operations["register"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/login": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Login */
post: operations["loginV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/refresh": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Refresh */
post: operations["refreshV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/logout": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Logout */
post: operations["logoutV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/users/me/households": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** List My Households */
get: operations["list_my_households_api_v1_users_me_households_get"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Create Household */
post: operations["create_household_api_v1_households_post"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/invitations/accept": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Accept Invitation */
post: operations["accept_invitation_api_v1_invitations_accept_post"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/whoami": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Whoami */
get: operations["whoami_api_v1_households__householdSlug__whoami_get"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/members": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** List Members */
get: operations["list_members_api_v1_households__householdSlug__members_get"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/invitations": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Create Invitation */
post: operations["create_invitation_api_v1_households__householdSlug__invitations_post"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/recipes": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** List Recipes */
get: operations["list_recipes_api_v1_households__householdSlug__recipes_get"];
put?: never;
/** Create Recipe */
post: operations["create_recipe_api_v1_households__householdSlug__recipes_post"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/recipes/{recipe_id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Get Recipe */
get: operations["get_recipe_api_v1_households__householdSlug__recipes__recipe_id__get"];
put?: never;
post?: never;
/** Delete Recipe */
delete: operations["delete_recipe_api_v1_households__householdSlug__recipes__recipe_id__delete"];
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/recipes/parse-from-url": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Parse From Url */
post: operations["parse_from_url_api_v1_households__householdSlug__recipes_parse_from_url_post"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/ingredients/parse": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Parse an ingredient line from a string */
get: operations["parse_ingredient_api_v1_households__householdSlug__ingredients_parse_get"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/meals/upcoming": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** List upcoming meals in a date range (scoped) */
get: operations["getUpcomingMealsV2"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/meals/{meal_id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Get a meal by id (scoped) */
get: operations["getMealV2"];
/** Update an existing meal (scoped) */
put: operations["updateMealV2"];
post?: never;
/** Delete a meal (scoped) */
delete: operations["deleteMealV2"];
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/meals/{meal_id}/consumed": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Mark a meal as consumed (scoped) */
post: operations["markMealConsumedV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/meals": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Create a new meal (scoped) */
post: operations["createMealV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/shopping/current": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Get the current aggregated shopping list (scoped) */
get: operations["getCurrentShoppingListV2"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/shopping/{list_id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Get a purchased shopping list by id (scoped) */
get: operations["getShoppingListV2"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/shopping": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Purchase ingredients for a shopping list (scoped) */
post: operations["purchaseIngredientsV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/shopping/current/meals/me": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Request a meal for shopping (scoped) */
post: operations["requestMealV2"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/shopping/current/meals/{meal_id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post?: never;
/** Remove a meal request (scoped) */
delete: operations["unrequestMealV2"];
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/households/{householdSlug}/shopping/current/ingredients": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
/** Request an ingredient for shopping (scoped) */
post: operations["requestIngredientV2"];
/**
* Remove an ingredient request (scoped)
* @description Remove a personal ad-hoc ingredient request for the current user in this household.
*
* Idempotent: returns ok=true whether or not a row was actually deleted.
*/
delete: operations["unrequestIngredientV2"];
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/healthz": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
/** Healthz */
get: operations["healthz_healthz_get"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
}
export type webhooks = Record<string, never>;
export interface components {
schemas: {
/** AcceptInvitationBody */
AcceptInvitationBody: {
/** Token */
token: string;
};
/** AcceptInvitationResponse */
AcceptInvitationResponse: {
/**
* Status
* @default accepted
*/
status: string;
household: components["schemas"]["HouseholdResponse"];
};
/** CreateHouseholdBody */
CreateHouseholdBody: {
/** Name */
name: string;
};
/** CreateInvitationBody */
CreateInvitationBody: {
/** Email */
email: string;
};
/** CurrentShoppingList */
CurrentShoppingList: {
/** Outstandingitems */
outstandingItems: components["schemas"]["ListIngredientItem"][];
/** Requestedmeals */
requestedMeals: components["schemas"]["RequestedMealItem"][];
/** Purchaseditems */
purchasedItems: components["schemas"]["ListIngredientItem"][];
/** Ingredientslookup */
ingredientsLookup: {
[key: string]: components["schemas"]["Ingredient"];
};
/** Mealslookup */
mealsLookup: {
[key: string]: components["schemas"]["Meal"];
};
/** Shoppinglistlookup */
shoppingListLookup: {
[key: string]: components["schemas"]["ShoppingListOut"];
};
/** Recipeslookup */
recipesLookup: {
[key: string]: components["schemas"]["Recipe"];
};
};
/** HTTPValidationError */
HTTPValidationError: {
/** Detail */
detail?: components["schemas"]["ValidationError"][];
};
/** HealthStatus */
HealthStatus: {
/**
* Status
* @default ok
*/
status: string;
};
/** HouseholdMember */
HouseholdMember: {
/** Id */
id: number;
/** Displayname */
displayName: string;
/** Role */
role: string;
};
/** HouseholdResponse */
HouseholdResponse: {
/** Id */
id: number;
/** Name */
name: string;
/** Slug */
slug: string;
};
/** Ingredient */
Ingredient: {
/**
* Id
* @default -1
*/
id: number;
/** Name */
name: string;
/** Line */
line: string;
/**
* Unit
* @description Measurement unit (enum values are advisory; runtime accepts any string)
* @enum {string}
*/
unit: "Items" | "Litre" | "Gram" | "Cup" | "Tablespoon" | "Teaspoon" | "Ounce" | "Pound" | "Fluid Ounce" | "Pint" | "Quart" | "Gallon" | "Millilitre" | "Milligram" | "Kilogram";
/** Quantity */
quantity: number;
/** Preparation */
preparation: string;
/** Productid */
productId?: number | null;
/** Recipeid */
recipeId?: number | null;
/** Mealid */
mealId?: number | null;
product?: components["schemas"]["Product"] | null;
};
/** IngredientIdWrapper */
IngredientIdWrapper: {
/** Ingredientid */
ingredientId: number;
};
/** IngredientPurchaseItemIn */
IngredientPurchaseItemIn: {
/** Ingredientid */
ingredientId: number;
/** Personid */
personId: number;
/** Createddate */
createdDate?: string | null;
/** Mealid */
mealId?: number | null;
/** Recipeid */
recipeId?: number | null;
};
/** InvitationResponse */
InvitationResponse: {
/** Token */
token: string;
/**
* Status
* @default pending
*/
status: string;
};
/** ListIngredientItem */
ListIngredientItem: {
/**
* Kind
* @default ingredient
* @constant
* @enum {string}
*/
kind: "ingredient";
/**
* Id
* @default -1
*/
id: number;
/** Ingredientid */
ingredientId: number;
/** Personid */
personId: number;
/**
* Createddate
* Format: date-time
*/
createdDate: string;
/** Listid */
listId?: number | null;
/** Mealid */
mealId?: number | null;
/** Recipeid */
recipeId?: number | null;
};
/** LoginBody */
LoginBody: {
/** Email */
email: string;
/** Password */
password: string;
};
/** MarkConsumedBody */
MarkConsumedBody: {
/** Consumeddate */
consumedDate?: string | null;
};
/** Meal */
Meal: {
/**
* Id
* @default -1
*/
id: number;
/**
* Suggesteddate
* Format: date-time
*/
suggestedDate: string;
/** Consumeddate */
consumedDate?: string | null;
/** Chefs */
chefs?: components["schemas"]["MemberRef"][];
/** Cleanup */
cleanup?: components["schemas"]["MemberRef"][];
/** Consumers */
consumers?: components["schemas"]["MemberRef"][];
/** Recipes */
recipes?: components["schemas"]["MealRecipe"][];
/** Extraingredients */
extraIngredients?: components["schemas"]["Ingredient"][];
/** Purchasedate */
purchaseDate?: string | null;
};
/** MealIdWrapper */
MealIdWrapper: {
/** Mealid */
mealId: number;
};
/** MealIn */
MealIn: {
/**
* Id
* @default -1
*/
id: number;
/**
* Suggesteddate
* Format: date-time
*/
suggestedDate: string;
/** Consumeddate */
consumedDate?: string | null;
/** Chefs */
chefs: components["schemas"]["MemberRef"][];
/** Cleanup */
cleanup: components["schemas"]["MemberRef"][];
/** Consumers */
consumers: components["schemas"]["MemberRef"][];
/**
* Recipes
* @default []
*/
recipes: components["schemas"]["MealRecipeIn"][];
/**
* Extraingredients
* @default []
*/
extraIngredients: components["schemas"]["Ingredient"][];
};
/** MealOut */
MealOut: {
/**
* Id
* @default -1
*/
id: number;
/**
* Suggesteddate
* Format: date-time
*/
suggestedDate: string;
/** Consumeddate */
consumedDate?: string | null;
/** Chefs */
chefs: components["schemas"]["MemberRef"][];
/** Cleanup */
cleanup: components["schemas"]["MemberRef"][];
/** Consumers */
consumers: components["schemas"]["MemberRef"][];
/** Recipes */
recipes: components["schemas"]["MealRecipe"][];
/** Extraingredients */
extraIngredients: components["schemas"]["Ingredient"][];
/** Purchasedate */
purchaseDate?: string | null;
};
/** MealRecipe */
MealRecipe: {
/** Mealid */
mealId: number;
/** Recipeid */
recipeId: number;
/** Servings */
servings: number;
recipe?: components["schemas"]["Recipe"] | null;
};
/** MealRecipeIn */
MealRecipeIn: {
/** Mealid */
mealId: number;
/** Recipeid */
recipeId: number;
/** Servings */
servings: number;
};
/** MemberRef */
MemberRef: {
/** Id */
id: number;
/** Displayname */
displayName: string;
};
/** Ok */
Ok: {
/**
* Ok
* @default true
*/
ok: boolean;
};
/** Page[RecipeOut] */
Page_RecipeOut_: {
/** Items */
items: components["schemas"]["RecipeOut"][];
/** Nextcursor */
nextCursor?: string | null;
/** Prevcursor */
prevCursor?: string | null;
/**
* Total
* @description Total count
* @default 0
*/
total: number;
};
/** ParseUrlIn */
ParseUrlIn: {
/** Url */
url: string;
};
/** ProblemDetails */
ProblemDetails: {
/**
* Type
* @default about:blank
*/
type: string;
/** Title */
title: string;
/** Status */
status: number;
/** Detail */
detail?: string | null;
/** Instance */
instance?: string | null;
/** Errors */
errors?: Record<string, never> | null;
};
/** Product */
Product: {
/**
* Id
* @default -1
*/
id: number;
/** Productid */
productId: string;
/** Shopcode */
shopCode: string;
/** Link */
link: string;
/** Name */
name: string;
/** Quantity */
quantity: number;
/** Unit */
unit: string;
/** Imgsmall */
imgSmall: string;
/** Imglarge */
imgLarge: string;
};
/** PurchaseListIn */
PurchaseListIn: {
storeName: components["schemas"]["StoreNameOut"];
/** Items */
items: components["schemas"]["IngredientPurchaseItemIn"][];
};
/** PurchasedShoppingList */
PurchasedShoppingList: {
list: components["schemas"]["ShoppingListOut"];
/** Mealslookup */
mealsLookup: {
[key: string]: components["schemas"]["Meal"];
};
/** Ingredientslookup */
ingredientsLookup: {
[key: string]: components["schemas"]["Ingredient"];
};
/** Recipeslookup */
recipesLookup: {
[key: string]: components["schemas"]["Recipe"];
};
};
/** Recipe */
Recipe: {
/**
* Id
* @default -1
*/
id: number;
/** Name */
name: string;
/** Link */
link: string;
/** Serves */
serves: number;
/** Imageurls */
imageUrls?: string[];
/** Ingredients */
ingredients?: components["schemas"]["Ingredient"][];
/** Basedonrecipe */
basedOnRecipe?: number | null;
/**
* Datecreated
* Format: date-time
*/
dateCreated?: string;
/** Createdbyid */
createdById: number;
createdBy?: components["schemas"]["MemberRef"] | null;
/** Datehidden */
dateHidden?: string | null;
/** Hiddenbyid */
hiddenById?: number | null;
hiddenBy?: components["schemas"]["MemberRef"] | null;
};
/** RecipeCreate */
"RecipeCreate-Input": {
/** Name */
name: string;
/** Link */
link: string;
/** Serves */
serves: number;
/** Imageurls */
imageUrls: string[];
/** Ingredients */
ingredients: components["schemas"]["Ingredient"][];
};
/** RecipeCreate */
"RecipeCreate-Output": {
/** Name */
name: string;
/** Link */
link: string;
/** Serves */
serves: number;
/** Imageurls */
imageUrls: string[];
/** Ingredients */
ingredients: components["schemas"]["Ingredient"][];
};
/** RecipeOut */
RecipeOut: {
/**
* Id
* @default -1
*/
id: number;
/** Name */
name: string;
/** Link */
link: string;
/** Serves */
serves: number;
/** Imageurls */
imageUrls: string[];
/** Ingredients */
ingredients: components["schemas"]["Ingredient"][];
/** Createdbyid */
createdById: number;
createdBy?: components["schemas"]["MemberRef"] | null;
/** Hiddenbyid */
hiddenById?: number | null;
hiddenBy?: components["schemas"]["MemberRef"] | null;
};
/** RefreshResponse */
RefreshResponse: {
/** Accesstoken */
accessToken: string;
/**
* Tokentype
* @default bearer
*/
tokenType: string;
};
/** RegisterBody */
RegisterBody: {
/** Email */
email: string;
/** Password */
password: string;
/** Displayname */
displayName: string;
};
/** RequestedMealItem */
RequestedMealItem: {
/**
* Kind
* @default requestedMeal
* @constant
* @enum {string}
*/
kind: "requestedMeal";
/**
* Id
* @default -1
*/
id: number;
/** Personid */
personId: number;
/** Mealid */
mealId: number;
/**
* Createddate
* Format: date-time
*/
createdDate: string;
};
/** ShoppingListOut */
ShoppingListOut: {
/** Id */
id: number;
/**
* Createddate
* Format: date-time
*/
createdDate: string;
/**
* Storename
* @enum {string}
*/
storeName: "woolworths" | "coles" | "home";
/** Purchasedbyid */
purchasedById: number;
purchasedBy?: components["schemas"]["MemberRef"] | null;
/** Items */
items: components["schemas"]["ListIngredientItem"][];
};
/**
* StoreEnum
* @enum {string}
*/
StoreEnum: "woolworths" | "coles" | "";
/** TokenResponse */
TokenResponse: {
/** Accesstoken */
accessToken: string;
/**
* Tokentype
* @default bearer
*/
tokenType: string;
user: components["schemas"]["User"];
};
/** User */
User: {
/**
* Id
* @default -1
*/
id: number;
/** Email */
email: string;
/** Displayname */
displayName: string;
/** Profilephotourl */
profilePhotoUrl?: string | null;
};
/** ValidationError */
ValidationError: {
/** Location */
loc: (string | number)[];
/** Message */
msg: string;
/** Error Type */
type: string;
};
/** WhoAmI */
WhoAmI: {
/** Householdid */
householdId: number;
/** Householdslug */
householdSlug: string;
};
/**
* StoreNameOut
* @enum {string}
*/
StoreNameOut: "woolworths" | "coles" | "home";
};
responses: {
/** @description Bad Request */
Problem400: {
headers: {
[name: string]: unknown;
};
content: {
"application/problem+json": unknown;
"application/json": components["schemas"]["ProblemDetails"];
};
};
/** @description Not Found */
Problem404: {
headers: {
[name: string]: unknown;
};
content: {
"application/problem+json": unknown;
"application/json": components["schemas"]["ProblemDetails"];
};
};
/** @description Validation Error */
Problem422: {
headers: {
[name: string]: unknown;
};
content: {
"application/problem+json": components["schemas"]["ProblemDetails"];
"application/json": components["schemas"]["ProblemDetails"];
};
};
/** @description Forbidden */
Problem403: {
headers: {
[name: string]: unknown;
};
content: {
"application/problem+json": unknown;
"application/json": components["schemas"]["ProblemDetails"];
};
};
};
parameters: never;
requestBodies: never;
headers: never;
pathItems: never;
}
export type $defs = Record<string, never>;
export interface operations {
register: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["RegisterBody"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TokenResponse"];
};
};
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
loginV2: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["LoginBody"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TokenResponse"];
};
};
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
refreshV2: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["RefreshResponse"];
};
};
422: components["responses"]["Problem422"];
};
};
logoutV2: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": unknown;
};
};
422: components["responses"]["Problem422"];
};
};
list_my_households_api_v1_users_me_households_get: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HouseholdResponse"][];
};
};
403: components["responses"]["Problem403"];
422: components["responses"]["Problem422"];
};
};
create_household_api_v1_households_post: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CreateHouseholdBody"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HouseholdResponse"];
};
};
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
accept_invitation_api_v1_invitations_accept_post: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["AcceptInvitationBody"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["AcceptInvitationResponse"];
};
};
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
whoami_api_v1_households__householdSlug__whoami_get: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["WhoAmI"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
list_members_api_v1_households__householdSlug__members_get: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HouseholdMember"][];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
create_invitation_api_v1_households__householdSlug__invitations_post: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CreateInvitationBody"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["InvitationResponse"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
list_recipes_api_v1_households__householdSlug__recipes_get: {
parameters: {
query?: {
q?: string | null;
cursor?: string | null;
limit?: number;
};
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["Page_RecipeOut_"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
create_recipe_api_v1_households__householdSlug__recipes_post: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["RecipeCreate-Input"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["RecipeOut"];
};
};
400: components["responses"]["Problem400"];
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
get_recipe_api_v1_households__householdSlug__recipes__recipe_id__get: {
parameters: {
query?: never;
header?: never;
path: {
recipe_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["RecipeOut"];
};
};
403: components["responses"]["Problem403"];
404: components["responses"]["Problem404"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
delete_recipe_api_v1_households__householdSlug__recipes__recipe_id__delete: {
parameters: {
query?: never;
header?: never;
path: {
recipe_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["RecipeOut"];
};
};
403: components["responses"]["Problem403"];
404: components["responses"]["Problem404"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
parse_from_url_api_v1_households__householdSlug__recipes_parse_from_url_post: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["ParseUrlIn"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["RecipeCreate-Output"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
parse_ingredient_api_v1_households__householdSlug__ingredients_parse_get: {
parameters: {
query: {
/** @description Multiple ingredient lines to parse */
lines: string[];
};
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["Ingredient"][];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
getUpcomingMealsV2: {
parameters: {
query: {
from: string;
to: string;
};
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["MealOut"][];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
getMealV2: {
parameters: {
query?: never;
header?: never;
path: {
meal_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["MealOut"];
};
};
403: components["responses"]["Problem403"];
404: components["responses"]["Problem404"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
updateMealV2: {
parameters: {
query?: never;
header?: never;
path: {
meal_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["MealIn"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["MealOut"];
};
};
400: components["responses"]["Problem400"];
403: components["responses"]["Problem403"];
404: components["responses"]["Problem404"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
deleteMealV2: {
parameters: {
query?: never;
header?: never;
path: {
meal_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["MealOut"];
};
};
403: components["responses"]["Problem403"];
404: components["responses"]["Problem404"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
markMealConsumedV2: {
parameters: {
query?: never;
header?: never;
path: {
meal_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: {
content: {
"application/json": components["schemas"]["MarkConsumedBody"] | null;
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["MealOut"];
};
};
400: components["responses"]["Problem400"];
403: components["responses"]["Problem403"];
404: components["responses"]["Problem404"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
createMealV2: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["MealIn"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["MealOut"];
};
};
400: components["responses"]["Problem400"];
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
getCurrentShoppingListV2: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["CurrentShoppingList"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
getShoppingListV2: {
parameters: {
query?: never;
header?: never;
path: {
list_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PurchasedShoppingList"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
purchaseIngredientsV2: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["PurchaseListIn"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PurchasedShoppingList"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
requestMealV2: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["MealIdWrapper"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["RequestedMealItem"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
unrequestMealV2: {
parameters: {
query?: never;
header?: never;
path: {
meal_id: number;
householdSlug: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["Ok"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
requestIngredientV2: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["IngredientIdWrapper"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ListIngredientItem"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
unrequestIngredientV2: {
parameters: {
query?: never;
header?: never;
path: {
householdSlug: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["IngredientIdWrapper"];
};
};
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["Ok"];
};
};
403: components["responses"]["Problem403"];
/** @description Validation Error */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
healthz_healthz_get: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Successful Response */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HealthStatus"];
};
};
};
};
}