32 lines
645 B
TypeScript
32 lines
645 B
TypeScript
export interface ParticipantView {
|
|
id: number;
|
|
name: string;
|
|
paymentLink: string | null;
|
|
}
|
|
|
|
export type ExpenseType = 'expense' | 'payment';
|
|
|
|
export interface ExpenseView {
|
|
id: number;
|
|
type: ExpenseType;
|
|
description: string;
|
|
amountCents: number;
|
|
payerId: number;
|
|
participantIds: number[];
|
|
createdAt: number;
|
|
}
|
|
|
|
export interface SettlementView {
|
|
fromId: number;
|
|
toId: number;
|
|
amountCents: number;
|
|
}
|
|
|
|
export interface PotView {
|
|
pot: { slug: string; name: string; currency: string };
|
|
participants: ParticipantView[];
|
|
expenses: ExpenseView[];
|
|
netBalances: Record<number, number>;
|
|
settlements: SettlementView[];
|
|
}
|