49 lines
823 B
TypeScript
49 lines
823 B
TypeScript
/* Copyright (C) 2024 Manuel Bustillo*/
|
|
|
|
import { AttendanceSummary } from "./group";
|
|
import { Guest } from "./guest";
|
|
|
|
export interface Entity {
|
|
id?: string;
|
|
}
|
|
|
|
export type TableArrangement = {
|
|
id: string;
|
|
number: number;
|
|
name: string;
|
|
guests?: Guest[];
|
|
discomfort?: number
|
|
}
|
|
|
|
export type User = {
|
|
id: string;
|
|
email: string;
|
|
}
|
|
|
|
export type Captcha = {
|
|
id: string;
|
|
answer: string;
|
|
}
|
|
|
|
export type StructuredErrors = {
|
|
[key: string]: string[] | string;
|
|
};
|
|
|
|
export type GlobalSummary = {
|
|
expenses: ExpenseSummary;
|
|
guests: AttendanceSummary
|
|
}
|
|
|
|
export type ExpenseSummary = {
|
|
projected: ExpensePossibleSummary;
|
|
confirmed: ExpensePossibleSummary;
|
|
status: StatusSummary;
|
|
}
|
|
|
|
export type ExpensePossibleSummary = {
|
|
total: number;
|
|
guests: number;
|
|
}
|
|
export type StatusSummary = {
|
|
paid: number;
|
|
} |