@notangles/common
Version:
## Commands
41 lines (40 loc) • 1.01 kB
TypeScript
export declare type CourseCode = string;
export declare type Activity = string;
export declare type InInventory = null;
export declare type SelectedClasses = (Record<CourseCode, Record<Activity, ClassData | InInventory>>);
export interface CourseData {
code: CourseCode;
name: string;
earliestStartTime: number;
latestFinishTime: number;
activities: Record<Activity, ClassData[]>;
inventoryData: Record<Activity, InventoryPeriod>;
}
export interface ClassData {
id: string;
classId: number;
course: CourseData;
activity: string;
enrolments: number;
capacity: number;
periods: ClassPeriod[];
}
export interface InventoryPeriod {
class: {
course: CourseData;
activity: string;
};
}
export interface ClassPeriod {
class: ClassData;
time: ClassTime;
location: string;
locationShort: string;
}
export interface ClassTime {
day: number;
start: number;
end: number;
weeks: number[];
weeksString: string;
}