50 lines
865 B
TypeScript

/* Copyright (C) 2024-2025 LibreWeddingPlanner contributors*/
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;
valid?: boolean;
}
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;
}