67 lines
1.1 KiB
TypeScript
67 lines
1.1 KiB
TypeScript
/* Copyright (C) 2024 Manuel Bustillo*/
|
|
|
|
import { Guest } from "./guest";
|
|
|
|
export interface Entity {
|
|
id?: string;
|
|
}
|
|
|
|
export type Expense = {
|
|
id: string;
|
|
name: string;
|
|
amount: number;
|
|
pricingType: 'fixed' | 'per person';
|
|
};
|
|
|
|
export type TableArrangement = {
|
|
id: string;
|
|
number: number;
|
|
name: string;
|
|
guests?: Guest[];
|
|
discomfort?: number
|
|
}
|
|
|
|
export type Group = {
|
|
id?: string;
|
|
name?: string;
|
|
guest_count?: number;
|
|
icon?: string;
|
|
children?: Group[];
|
|
parentId?: string;
|
|
color?: string;
|
|
attendance?: AttendanceSummary
|
|
};
|
|
|
|
export type AttendanceSummary = {
|
|
considered: number;
|
|
invited: number;
|
|
confirmed: number;
|
|
declined: number;
|
|
tentative: number;
|
|
total: number;
|
|
}
|
|
|
|
export type guestsTable = {
|
|
id: string;
|
|
customer_id: string;
|
|
name: string;
|
|
email: string;
|
|
image_url: string;
|
|
date: string;
|
|
amount: number;
|
|
status: 'pending' | 'paid';
|
|
};
|
|
|
|
export type User = {
|
|
id: string;
|
|
email: string;
|
|
}
|
|
|
|
export type Captcha = {
|
|
id: string;
|
|
answer: string;
|
|
}
|
|
|
|
export type StructuredErrors = {
|
|
[key: string]: string[] | string;
|
|
}; |