@kadconsulting/dry
Version:
KAD Reusable Component Library
51 lines (50 loc) • 1.23 kB
TypeScript
type Timestamp = string;
interface Timestamped {
createdAt: Timestamp;
updatedAt: Timestamp;
}
interface Calendar extends Timestamped {
id: number;
name: string;
startHoursOfOperation: string;
endHoursOfOperation: string;
}
export interface SimBay extends Timestamped {
id: number;
name: string;
publishedAt: Timestamp;
calendar: Calendar;
times: TimePeriod[];
}
export interface TimePeriod {
startDateTime: string;
endDateTime: string;
}
interface CoachAvailability extends Timestamped {
id: number;
fullName: string;
publishedAt: Timestamp;
title: string | null;
yearsOfExperience: number | null;
calendar: Calendar;
times: TimePeriod[];
}
interface LocationAvailability extends Timestamped {
id: number;
title: string;
phoneNumber: string;
email: string;
slug: string;
publishedAt: Timestamp;
calendar: Calendar;
times: TimePeriod[];
}
interface Schedule {
day: Timestamp;
simBays?: SimBay[];
times?: TimePeriod[];
coachAvailability: CoachAvailability[];
locationAvailability: LocationAvailability;
}
export declare function createMockSchedule(numberOfRecords: number): Schedule;
export {};