mirror of
https://github.com/myfatemi04/wheelshare-frontend.git
synced 2025-04-20 02:50:15 -04:00
60 lines
1.0 KiB
TypeScript
60 lines
1.0 KiB
TypeScript
declare namespace Carpool {
|
|
export interface Group {
|
|
_id: string;
|
|
name: string;
|
|
member_ids: string[];
|
|
creator_id: string;
|
|
}
|
|
|
|
// Omits the email attribute
|
|
export interface PublicUser {
|
|
_id: string;
|
|
username: string;
|
|
first_name: string;
|
|
last_name: string;
|
|
}
|
|
|
|
export interface User {
|
|
_id: string;
|
|
email: string;
|
|
username: string;
|
|
first_name: string;
|
|
last_name: string;
|
|
}
|
|
|
|
export interface Comment {
|
|
id: string;
|
|
body: string;
|
|
author_id: string;
|
|
}
|
|
|
|
export type Status = 'pending' | 'cancelled' | 'completed' | 'interrupted';
|
|
|
|
export interface Pool {
|
|
_id: string;
|
|
title: string;
|
|
description: string;
|
|
participant_ids: string[];
|
|
driver_id: string;
|
|
create_time: string;
|
|
update_time: string;
|
|
comments: Comment[];
|
|
group_id: string;
|
|
status: Status;
|
|
capacity: number;
|
|
direction: 'pickup' | 'dropoff';
|
|
author_id: string;
|
|
type: 'request' | 'offer';
|
|
start_time: string;
|
|
end_time: string;
|
|
}
|
|
|
|
export interface Address {
|
|
user: string;
|
|
pool: string;
|
|
location: string;
|
|
lat: string;
|
|
lng: string;
|
|
}
|
|
}
|