reach-api-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/.eslintrc copy.json +13 -0
  2. package/.eslintrc.json +23 -0
  3. package/.prettierrc.json +7 -0
  4. package/README.md +2 -0
  5. package/dist/reach-sdk.d.ts +24450 -0
  6. package/dist/reach-sdk.js +20631 -0
  7. package/package.json +46 -0
  8. package/rollup.config.mjs +30 -0
  9. package/src/ApiClient.ts +239 -0
  10. package/src/core/ApiError.ts +24 -0
  11. package/src/core/ApiRequestOptions.ts +16 -0
  12. package/src/core/ApiResult.ts +10 -0
  13. package/src/core/AxiosHttpRequest.ts +24 -0
  14. package/src/core/BaseHttpRequest.ts +12 -0
  15. package/src/core/CancelablePromise.ts +129 -0
  16. package/src/core/OpenAPI.ts +31 -0
  17. package/src/core/request.ts +328 -0
  18. package/src/definition/swagger.yaml +58566 -0
  19. package/src/index.ts +230 -0
  20. package/src/models/Activity.ts +51 -0
  21. package/src/models/ActivityType.ts +12 -0
  22. package/src/models/AdvanceBooking.ts +12 -0
  23. package/src/models/Amenity.ts +21 -0
  24. package/src/models/AppUserRole.ts +13 -0
  25. package/src/models/ApplicationRole.ts +14 -0
  26. package/src/models/AutoCompleteResponseModel.ts +15 -0
  27. package/src/models/BookingStatus.ts +11 -0
  28. package/src/models/ContactOnConfirmation.ts +11 -0
  29. package/src/models/Country.ts +43 -0
  30. package/src/models/Course.ts +252 -0
  31. package/src/models/CourseBookingCutoff.ts +11 -0
  32. package/src/models/CoursePage.ts +13 -0
  33. package/src/models/CourseSearchSortBy.ts +11 -0
  34. package/src/models/CourseSession.ts +88 -0
  35. package/src/models/CourseSessionPage.ts +13 -0
  36. package/src/models/CourseSessionSchedule.ts +85 -0
  37. package/src/models/CourseSessionSchedulePage.ts +13 -0
  38. package/src/models/Customer.ts +88 -0
  39. package/src/models/CustomerCancellationOption.ts +12 -0
  40. package/src/models/CustomerPage.ts +13 -0
  41. package/src/models/CustomerType.ts +11 -0
  42. package/src/models/DayOfWeek.ts +13 -0
  43. package/src/models/EmailReminderSchedule.ts +49 -0
  44. package/src/models/EmailReminderSchedulePage.ts +13 -0
  45. package/src/models/EmailSetting.ts +61 -0
  46. package/src/models/EmailSettingPage.ts +13 -0
  47. package/src/models/Facility.ts +105 -0
  48. package/src/models/FacilityIndividual.ts +67 -0
  49. package/src/models/FacilityIndividualPage.ts +13 -0
  50. package/src/models/FacilityIndividualsType.ts +19 -0
  51. package/src/models/FacilityPage.ts +13 -0
  52. package/src/models/GenericActivity.ts +112 -0
  53. package/src/models/GenericActivityPage.ts +13 -0
  54. package/src/models/GeocodeResponseModel.ts +18 -0
  55. package/src/models/GooglePrediction.ts +32 -0
  56. package/src/models/HttpStatusCode.ts +67 -0
  57. package/src/models/IOpportunity.ts +55 -0
  58. package/src/models/Image.ts +78 -0
  59. package/src/models/ImagePage.ts +13 -0
  60. package/src/models/InviteStatus.ts +11 -0
  61. package/src/models/LoqateGeocode.ts +21 -0
  62. package/src/models/LoqatePlaceResult.ts +48 -0
  63. package/src/models/LoqatePrediction.ts +21 -0
  64. package/src/models/Northeast.ts +17 -0
  65. package/src/models/NotificationQueue.ts +50 -0
  66. package/src/models/NotificationQueuePage.ts +13 -0
  67. package/src/models/NotificationSetting.ts +89 -0
  68. package/src/models/NotificationSettingPage.ts +13 -0
  69. package/src/models/NotificationType.ts +22 -0
  70. package/src/models/Offer.ts +100 -0
  71. package/src/models/OfferPage.ts +13 -0
  72. package/src/models/OpenactiveFeedIntermediate.ts +50 -0
  73. package/src/models/OpenactiveFeedIntermediatePage.ts +13 -0
  74. package/src/models/OpenactiveFeedItem.ts +56 -0
  75. package/src/models/OpenactiveFeedItemPage.ts +13 -0
  76. package/src/models/OpportunityType.ts +12 -0
  77. package/src/models/Order.ts +212 -0
  78. package/src/models/OrderItem.ts +98 -0
  79. package/src/models/OrderItemPage.ts +13 -0
  80. package/src/models/OrderItemStatus.ts +16 -0
  81. package/src/models/OrderPage.ts +13 -0
  82. package/src/models/OrderSource.ts +11 -0
  83. package/src/models/OrderStage.ts +12 -0
  84. package/src/models/OrderToken.ts +41 -0
  85. package/src/models/OrderTokenPage.ts +13 -0
  86. package/src/models/OrgCourseUtilisation.ts +81 -0
  87. package/src/models/OrgCourseUtilisationPage.ts +13 -0
  88. package/src/models/OrganisationApplicationFeeHandling.ts +11 -0
  89. package/src/models/OrganisationAvailableChannel.ts +11 -0
  90. package/src/models/OrganisationRefundPolicy.ts +12 -0
  91. package/src/models/OrganisationTaxMode.ts +11 -0
  92. package/src/models/OrganisationType.ts +11 -0
  93. package/src/models/Payment.ts +65 -0
  94. package/src/models/PaymentMethod.ts +13 -0
  95. package/src/models/PaymentPage.ts +13 -0
  96. package/src/models/Permission.ts +77 -0
  97. package/src/models/PermissionPage.ts +13 -0
  98. package/src/models/PlaceDetailsResponseModel.ts +12 -0
  99. package/src/models/PlaceGeometry.ts +14 -0
  100. package/src/models/PlaceLocation.ts +17 -0
  101. package/src/models/PlaceResult.ts +20 -0
  102. package/src/models/PlaceViewport.ts +14 -0
  103. package/src/models/PlusCode.ts +17 -0
  104. package/src/models/Prepayment.ts +12 -0
  105. package/src/models/Programme.ts +71 -0
  106. package/src/models/ProgrammePage.ts +13 -0
  107. package/src/models/ReachEntity.ts +18 -0
  108. package/src/models/ReachError.ts +17 -0
  109. package/src/models/ReachOperation.ts +11 -0
  110. package/src/models/RecentOrderActivityReport.ts +81 -0
  111. package/src/models/RecentOrderActivityReportPage.ts +13 -0
  112. package/src/models/ScheduleStatus.ts +13 -0
  113. package/src/models/ScheduledSession.ts +139 -0
  114. package/src/models/ScheduledSessionPage.ts +13 -0
  115. package/src/models/ScheduledSessionSchedule.ts +85 -0
  116. package/src/models/ScheduledSessionSchedulePage.ts +13 -0
  117. package/src/models/ScheduledSessionSearchSortBy.ts +10 -0
  118. package/src/models/SearchSortOrderDirection.ts +11 -0
  119. package/src/models/Session.ts +191 -0
  120. package/src/models/SessionGender.ts +12 -0
  121. package/src/models/SessionPage.ts +13 -0
  122. package/src/models/SessionType.ts +12 -0
  123. package/src/models/Slot.ts +142 -0
  124. package/src/models/SlotAvailabilityStatus.ts +17 -0
  125. package/src/models/SlotOffer.ts +41 -0
  126. package/src/models/SlotOfferPage.ts +13 -0
  127. package/src/models/SlotPage.ts +13 -0
  128. package/src/models/SlotSchedule.ts +107 -0
  129. package/src/models/SlotScheduleOffer.ts +42 -0
  130. package/src/models/SlotScheduleOfferPage.ts +13 -0
  131. package/src/models/SlotSchedulePage.ts +13 -0
  132. package/src/models/SlotStatus.ts +18 -0
  133. package/src/models/Southwest.ts +17 -0
  134. package/src/models/StripeAccount.ts +69 -0
  135. package/src/models/StripeAccountPage.ts +13 -0
  136. package/src/models/StructuredFormatting.ts +17 -0
  137. package/src/models/Surface.ts +24 -0
  138. package/src/models/Survey.ts +51 -0
  139. package/src/models/SurveyAnswer.ts +58 -0
  140. package/src/models/SurveyAnswerPage.ts +13 -0
  141. package/src/models/SurveyPage.ts +13 -0
  142. package/src/models/SurveyQuestion.ts +69 -0
  143. package/src/models/SurveyQuestionOption.ts +45 -0
  144. package/src/models/SurveyQuestionPage.ts +13 -0
  145. package/src/models/SurveyQuestionType.ts +13 -0
  146. package/src/models/SurveyQuestionsTarget.ts +11 -0
  147. package/src/models/SurveySubmissionModel.ts +33 -0
  148. package/src/models/SurveyType.ts +11 -0
  149. package/src/models/Tax.ts +37 -0
  150. package/src/models/Tenant.ts +242 -0
  151. package/src/models/TenantPage.ts +13 -0
  152. package/src/models/TenantWebsiteSetting.ts +89 -0
  153. package/src/models/TenantWebsiteSettingPage.ts +13 -0
  154. package/src/models/Timezone.ts +21 -0
  155. package/src/models/TotalRevenueReport.ts +68 -0
  156. package/src/models/TotalRevenueReportPage.ts +13 -0
  157. package/src/models/User.ts +65 -0
  158. package/src/models/UserPage.ts +13 -0
  159. package/src/models/UserRole.ts +28 -0
  160. package/src/models/Venue.ts +187 -0
  161. package/src/models/VenueOpeningHours.ts +52 -0
  162. package/src/models/VenuePage.ts +13 -0
  163. package/src/models/VenuesReport.ts +81 -0
  164. package/src/models/VenuesReportPage.ts +13 -0
  165. package/src/models/WaitlistActivity.ts +58 -0
  166. package/src/models/WaitlistActivityPage.ts +13 -0
  167. package/src/models/WaitlistOpportunity.ts +68 -0
  168. package/src/models/WaitlistOpportunityPage.ts +13 -0
  169. package/src/services/ActivityService.ts +118 -0
  170. package/src/services/AmenityService.ts +118 -0
  171. package/src/services/BookingService.ts +1037 -0
  172. package/src/services/CountryService.ts +118 -0
  173. package/src/services/CourseSessionSchedulesService.ts +589 -0
  174. package/src/services/CourseSessionsService.ts +715 -0
  175. package/src/services/CoursesService.ts +930 -0
  176. package/src/services/CustomersService.ts +726 -0
  177. package/src/services/EmailReminderSchedulesService.ts +526 -0
  178. package/src/services/EmailSettingsService.ts +528 -0
  179. package/src/services/FacilitiesService.ts +634 -0
  180. package/src/services/FacilityIndividualsService.ts +526 -0
  181. package/src/services/GenericActivityService.ts +564 -0
  182. package/src/services/GeocodeService.ts +43 -0
  183. package/src/services/ImagesService.ts +661 -0
  184. package/src/services/LeasingService.ts +739 -0
  185. package/src/services/LoqatePlacesService.ts +76 -0
  186. package/src/services/NotificationQueueService.ts +508 -0
  187. package/src/services/NotificationSettingsService.ts +708 -0
  188. package/src/services/OffersService.ts +636 -0
  189. package/src/services/OpenactiveFeedIntermediateService.ts +490 -0
  190. package/src/services/OpenactiveFeedItemService.ts +493 -0
  191. package/src/services/OrderItemsService.ts +474 -0
  192. package/src/services/OrdersService.ts +862 -0
  193. package/src/services/OrgCourseUtilisationService.ts +762 -0
  194. package/src/services/PaymentsService.ts +474 -0
  195. package/src/services/PermissionsService.ts +456 -0
  196. package/src/services/PlacesService.ts +70 -0
  197. package/src/services/ProgrammesService.ts +528 -0
  198. package/src/services/PublicBookingService.ts +528 -0
  199. package/src/services/PublicCoursesService.ts +632 -0
  200. package/src/services/PublicFacilitiesService.ts +462 -0
  201. package/src/services/PublicHealthCheckService.ts +25 -0
  202. package/src/services/PublicLeasingService.ts +602 -0
  203. package/src/services/PublicOrderTokensService.ts +468 -0
  204. package/src/services/PublicOrdersService.ts +527 -0
  205. package/src/services/PublicProgrammesService.ts +426 -0
  206. package/src/services/PublicScheduledSessionsService.ts +621 -0
  207. package/src/services/PublicSessionsService.ts +697 -0
  208. package/src/services/PublicSlotsService.ts +810 -0
  209. package/src/services/PublicStripeWebhookService.ts +35 -0
  210. package/src/services/PublicSurveyQuestionsService.ts +424 -0
  211. package/src/services/PublicSurveysService.ts +378 -0
  212. package/src/services/PublicTenantsService.ts +427 -0
  213. package/src/services/PublicVenuesService.ts +522 -0
  214. package/src/services/PublicWaitlistActivityService.ts +442 -0
  215. package/src/services/PublicWaitlistOpportunityService.ts +430 -0
  216. package/src/services/RecentOrderActivityReportService.ts +546 -0
  217. package/src/services/ScheduledSessionsSchedulesService.ts +605 -0
  218. package/src/services/ScheduledSessionsService.ts +903 -0
  219. package/src/services/SessionsService.ts +670 -0
  220. package/src/services/SlotOffersService.ts +492 -0
  221. package/src/services/SlotScheduleOffersService.ts +492 -0
  222. package/src/services/SlotSchedulesService.ts +641 -0
  223. package/src/services/SlotsService.ts +842 -0
  224. package/src/services/StripeAccountService.ts +552 -0
  225. package/src/services/SurfacesService.ts +124 -0
  226. package/src/services/SurveyAnswersService.ts +726 -0
  227. package/src/services/SurveyQuestionsService.ts +474 -0
  228. package/src/services/SurveysService.ts +456 -0
  229. package/src/services/TenantWebsiteSettingsService.ts +456 -0
  230. package/src/services/TenantsService.ts +801 -0
  231. package/src/services/TimezoneService.ts +124 -0
  232. package/src/services/TotalRevenueReportService.ts +528 -0
  233. package/src/services/UsersService.ts +543 -0
  234. package/src/services/VenuesReportService.ts +666 -0
  235. package/src/services/VenuesService.ts +724 -0
  236. package/src/services/WaitlistActivityService.ts +546 -0
  237. package/src/services/WaitlistOpportunityService.ts +528 -0
  238. package/tsconfig.json +11 -0
@@ -0,0 +1,13 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { ScheduledSessionSchedule } from './ScheduledSessionSchedule';
6
+
7
+ export type ScheduledSessionSchedulePage = {
8
+ readonly pageNumber?: number;
9
+ readonly totalPages?: number;
10
+ readonly itemsPerPage?: number;
11
+ readonly totalItems?: number;
12
+ readonly items?: Array<ScheduledSessionSchedule> | null;
13
+ };
@@ -0,0 +1,10 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * The scheduled session search sortby.
7
+ */
8
+ export enum ScheduledSessionSearchSortBy {
9
+ START_DATE_TIME = 'StartDateTime',
10
+ }
@@ -0,0 +1,11 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * The course search sortby.
7
+ */
8
+ export enum SearchSortOrderDirection {
9
+ ASC = 'Asc',
10
+ DESC = 'Desc',
11
+ }
@@ -0,0 +1,191 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { Activity } from './Activity';
6
+ import type { Image } from './Image';
7
+ import type { Offer } from './Offer';
8
+ import type { Programme } from './Programme';
9
+ import type { ScheduledSession } from './ScheduledSession';
10
+ import type { ScheduledSessionSchedule } from './ScheduledSessionSchedule';
11
+ import type { SessionGender } from './SessionGender';
12
+ import type { SessionType } from './SessionType';
13
+ import type { Venue } from './Venue';
14
+ import type { WaitlistActivity } from './WaitlistActivity';
15
+
16
+ /**
17
+ * Represents a Reach.Models.Session within a Reach.Models.Session.Venue, for example, tennis courts within a leisure centre.
18
+ */
19
+ export type Session = {
20
+ /**
21
+ * Gets or sets the entities Id.
22
+ */
23
+ id?: string;
24
+ /**
25
+ * Gets or sets the tenant Id.
26
+ */
27
+ tenantId?: string;
28
+ /**
29
+ * Gets or sets the created date of this entity.
30
+ */
31
+ dateCreated?: string;
32
+ /**
33
+ * Gets or sets the last modified date of this entity.
34
+ */
35
+ dateModified?: string;
36
+ /**
37
+ * Gets or sets the modified by Id.
38
+ */
39
+ modifiedById?: string | null;
40
+ /**
41
+ * Gets or sets a value indicating whether the record is live and available for use within the application.
42
+ */
43
+ isLive?: boolean;
44
+ /**
45
+ * Gets or sets the session venue id.
46
+ */
47
+ venueId?: string | null;
48
+ /**
49
+ * Gets or sets the session activity id.
50
+ */
51
+ activityId?: number | null;
52
+ /**
53
+ * Gets or sets the session programme id.
54
+ */
55
+ programmeId?: string | null;
56
+ /**
57
+ * Gets or sets the session survey id.
58
+ */
59
+ surveyId?: string | null;
60
+ /**
61
+ * Gets or sets the course post completion survey id.
62
+ */
63
+ postCompletionSurveyId?: string | null;
64
+ sessionType?: SessionType;
65
+ /**
66
+ * Gets or sets the session name.
67
+ */
68
+ name?: string | null;
69
+ /**
70
+ * Gets or sets the session description.
71
+ */
72
+ description?: string | null;
73
+ /**
74
+ * Gets or sets the openactive activity Id.
75
+ */
76
+ openactiveActivityId?: string | null;
77
+ /**
78
+ * Gets or sets the openactive activity pref label.
79
+ */
80
+ openactiveActivityPrefLabel?: string | null;
81
+ /**
82
+ * Gets or sets the room name.
83
+ */
84
+ roomName?: string | null;
85
+ /**
86
+ * Gets or sets the meeting instructions.
87
+ */
88
+ meetingInstructions?: string | null;
89
+ /**
90
+ * Gets or sets the equipment required.
91
+ */
92
+ equipmentRequired?: string | null;
93
+ /**
94
+ * Gets or sets the capacity.
95
+ */
96
+ capacity?: number | null;
97
+ /**
98
+ * Gets or sets a value indicating whether the session has unlimited capacity.
99
+ */
100
+ capacityUnlimited?: boolean | null;
101
+ gender?: SessionGender;
102
+ /**
103
+ * Gets or sets the min age.
104
+ */
105
+ minAge?: number | null;
106
+ /**
107
+ * Gets or sets the max age.
108
+ */
109
+ maxAge?: number | null;
110
+ /**
111
+ * Gets or sets a value indicating whether the session is online and can take bookings.
112
+ */
113
+ online?: boolean | null;
114
+ /**
115
+ * Gets or sets the additional support.
116
+ */
117
+ additionalSupport?: Array<string> | null;
118
+ /**
119
+ * Gets or sets the coaching level.
120
+ */
121
+ coachingLevel?: string | null;
122
+ /**
123
+ * Gets or sets the coach credentials.
124
+ */
125
+ coachCredentials?: string | null;
126
+ /**
127
+ * Gets or sets the coach bio.
128
+ */
129
+ bio?: string | null;
130
+ /**
131
+ * Gets or sets the virtual registration url.
132
+ */
133
+ virtualRegistrationUrl?: string | null;
134
+ /**
135
+ * Gets or sets the virtual registration url.
136
+ */
137
+ virtualVideoLink?: string | null;
138
+ /**
139
+ * Gets or sets the virtual registration url.
140
+ */
141
+ joiningInformation?: string | null;
142
+ /**
143
+ * Gets or sets the contact name.
144
+ */
145
+ contactName?: string | null;
146
+ /**
147
+ * Gets or sets the contact phone.
148
+ */
149
+ contactPhone?: string | null;
150
+ /**
151
+ * Gets or sets the contact email.
152
+ */
153
+ contactEmail?: string | null;
154
+ /**
155
+ * Gets or sets the booking link override if checkout will occur externally.
156
+ */
157
+ bookingLinkOverride?: string | null;
158
+ /**
159
+ * Gets or sets the session that this course was originally copied from.
160
+ */
161
+ copiedFrom?: string | null;
162
+ /**
163
+ * Gets or sets a value indicating whether the Session can be used as a template.
164
+ */
165
+ allowTemplating?: boolean;
166
+ /**
167
+ * Gets or sets a value indicating whether the session is archived and should be ignored under normal operation.
168
+ */
169
+ archived?: boolean | null;
170
+ /**
171
+ * Gets or sets a value indicating whether the session is deleted and should be ignored under normal operation.
172
+ */
173
+ deleted?: boolean | null;
174
+ nextAvailableOpportunity?: ScheduledSession;
175
+ venue?: Venue;
176
+ activity?: Activity;
177
+ programme?: Programme;
178
+ schedule?: ScheduledSessionSchedule;
179
+ /**
180
+ * Gets or sets the venues referenced images.
181
+ */
182
+ images?: Array<Image> | null;
183
+ /**
184
+ * Gets or sets the venues referenced images.
185
+ */
186
+ offers?: Array<Offer> | null;
187
+ /**
188
+ * Gets or sets the customers on the waitlist.
189
+ */
190
+ registrationWaitlist?: Array<WaitlistActivity> | null;
191
+ };
@@ -0,0 +1,12 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * The Sesion Gender.
7
+ */
8
+ export enum SessionGender {
9
+ MALE = 'Male',
10
+ FEMALE = 'Female',
11
+ MIXED = 'Mixed',
12
+ }
@@ -0,0 +1,13 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { Session } from './Session';
6
+
7
+ export type SessionPage = {
8
+ readonly pageNumber?: number;
9
+ readonly totalPages?: number;
10
+ readonly itemsPerPage?: number;
11
+ readonly totalItems?: number;
12
+ readonly items?: Array<Session> | null;
13
+ };
@@ -0,0 +1,12 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * The Sesion Type.
7
+ */
8
+ export enum SessionType {
9
+ IN_PERSON = 'InPerson',
10
+ VIRTUAL = 'Virtual',
11
+ COACHING = 'Coaching',
12
+ }
@@ -0,0 +1,142 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { BookingStatus } from './BookingStatus';
6
+ import type { Facility } from './Facility';
7
+ import type { FacilityIndividual } from './FacilityIndividual';
8
+ import type { Offer } from './Offer';
9
+ import type { OrderItem } from './OrderItem';
10
+ import type { SlotAvailabilityStatus } from './SlotAvailabilityStatus';
11
+ import type { SlotSchedule } from './SlotSchedule';
12
+ import type { SlotStatus } from './SlotStatus';
13
+ import type { WaitlistOpportunity } from './WaitlistOpportunity';
14
+
15
+ /**
16
+ * Represents an available lease or booked Slot within the Reach application.
17
+ */
18
+ export type Slot = {
19
+ /**
20
+ * Gets or sets the entities Id.
21
+ */
22
+ id?: string;
23
+ /**
24
+ * Gets or sets the tenant Id.
25
+ */
26
+ tenantId?: string;
27
+ /**
28
+ * Gets or sets the created date of this entity.
29
+ */
30
+ dateCreated?: string;
31
+ /**
32
+ * Gets or sets the last modified date of this entity.
33
+ */
34
+ dateModified?: string;
35
+ /**
36
+ * Gets or sets the modified by Id.
37
+ */
38
+ modifiedById?: string | null;
39
+ /**
40
+ * Gets or sets a value indicating whether the record is live and available for use within the application.
41
+ */
42
+ isLive?: boolean;
43
+ /**
44
+ * Gets a value indicating whether the slot is leased waiting confirmation to be made bookable by the Reach tenant. This status does not refer to a booking lease!.
45
+ */
46
+ readonly isLeased?: boolean;
47
+ /**
48
+ * Gets a value indicating whether the slot has availability also considering leases.
49
+ */
50
+ readonly hasAvailability?: boolean;
51
+ /**
52
+ * Gets a value indicating whether the slot is collidable.
53
+ */
54
+ readonly isCollidable?: boolean;
55
+ /**
56
+ * Gets a value indicating whether the slot is expired due to passing the end date time.
57
+ */
58
+ readonly isExpired?: boolean;
59
+ /**
60
+ * Gets a value indicating whether the slot is created by a schedule.
61
+ */
62
+ readonly isCreatedBySchedule?: boolean;
63
+ /**
64
+ * Gets a value indicating whether the slot is deletable.
65
+ */
66
+ readonly isDeletable?: boolean;
67
+ availabilityStatus?: SlotAvailabilityStatus;
68
+ /**
69
+ * Gets or sets the facility id.
70
+ */
71
+ facilityId: string;
72
+ /**
73
+ * Gets or sets the individual facility id.
74
+ */
75
+ facilityIndividualId: string;
76
+ confirmedSlotStatus?: SlotStatus;
77
+ status?: SlotStatus;
78
+ /**
79
+ * Gets or sets a short description for the slot.
80
+ */
81
+ shortDescription?: string | null;
82
+ /**
83
+ * Gets or sets the slot creation lease expiry. Preventing other slots from overwriting until the lease expires.
84
+ */
85
+ leaseExpiry?: string | null;
86
+ bookingStatus?: BookingStatus;
87
+ /**
88
+ * Gets or sets the slot on confirmed conflicted description.
89
+ */
90
+ conflictedDescription?: string | null;
91
+ /**
92
+ * Gets or sets the slot schedule id.
93
+ */
94
+ slotScheduleId?: string | null;
95
+ /**
96
+ * Gets or sets the slot start date time in UTC as is the applications required convention. (this datetime must always be UTC).
97
+ */
98
+ startDateTime: string;
99
+ /**
100
+ * Gets or sets the slot end date time in UTC as is the applications required convention. (this datetime must always be UTC).
101
+ */
102
+ endDateTime?: string | null;
103
+ /**
104
+ * Gets the slots period label.
105
+ */
106
+ readonly timePeriodLabel?: string | null;
107
+ /**
108
+ * Gets the venue time zone (currently is the tenant timezone).
109
+ */
110
+ readonly venueTimeZone?: string | null;
111
+ /**
112
+ * Gets or sets the slot duration.
113
+ */
114
+ durationMinutes: number;
115
+ /**
116
+ * Gets or sets the slot remaining uses. Defaults to 1.
117
+ */
118
+ remainingUses?: number | null;
119
+ /**
120
+ * Gets or sets the slots transaction id, used to defect collisions when a slot insert operation contains more than 1 schedule/slot.
121
+ */
122
+ transactionId?: string | null;
123
+ /**
124
+ * Gets or sets a value indicating whether the post activity completion email has been sent.
125
+ */
126
+ postCompletionEmailSent?: boolean;
127
+ facility?: Facility;
128
+ facilityIndividual?: FacilityIndividual;
129
+ slotSchedule?: SlotSchedule;
130
+ /**
131
+ * Gets or sets the order items.
132
+ */
133
+ orderItems?: Array<OrderItem> | null;
134
+ /**
135
+ * Gets or sets the customers on the waitlist for the opportunity.
136
+ */
137
+ opportunityWaitlist?: Array<WaitlistOpportunity> | null;
138
+ /**
139
+ * Gets or sets the related offers created for this slot.
140
+ */
141
+ availableOffers?: Array<Offer> | null;
142
+ };
@@ -0,0 +1,17 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * The SlotAvailabilityStatus status.
7
+ */
8
+ export enum SlotAvailabilityStatus {
9
+ AVAILABLE = 'Available',
10
+ UNAVAILABLE = 'Unavailable',
11
+ LEASED = 'Leased',
12
+ BOOKED = 'Booked',
13
+ ATTENDED = 'Attended',
14
+ NO_SPACES = 'NoSpaces',
15
+ OFFLINE = 'Offline',
16
+ BLOCKED = 'Blocked',
17
+ }
@@ -0,0 +1,41 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * Represents a relationship between a venue and an amenity.
7
+ */
8
+ export type SlotOffer = {
9
+ /**
10
+ * Gets or sets the entities Id.
11
+ */
12
+ id?: string;
13
+ /**
14
+ * Gets or sets the tenant Id.
15
+ */
16
+ tenantId?: string;
17
+ /**
18
+ * Gets or sets the created date of this entity.
19
+ */
20
+ dateCreated?: string;
21
+ /**
22
+ * Gets or sets the last modified date of this entity.
23
+ */
24
+ dateModified?: string;
25
+ /**
26
+ * Gets or sets the modified by Id.
27
+ */
28
+ modifiedById?: string | null;
29
+ /**
30
+ * Gets or sets a value indicating whether the record is live and available for use within the application.
31
+ */
32
+ isLive?: boolean;
33
+ /**
34
+ * Gets or sets the facility venue id.
35
+ */
36
+ slotId?: string | null;
37
+ /**
38
+ * Gets or sets the facility venue id.
39
+ */
40
+ offerId?: string | null;
41
+ };
@@ -0,0 +1,13 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { SlotOffer } from './SlotOffer';
6
+
7
+ export type SlotOfferPage = {
8
+ readonly pageNumber?: number;
9
+ readonly totalPages?: number;
10
+ readonly itemsPerPage?: number;
11
+ readonly totalItems?: number;
12
+ readonly items?: Array<SlotOffer> | null;
13
+ };
@@ -0,0 +1,13 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { Slot } from './Slot';
6
+
7
+ export type SlotPage = {
8
+ readonly pageNumber?: number;
9
+ readonly totalPages?: number;
10
+ readonly itemsPerPage?: number;
11
+ readonly totalItems?: number;
12
+ readonly items?: Array<Slot> | null;
13
+ };
@@ -0,0 +1,107 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { Facility } from './Facility';
6
+ import type { FacilityIndividual } from './FacilityIndividual';
7
+ import type { Offer } from './Offer';
8
+ import type { ScheduleStatus } from './ScheduleStatus';
9
+ import type { Slot } from './Slot';
10
+ import type { SlotStatus } from './SlotStatus';
11
+ import type { Tenant } from './Tenant';
12
+
13
+ /**
14
+ * Represents an organisation within the Reach application.
15
+ */
16
+ export type SlotSchedule = {
17
+ /**
18
+ * Gets or sets the entities Id.
19
+ */
20
+ id?: string;
21
+ /**
22
+ * Gets or sets the tenant Id.
23
+ */
24
+ tenantId?: string;
25
+ /**
26
+ * Gets or sets the created date of this entity.
27
+ */
28
+ dateCreated?: string;
29
+ /**
30
+ * Gets or sets the last modified date of this entity.
31
+ */
32
+ dateModified?: string;
33
+ /**
34
+ * Gets or sets the modified by Id.
35
+ */
36
+ modifiedById?: string | null;
37
+ /**
38
+ * Gets or sets a value indicating whether the record is live and available for use within the application.
39
+ */
40
+ isLive?: boolean;
41
+ /**
42
+ * Gets or sets the facilityid.
43
+ */
44
+ facilityId: string;
45
+ /**
46
+ * Gets or sets the facility individual id.
47
+ */
48
+ facilityIndividualId: string;
49
+ /**
50
+ * Gets or sets the schedules last run date time.
51
+ */
52
+ lastRunDateTime?: string | null;
53
+ /**
54
+ * Gets or sets the schedules first occurrence start date time.
55
+ */
56
+ startDateTime: string;
57
+ /**
58
+ * Gets or sets the schedules first occurrence end date time.
59
+ */
60
+ endDateTime?: string | null;
61
+ /**
62
+ * Gets or sets the schedules first occurrence duration.
63
+ */
64
+ durationMinutes: number;
65
+ status?: ScheduleStatus;
66
+ /**
67
+ * Gets or sets a short description for the slot.
68
+ */
69
+ shortDescription?: string | null;
70
+ /**
71
+ * Gets or sets the slots hex identifier.
72
+ */
73
+ hexIdentifier?: string | null;
74
+ /**
75
+ * Gets or sets the schedules evaluated rule string.
76
+ */
77
+ rRuleString: string;
78
+ /**
79
+ * Gets or sets the schedules end date.
80
+ */
81
+ recurUntil?: string | null;
82
+ /**
83
+ * Gets or sets a value indicating whether the schedule should recur indefinately.
84
+ */
85
+ recurIndefinately?: boolean | null;
86
+ /**
87
+ * Gets or sets a value indicating whether the schedule is enabled.
88
+ */
89
+ enabled?: boolean | null;
90
+ initialSlotStatus?: SlotStatus;
91
+ confirmedSlotStatus?: SlotStatus;
92
+ /**
93
+ * Gets or sets the slot schedules transaction id, used to defect collisions when a slot insert operation contains more than 1 schedule/slot.
94
+ */
95
+ transactionId?: string | null;
96
+ facility?: Facility;
97
+ tenant?: Tenant;
98
+ facilityIndividual?: FacilityIndividual;
99
+ /**
100
+ * Gets or sets the slots created for this schedule.
101
+ */
102
+ slots?: Array<Slot> | null;
103
+ /**
104
+ * Gets or sets the related offers created for this schedule.
105
+ */
106
+ availableOffers?: Array<Offer> | null;
107
+ };
@@ -0,0 +1,42 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * Maps a slot schedule to an offer, slot offers are handled differently to session offers in that the offer cannot
7
+ * tie directly to the facility - Different facility schedules within the same facility may need different offers applied.
8
+ */
9
+ export type SlotScheduleOffer = {
10
+ /**
11
+ * Gets or sets the entities Id.
12
+ */
13
+ id?: string;
14
+ /**
15
+ * Gets or sets the tenant Id.
16
+ */
17
+ tenantId?: string;
18
+ /**
19
+ * Gets or sets the created date of this entity.
20
+ */
21
+ dateCreated?: string;
22
+ /**
23
+ * Gets or sets the last modified date of this entity.
24
+ */
25
+ dateModified?: string;
26
+ /**
27
+ * Gets or sets the modified by Id.
28
+ */
29
+ modifiedById?: string | null;
30
+ /**
31
+ * Gets or sets a value indicating whether the record is live and available for use within the application.
32
+ */
33
+ isLive?: boolean;
34
+ /**
35
+ * Gets or sets the slot schedule id.
36
+ */
37
+ slotScheduleId?: string | null;
38
+ /**
39
+ * Gets or sets the offer id.
40
+ */
41
+ offerId?: string | null;
42
+ };
@@ -0,0 +1,13 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { SlotScheduleOffer } from './SlotScheduleOffer';
6
+
7
+ export type SlotScheduleOfferPage = {
8
+ readonly pageNumber?: number;
9
+ readonly totalPages?: number;
10
+ readonly itemsPerPage?: number;
11
+ readonly totalItems?: number;
12
+ readonly items?: Array<SlotScheduleOffer> | null;
13
+ };
@@ -0,0 +1,13 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import type { SlotSchedule } from './SlotSchedule';
6
+
7
+ export type SlotSchedulePage = {
8
+ readonly pageNumber?: number;
9
+ readonly totalPages?: number;
10
+ readonly itemsPerPage?: number;
11
+ readonly totalItems?: number;
12
+ readonly items?: Array<SlotSchedule> | null;
13
+ };
@@ -0,0 +1,18 @@
1
+ /* istanbul ignore file */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /**
6
+ * The Slot active status.
7
+ */
8
+ export enum SlotStatus {
9
+ PENDING = 'Pending',
10
+ LEASED = 'Leased',
11
+ LEASED_CAUSING_OVERWRITE = 'LeasedCausingOverwrite',
12
+ ACTIVE = 'Active',
13
+ CONFLICT = 'Conflict',
14
+ OFFLINE = 'Offline',
15
+ ON_DEMAND = 'OnDemand',
16
+ GHOSTED = 'Ghosted',
17
+ BLOCKED = 'Blocked',
18
+ }