2023-06-05 04:16:49 +08:00
|
|
|
import { Types } from "mongoose";
|
2023-09-05 07:37:30 -05:00
|
|
|
import { IOid } from "@/src/types/commonTypes";
|
2023-06-05 04:16:49 +08:00
|
|
|
|
2023-06-05 00:17:01 +02:00
|
|
|
export interface IShip {
|
2023-06-05 04:16:49 +08:00
|
|
|
ShipOwnerId: Types.ObjectId;
|
2023-12-14 17:34:15 +01:00
|
|
|
Ship: IShipResponse;
|
|
|
|
Apartment: IApartment;
|
|
|
|
LoadOutInventory: { LoadOutPresets: Types.ObjectId };
|
2023-06-05 04:16:49 +08:00
|
|
|
}
|
|
|
|
|
2023-12-14 17:34:15 +01:00
|
|
|
export interface IShipResponse extends IShipDatabase {
|
2023-09-05 07:37:30 -05:00
|
|
|
ShipId: IOid;
|
2023-06-05 00:17:01 +02:00
|
|
|
}
|
2023-09-05 07:37:30 -05:00
|
|
|
|
2023-12-14 17:34:15 +01:00
|
|
|
export interface IShipDatabase {
|
|
|
|
Rooms: IRooms[];
|
2023-06-05 04:16:49 +08:00
|
|
|
Features: string[];
|
|
|
|
ContentUrlSignature: string;
|
|
|
|
}
|
|
|
|
|
2023-12-14 17:34:15 +01:00
|
|
|
// TODO: add Apartment.Gardening
|
|
|
|
export interface IRooms {
|
2023-06-05 04:16:49 +08:00
|
|
|
Name: string;
|
|
|
|
MaxCapacity: number;
|
|
|
|
}
|
|
|
|
|
2023-12-14 17:34:15 +01:00
|
|
|
export interface IApartment {
|
|
|
|
Rooms: IRooms[];
|
2023-06-05 04:16:49 +08:00
|
|
|
FavouriteLoadouts: string[];
|
|
|
|
}
|