@revolugo/common 6.9.6 → 6.9.7-beta.1
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.
- package/package.json +12 -7
- package/src/cancellation-policies.test.ts +12 -9
- package/src/cancellation-policies.ts +31 -26
- package/src/constants/countries.ts +0 -2515
- package/src/constants/currencies.ts +0 -1812
- package/src/constants/environment.ts +1 -0
- package/src/constants/hotel-offers.ts +2 -0
- package/src/constants/hotel.ts +3 -0
- package/src/constants/locales.ts +6 -0
- package/src/constants/measurement.ts +1 -0
- package/src/constants/time.ts +1 -0
- package/src/countries/constants.ts +2518 -0
- package/src/countries/index.ts +7 -0
- package/src/currencies/index.ts +1817 -0
- package/src/models/paginated-queries.ts +1 -0
- package/src/types/country.ts +1 -1
- package/src/types/elements/amenity.ts +266 -0
- package/src/types/elements/bed.ts +20 -0
- package/src/types/elements/booking-policy.ts +80 -0
- package/src/types/elements/booking.ts +236 -0
- package/src/types/elements/cancellation-policy.ts +20 -0
- package/src/types/elements/contact-person.ts +158 -0
- package/src/types/elements/currency.ts +3 -0
- package/src/types/elements/event-metadata.ts +38 -0
- package/src/types/elements/event.ts +14 -0
- package/src/types/elements/hotel-image.ts +44 -0
- package/src/types/elements/hotel-images.ts +47 -0
- package/src/types/elements/hotel-offer-request.ts +82 -0
- package/src/types/elements/hotel-offer.ts +208 -0
- package/src/types/elements/hotel-review-rating.ts +14 -0
- package/src/types/elements/hotel-room-offer-package-type.ts +8 -0
- package/src/types/elements/hotel-room-offer-request.ts +77 -0
- package/src/types/elements/hotel-room-offer-type.ts +6 -0
- package/src/types/elements/hotel-room-offer.ts +192 -0
- package/src/types/elements/hotel-room.ts +102 -0
- package/src/types/elements/hotel-rooming-list.ts +49 -0
- package/src/types/elements/hotel.ts +184 -0
- package/src/types/elements/index.ts +22 -0
- package/src/types/elements/invoice.ts +21 -0
- package/src/types/elements/payment-method.ts +159 -0
- package/src/types/elements/source-market.ts +247 -0
- package/src/types/elements/tag.ts +32 -0
- package/src/types/elements/tax.ts +52 -0
- package/src/types/elements/travel-times.ts +45 -0
- package/src/types/index.ts +1 -0
- package/src/utils/array-tools.ts +3 -2
- package/src/utils/case-transformers.ts +1 -0
- package/src/utils/colors.ts +4 -4
- package/src/utils/currency.ts +30 -18
- package/src/utils/dates.ts +6 -10
- package/src/utils/debounce.ts +2 -2
- package/src/utils/find-unique-keys.ts +2 -2
- package/src/utils/get-guest-count.ts +1 -0
- package/src/utils/index.ts +1 -1
- package/src/utils/lang-default-fallbacks.ts +1 -1
- package/src/utils/math.ts +3 -3
- package/src/utils/numbers.ts +8 -7
- package/src/utils/object-tools.ts +60 -2
- package/src/utils/poller.ts +1 -0
- package/src/utils/random.ts +12 -0
- package/src/utils/strings.ts +5 -2
- package/src/utils/validators.ts +1 -0
- package/src/utils/countries.ts +0 -4
package/src/types/country.ts
CHANGED
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
export interface Amenities {
|
|
2
|
+
/**
|
|
3
|
+
* Air conditioning.
|
|
4
|
+
* @type {boolean}
|
|
5
|
+
* @memberof Amenities
|
|
6
|
+
*/
|
|
7
|
+
airConditioning?: boolean
|
|
8
|
+
/**
|
|
9
|
+
* Airport transportation service.
|
|
10
|
+
* @type {boolean}
|
|
11
|
+
* @memberof Amenities
|
|
12
|
+
*/
|
|
13
|
+
airportTransportation?: boolean
|
|
14
|
+
/**
|
|
15
|
+
* Business center.
|
|
16
|
+
* @type {boolean}
|
|
17
|
+
* @memberof Amenities
|
|
18
|
+
*/
|
|
19
|
+
businessCenter?: boolean
|
|
20
|
+
/**
|
|
21
|
+
* Car rental desk service.
|
|
22
|
+
* @type {boolean}
|
|
23
|
+
* @memberof Amenities
|
|
24
|
+
*/
|
|
25
|
+
carRentDesk?: boolean
|
|
26
|
+
/**
|
|
27
|
+
* Children welcomed.
|
|
28
|
+
* @type {boolean}
|
|
29
|
+
* @memberof Amenities
|
|
30
|
+
*/
|
|
31
|
+
childrenAllowed?: boolean
|
|
32
|
+
/**
|
|
33
|
+
* Clothing iron.
|
|
34
|
+
* @type {boolean}
|
|
35
|
+
* @memberof Amenities
|
|
36
|
+
*/
|
|
37
|
+
clothingIron?: boolean
|
|
38
|
+
/**
|
|
39
|
+
* Coffea/tea maker.
|
|
40
|
+
* @type {boolean}
|
|
41
|
+
* @memberof Amenities
|
|
42
|
+
*/
|
|
43
|
+
coffeeTeaMaker?: boolean
|
|
44
|
+
/**
|
|
45
|
+
* Combination.
|
|
46
|
+
* @type {boolean}
|
|
47
|
+
* @memberof Amenities
|
|
48
|
+
*/
|
|
49
|
+
combination?: boolean
|
|
50
|
+
/**
|
|
51
|
+
* Continental Breakfast.
|
|
52
|
+
* @type {boolean}
|
|
53
|
+
* @memberof Amenities
|
|
54
|
+
*/
|
|
55
|
+
continentalBreakfast?: boolean
|
|
56
|
+
/**
|
|
57
|
+
* Data ports in room.
|
|
58
|
+
* @type {boolean}
|
|
59
|
+
* @memberof Amenities
|
|
60
|
+
*/
|
|
61
|
+
dataPorts?: boolean
|
|
62
|
+
/**
|
|
63
|
+
* Dry cleaning.
|
|
64
|
+
* @type {boolean}
|
|
65
|
+
* @memberof Amenities
|
|
66
|
+
*/
|
|
67
|
+
dryCleaning?: boolean
|
|
68
|
+
/**
|
|
69
|
+
* Electornic room keys.
|
|
70
|
+
* @type {boolean}
|
|
71
|
+
* @memberof Amenities
|
|
72
|
+
*/
|
|
73
|
+
electronicRoomKeys?: boolean
|
|
74
|
+
/**
|
|
75
|
+
* Exterior room entrance.
|
|
76
|
+
* @type {boolean}
|
|
77
|
+
* @memberof Amenities
|
|
78
|
+
*/
|
|
79
|
+
exteriorRoomEntrance?: boolean
|
|
80
|
+
/**
|
|
81
|
+
* Family rooms.
|
|
82
|
+
* @type {boolean}
|
|
83
|
+
* @memberof Amenities
|
|
84
|
+
*/
|
|
85
|
+
familyRooms?: boolean
|
|
86
|
+
/**
|
|
87
|
+
* Fitness facility.
|
|
88
|
+
* @type {boolean}
|
|
89
|
+
* @memberof Amenities
|
|
90
|
+
*/
|
|
91
|
+
fitnessFacility?: boolean
|
|
92
|
+
/**
|
|
93
|
+
* Game room.
|
|
94
|
+
* @type {boolean}
|
|
95
|
+
* @memberof Amenities
|
|
96
|
+
*/
|
|
97
|
+
gameRoom?: boolean
|
|
98
|
+
/**
|
|
99
|
+
* Golf course.
|
|
100
|
+
* @type {boolean}
|
|
101
|
+
* @memberof Amenities
|
|
102
|
+
*/
|
|
103
|
+
golfCourse?: boolean
|
|
104
|
+
/**
|
|
105
|
+
* Hair dryer.
|
|
106
|
+
* @type {boolean}
|
|
107
|
+
* @memberof Amenities
|
|
108
|
+
*/
|
|
109
|
+
hairDryer?: boolean
|
|
110
|
+
/**
|
|
111
|
+
* Handicap Accessible.
|
|
112
|
+
* @type {boolean}
|
|
113
|
+
* @memberof Amenities
|
|
114
|
+
*/
|
|
115
|
+
handicapAccessible?: boolean
|
|
116
|
+
/**
|
|
117
|
+
* In house bar.
|
|
118
|
+
* @type {boolean}
|
|
119
|
+
* @memberof Amenities
|
|
120
|
+
*/
|
|
121
|
+
inHouseBar?: boolean
|
|
122
|
+
/**
|
|
123
|
+
* In house dining.
|
|
124
|
+
* @type {boolean}
|
|
125
|
+
* @memberof Amenities
|
|
126
|
+
*/
|
|
127
|
+
inHouseDining?: boolean
|
|
128
|
+
/**
|
|
129
|
+
* In room movies.
|
|
130
|
+
* @type {boolean}
|
|
131
|
+
* @memberof Amenities
|
|
132
|
+
*/
|
|
133
|
+
inRoomMovies?: boolean
|
|
134
|
+
/**
|
|
135
|
+
* Indoor pool.
|
|
136
|
+
* @type {boolean}
|
|
137
|
+
* @memberof Amenities
|
|
138
|
+
*/
|
|
139
|
+
indoorPool?: boolean
|
|
140
|
+
/**
|
|
141
|
+
* Interior room entrance.
|
|
142
|
+
* @type {boolean}
|
|
143
|
+
* @memberof Amenities
|
|
144
|
+
*/
|
|
145
|
+
interiorRoomEntrance?: boolean
|
|
146
|
+
/**
|
|
147
|
+
* Kitchen.
|
|
148
|
+
* @type {boolean}
|
|
149
|
+
* @memberof Amenities
|
|
150
|
+
*/
|
|
151
|
+
kitchen?: boolean
|
|
152
|
+
/**
|
|
153
|
+
* Map.
|
|
154
|
+
* @type {boolean}
|
|
155
|
+
* @memberof Amenities
|
|
156
|
+
*/
|
|
157
|
+
map?: boolean
|
|
158
|
+
/**
|
|
159
|
+
* Meeting rooms.
|
|
160
|
+
* @type {boolean}
|
|
161
|
+
* @memberof Amenities
|
|
162
|
+
*/
|
|
163
|
+
meetingRooms?: boolean
|
|
164
|
+
/**
|
|
165
|
+
* mini bar in room.
|
|
166
|
+
* @type {boolean}
|
|
167
|
+
* @memberof Amenities
|
|
168
|
+
*/
|
|
169
|
+
miniBarInRoom?: boolean
|
|
170
|
+
/**
|
|
171
|
+
* Non smoking rooms.
|
|
172
|
+
* @type {boolean}
|
|
173
|
+
* @memberof Amenities
|
|
174
|
+
*/
|
|
175
|
+
nonSmokingRooms?: boolean
|
|
176
|
+
/**
|
|
177
|
+
* Outdoor pool.
|
|
178
|
+
* @type {boolean}
|
|
179
|
+
* @memberof Amenities
|
|
180
|
+
*/
|
|
181
|
+
outdoorPool?: boolean
|
|
182
|
+
/**
|
|
183
|
+
* Parking garage.
|
|
184
|
+
* @type {boolean}
|
|
185
|
+
* @memberof Amenities
|
|
186
|
+
*/
|
|
187
|
+
parkingGarage?: boolean
|
|
188
|
+
/**
|
|
189
|
+
* Pets allowed.
|
|
190
|
+
* @type {boolean}
|
|
191
|
+
* @memberof Amenities
|
|
192
|
+
*/
|
|
193
|
+
petsAllowed?: boolean
|
|
194
|
+
/**
|
|
195
|
+
* Restricted access.
|
|
196
|
+
* @type {boolean}
|
|
197
|
+
* @memberof Amenities
|
|
198
|
+
*/
|
|
199
|
+
restrictedAccess?: boolean
|
|
200
|
+
/**
|
|
201
|
+
* Room service.
|
|
202
|
+
* @type {boolean}
|
|
203
|
+
* @memberof Amenities
|
|
204
|
+
*/
|
|
205
|
+
roomService?: boolean
|
|
206
|
+
/**
|
|
207
|
+
* Safe in room.
|
|
208
|
+
* @type {boolean}
|
|
209
|
+
* @memberof Amenities
|
|
210
|
+
*/
|
|
211
|
+
safe?: boolean
|
|
212
|
+
/**
|
|
213
|
+
* Sauna.
|
|
214
|
+
* @type {boolean}
|
|
215
|
+
* @memberof Amenities
|
|
216
|
+
*/
|
|
217
|
+
sauna?: boolean
|
|
218
|
+
/**
|
|
219
|
+
* TV in room.
|
|
220
|
+
* @type {boolean}
|
|
221
|
+
* @memberof Amenities
|
|
222
|
+
*/
|
|
223
|
+
tVInRoom?: boolean
|
|
224
|
+
/**
|
|
225
|
+
* Tennis court.
|
|
226
|
+
* @type {boolean}
|
|
227
|
+
* @memberof Amenities
|
|
228
|
+
*/
|
|
229
|
+
tennisCourt?: boolean
|
|
230
|
+
/**
|
|
231
|
+
* 24/7 security.
|
|
232
|
+
* @type {boolean}
|
|
233
|
+
* @memberof Amenities
|
|
234
|
+
*/
|
|
235
|
+
twentyFourHourSecurity?: boolean
|
|
236
|
+
/**
|
|
237
|
+
* Valet parking.
|
|
238
|
+
* @type {boolean}
|
|
239
|
+
* @memberof Amenities
|
|
240
|
+
*/
|
|
241
|
+
valetParking?: boolean
|
|
242
|
+
/**
|
|
243
|
+
* Video check out.
|
|
244
|
+
* @type {boolean}
|
|
245
|
+
* @memberof Amenities
|
|
246
|
+
*/
|
|
247
|
+
videoCheckOut?: boolean
|
|
248
|
+
/**
|
|
249
|
+
* Voice mail.
|
|
250
|
+
* @type {boolean}
|
|
251
|
+
* @memberof Amenities
|
|
252
|
+
*/
|
|
253
|
+
voiceMail?: boolean
|
|
254
|
+
/**
|
|
255
|
+
* Wake up service.
|
|
256
|
+
* @type {boolean}
|
|
257
|
+
* @memberof Amenities
|
|
258
|
+
*/
|
|
259
|
+
wakeUpService?: boolean
|
|
260
|
+
/**
|
|
261
|
+
* Whirpool.
|
|
262
|
+
* @type {boolean}
|
|
263
|
+
* @memberof Amenities
|
|
264
|
+
*/
|
|
265
|
+
whirpool?: boolean
|
|
266
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface Bed {
|
|
2
|
+
/**
|
|
3
|
+
* Number of beds of the given type in the room.
|
|
4
|
+
* @type {number}
|
|
5
|
+
* @memberof BedApi
|
|
6
|
+
*/
|
|
7
|
+
count: number
|
|
8
|
+
/**
|
|
9
|
+
* Bed name.
|
|
10
|
+
* @type {string}
|
|
11
|
+
* @memberof BedApi
|
|
12
|
+
*/
|
|
13
|
+
name: string
|
|
14
|
+
/**
|
|
15
|
+
* Bed occupancy.
|
|
16
|
+
* @type {number}
|
|
17
|
+
* @memberof BedApi
|
|
18
|
+
*/
|
|
19
|
+
occupancy: number
|
|
20
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { CancellationPolicy } from './cancellation-policy.ts'
|
|
2
|
+
import type { CurrencyType } from './currency.ts'
|
|
3
|
+
import type { HotelRoomOffer } from './hotel-room-offer.ts'
|
|
4
|
+
|
|
5
|
+
export interface BookingPolicies {
|
|
6
|
+
/**
|
|
7
|
+
* The total number of adults who will be staying in the property.
|
|
8
|
+
* @type {number}
|
|
9
|
+
* @memberof BookingPolicies
|
|
10
|
+
*/
|
|
11
|
+
adultCount: number
|
|
12
|
+
/**
|
|
13
|
+
* The list of cancellation policy date range with their corresponding penalty percentage.
|
|
14
|
+
* @type {Array<CancellationPolicy>}
|
|
15
|
+
* @memberof BookingPolicies
|
|
16
|
+
*/
|
|
17
|
+
cancellationPolicies: CancellationPolicy[]
|
|
18
|
+
/**
|
|
19
|
+
* Date of check-in formatted as YYYY-MM-DD.
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof BookingPolicies
|
|
22
|
+
*/
|
|
23
|
+
checkInDate: string
|
|
24
|
+
/**
|
|
25
|
+
* Date of check-out formatted as YYYY-MM-DD.
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof BookingPolicies
|
|
28
|
+
*/
|
|
29
|
+
checkOutDate: string
|
|
30
|
+
/**
|
|
31
|
+
* A comma-separated list of child ages (0 up to 17). e.g.: "3,7" represents 2 children respectively 3 and 7 years old.
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @memberof BookingPolicies
|
|
34
|
+
*/
|
|
35
|
+
children?: string | null
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @type {CurrencyBookingApiClient}
|
|
39
|
+
* @memberof BookingPolicies
|
|
40
|
+
*/
|
|
41
|
+
currency: CurrencyType
|
|
42
|
+
/**
|
|
43
|
+
* Expiration date for this **Booking Policy**.
|
|
44
|
+
*
|
|
45
|
+
* The returned **Booking Policy** (price and cancellation policies) is valid bookable policy up to this **expires_at** date, while it may be valid for a longer period in the case of some suppliers, this API call is equivalent to an availability check and it is important not to let long periods between retrieval of this policy and the booking confirmation call itself as this will often reduce the likelihood of a **Hotel Room Offer** being successfully booked.
|
|
46
|
+
* @type {string}
|
|
47
|
+
* @memberof BookingPolicies
|
|
48
|
+
*/
|
|
49
|
+
expiresAt: string | null
|
|
50
|
+
/**
|
|
51
|
+
* Hotel id
|
|
52
|
+
* @type {string}
|
|
53
|
+
* @memberof BookingPolicies
|
|
54
|
+
*/
|
|
55
|
+
hotelId: string
|
|
56
|
+
/**
|
|
57
|
+
*
|
|
58
|
+
* @type {HotelRoomOffer}
|
|
59
|
+
* @memberof BookingPolicies
|
|
60
|
+
*/
|
|
61
|
+
hotelRoomOffer: HotelRoomOffer
|
|
62
|
+
/**
|
|
63
|
+
* **Booking Policy** id
|
|
64
|
+
* @type {string}
|
|
65
|
+
* @memberof BookingPolicies
|
|
66
|
+
*/
|
|
67
|
+
id: string
|
|
68
|
+
/**
|
|
69
|
+
* Indicates whether the price of the **Hotel Room Offer** (without breakfast included) has increased compared to the price returned by [Retrieve Hotel Room Offers endpoint](/v1/documentation#operation/getV1Hotel_room_offers).
|
|
70
|
+
*
|
|
71
|
+
* In some case, the returned price may increase for various reasons including: Currency rate change between the POST **Booking Policies** call and the GET **Hotel Room Offers** call, **Hotel Room Offer** price has increased since the GET **Hotel Room Offers** call.
|
|
72
|
+
*
|
|
73
|
+
* If **is_price_increased** is **true**, it means that the actual/updated price of the **Hotel Room Offer** is greater than the price previously returned by [Retrieve Hotel Room Offers endpoint](/v1/documentation#operation/getV1Hotel_room_offers). If **is_price_increased** is **false**, the price of the **Hotel Room Offer** is equal to the price returned by [Retrieve Hotel Room Offers endpoint](/v1/documentation#operation/getV1Hotel_room_offers).
|
|
74
|
+
*
|
|
75
|
+
* ⚠️ It is strongly advised to clearly inform your customer of any price increase that may occur.
|
|
76
|
+
* @type {boolean}
|
|
77
|
+
* @memberof BookingPolicies
|
|
78
|
+
*/
|
|
79
|
+
isPriceIncreased: boolean
|
|
80
|
+
}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import type { CancellationPolicy } from './cancellation-policy.ts'
|
|
2
|
+
import type { ContactPerson } from './contact-person.ts'
|
|
3
|
+
import type { CurrencyType } from './currency.ts'
|
|
4
|
+
import type { Event } from './event.ts'
|
|
5
|
+
import type { HotelRoomOffer } from './hotel-room-offer.ts'
|
|
6
|
+
import type { HotelRoomingList } from './hotel-rooming-list.ts'
|
|
7
|
+
import type { InvoiceApi } from './invoice.ts'
|
|
8
|
+
import type { PaymentMethodApi } from './payment-method.ts'
|
|
9
|
+
import type { SourceMarket } from './source-market.ts'
|
|
10
|
+
import type { Tax } from './tax.ts'
|
|
11
|
+
|
|
12
|
+
export interface Booking {
|
|
13
|
+
/**
|
|
14
|
+
* The total number of adults who will be staying in the property.
|
|
15
|
+
* @type {number}
|
|
16
|
+
* @memberof Booking
|
|
17
|
+
*/
|
|
18
|
+
adultCount: number
|
|
19
|
+
/**
|
|
20
|
+
* Date of booking cancellation request, when applicable.
|
|
21
|
+
* @type {string}
|
|
22
|
+
* @memberof Booking
|
|
23
|
+
*/
|
|
24
|
+
canceledAt?: string | null
|
|
25
|
+
/**
|
|
26
|
+
* The list of cancellation policy date range with their corresponding penalty percentage.
|
|
27
|
+
* @type {Array<CancellationPolicy>}
|
|
28
|
+
* @memberof Booking
|
|
29
|
+
*/
|
|
30
|
+
cancellationPolicies: CancellationPolicy[]
|
|
31
|
+
/**
|
|
32
|
+
* Remarks about the cancellation policy.
|
|
33
|
+
* @type {string}
|
|
34
|
+
* @memberof Booking
|
|
35
|
+
*/
|
|
36
|
+
cancellationPolicyRemarks?: string | null
|
|
37
|
+
/**
|
|
38
|
+
* Date of check-in formatted as YYYY-MM-DD.
|
|
39
|
+
* @type {string}
|
|
40
|
+
* @memberof Booking
|
|
41
|
+
*/
|
|
42
|
+
checkInDate: string
|
|
43
|
+
/**
|
|
44
|
+
* Date of check-out formatted as YYYY-MM-DD.
|
|
45
|
+
* @type {string}
|
|
46
|
+
* @memberof Booking
|
|
47
|
+
*/
|
|
48
|
+
checkOutDate: string
|
|
49
|
+
/**
|
|
50
|
+
* A comma-separated list of child ages (0 up to 17). e.g.: "3,7" represents 2 children respectively 3 and 7 years old.
|
|
51
|
+
* @type {string}
|
|
52
|
+
* @memberof Booking
|
|
53
|
+
*/
|
|
54
|
+
children?: string | null
|
|
55
|
+
/**
|
|
56
|
+
* Date of booking confirmation request, when applicable.
|
|
57
|
+
* @type {string}
|
|
58
|
+
* @memberof Booking
|
|
59
|
+
*/
|
|
60
|
+
confirmedAt?: string | null
|
|
61
|
+
/**
|
|
62
|
+
*
|
|
63
|
+
* @type {ContactPerson}
|
|
64
|
+
* @memberof Booking
|
|
65
|
+
*/
|
|
66
|
+
contactPerson: ContactPerson
|
|
67
|
+
/**
|
|
68
|
+
* Creation date of the **Booking**.
|
|
69
|
+
* @type {string}
|
|
70
|
+
* @memberof Booking
|
|
71
|
+
*/
|
|
72
|
+
createdAt: string
|
|
73
|
+
/**
|
|
74
|
+
*
|
|
75
|
+
* @type {CurrencyBookingApiClient}
|
|
76
|
+
* @memberof Booking
|
|
77
|
+
*/
|
|
78
|
+
currency: CurrencyType
|
|
79
|
+
/**
|
|
80
|
+
* Customer Reference of the requested Booking (sometimes to present by the customer at hotel check-in).
|
|
81
|
+
* @type {string}
|
|
82
|
+
* @memberof Booking
|
|
83
|
+
*/
|
|
84
|
+
customerReference?: string | null
|
|
85
|
+
/**
|
|
86
|
+
*
|
|
87
|
+
* @type {Event}
|
|
88
|
+
* @memberof Booking
|
|
89
|
+
*/
|
|
90
|
+
event?: Event | null
|
|
91
|
+
/**
|
|
92
|
+
* Date of booking failure, when applicable.
|
|
93
|
+
* @type {string}
|
|
94
|
+
* @memberof Booking
|
|
95
|
+
*/
|
|
96
|
+
failedAt?: string | null
|
|
97
|
+
/**
|
|
98
|
+
* Hotel Id of the requested Booking.
|
|
99
|
+
* @type {string}
|
|
100
|
+
* @memberof Booking
|
|
101
|
+
*/
|
|
102
|
+
hotelId: string
|
|
103
|
+
/**
|
|
104
|
+
*
|
|
105
|
+
* @type {HotelRoomOffer}
|
|
106
|
+
* @memberof Booking
|
|
107
|
+
*/
|
|
108
|
+
hotelRoomOffer: HotelRoomOffer
|
|
109
|
+
/**
|
|
110
|
+
* Hotel rooming lists of a hotel booking
|
|
111
|
+
* @type {Array<HotelRoomingList>}
|
|
112
|
+
* @memberof Booking
|
|
113
|
+
*/
|
|
114
|
+
hotelRoomingLists?: HotelRoomingList[]
|
|
115
|
+
/**
|
|
116
|
+
* Booking Id
|
|
117
|
+
* @type {string}
|
|
118
|
+
* @memberof Booking
|
|
119
|
+
*/
|
|
120
|
+
id?: string | null
|
|
121
|
+
/**
|
|
122
|
+
* The list of invoices and credit notes (when applicable) direct urls associated to the Booking.
|
|
123
|
+
* @type {Array<InvoiceApi>}
|
|
124
|
+
* @memberof Booking
|
|
125
|
+
*/
|
|
126
|
+
invoices?: InvoiceApi[] | null
|
|
127
|
+
/**
|
|
128
|
+
* Date of the last booking status update.
|
|
129
|
+
* @type {string}
|
|
130
|
+
* @memberof Booking
|
|
131
|
+
*/
|
|
132
|
+
lastStatusUpdatedAt: string
|
|
133
|
+
/**
|
|
134
|
+
* You can use this parameter to attach key-value data to bookings. Metadata is useful for storing additional, structured information on a booking. As an example, you could store your user's full name and corresponding unique identifier from your system on a booking. Metadata is not used internally by the Booking Engine and won't be seen by your users unless you choose to show it to them.
|
|
135
|
+
* @type {{ [key: string]: string; }}
|
|
136
|
+
* @memberof Booking
|
|
137
|
+
*/
|
|
138
|
+
metadata?: {
|
|
139
|
+
[key: string]: string
|
|
140
|
+
} | null
|
|
141
|
+
/**
|
|
142
|
+
* Booking Pay Later Status
|
|
143
|
+
* @type {string}
|
|
144
|
+
* @memberof Booking
|
|
145
|
+
*/
|
|
146
|
+
payLater?: BookingApiPayLater
|
|
147
|
+
/**
|
|
148
|
+
* List of preferred payment methods to be used along with their respective payload (when applicable) in order to fulfill the booking.
|
|
149
|
+
*
|
|
150
|
+
* ⚠️ This field is only returned when **booking.status = bkg-created**
|
|
151
|
+
* @type {Array<PaymentMethodApi>}
|
|
152
|
+
* @memberof Booking
|
|
153
|
+
*/
|
|
154
|
+
paymentMethods?: PaymentMethodApi[]
|
|
155
|
+
/**
|
|
156
|
+
* Penalty percentage of the requested Booking.
|
|
157
|
+
*
|
|
158
|
+
* When **booking.status = bkg-cx** this is the percentage of the **booking.tax_included_price** that have been charged on the canceled booking. Otherwise, this field won't be returned.
|
|
159
|
+
* @type {number}
|
|
160
|
+
* @memberof Booking
|
|
161
|
+
*/
|
|
162
|
+
penaltyPercentage?: number | null
|
|
163
|
+
/**
|
|
164
|
+
* Booking Reference of the requested Booking.
|
|
165
|
+
* @type {string}
|
|
166
|
+
* @memberof Booking
|
|
167
|
+
*/
|
|
168
|
+
reference: string
|
|
169
|
+
/**
|
|
170
|
+
*
|
|
171
|
+
* @type {SourceMarket}
|
|
172
|
+
* @memberof Booking
|
|
173
|
+
*/
|
|
174
|
+
sourceMarket: SourceMarket
|
|
175
|
+
/**
|
|
176
|
+
* Booking status. Please, refer to [Booking Status](/v1/documentation#tag/Booking-Status) for details.
|
|
177
|
+
* @type {string}
|
|
178
|
+
* @memberof Booking
|
|
179
|
+
*/
|
|
180
|
+
status: BookingStatus
|
|
181
|
+
/**
|
|
182
|
+
* Total tax amount expressed in the booking currency.
|
|
183
|
+
* @type {number}
|
|
184
|
+
* @memberof Booking
|
|
185
|
+
*/
|
|
186
|
+
taxAmount: number
|
|
187
|
+
/**
|
|
188
|
+
* Price of the booking including taxes expressed in the booking currency.
|
|
189
|
+
* @type {number}
|
|
190
|
+
* @memberof Booking
|
|
191
|
+
*/
|
|
192
|
+
taxIncludedPrice: number
|
|
193
|
+
/**
|
|
194
|
+
*
|
|
195
|
+
* @type {Array<Tax>}
|
|
196
|
+
* @memberof Booking
|
|
197
|
+
*/
|
|
198
|
+
taxes?: Tax[] | null
|
|
199
|
+
/**
|
|
200
|
+
* Link to Revolugo terms and conditions under which the booking is made.
|
|
201
|
+
* @type {string}
|
|
202
|
+
* @memberof Booking
|
|
203
|
+
*/
|
|
204
|
+
terms: string
|
|
205
|
+
/**
|
|
206
|
+
* This is the token to pass as URL params to [Cancel Booking endpoint](/v1/documentation#operation/deleteV1BookingsId) in order to perform a cancel request on the booking. If you want to cancel a booking, you should use this token instead of the booking id.
|
|
207
|
+
*
|
|
208
|
+
* ⚠️ For security reasons, this token is unique and once generated, it is valid during a period of 10 minutes.
|
|
209
|
+
*
|
|
210
|
+
* In order to get a fresh valid token you need to call **[Retrieve Booking endpoint](/v1/documentation#operation/getV1BookingsId)**.
|
|
211
|
+
* @type {string}
|
|
212
|
+
* @memberof Booking
|
|
213
|
+
*/
|
|
214
|
+
token?: string | null
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
export enum BookingApiPayLaterEnum {
|
|
218
|
+
Disabled = 'DISABLED',
|
|
219
|
+
Enabled = 'ENABLED',
|
|
220
|
+
Forced = 'FORCED',
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
type BookingApiPayLater = `${BookingApiPayLaterEnum}`
|
|
224
|
+
|
|
225
|
+
export enum BookingStatusEnum {
|
|
226
|
+
Cx = 'bkg-cx',
|
|
227
|
+
Cf = 'bkg-cf',
|
|
228
|
+
Created = 'bkg-created',
|
|
229
|
+
Af = 'bkg-af',
|
|
230
|
+
Ip = 'bkg-ip',
|
|
231
|
+
Pc = 'bkg-pc',
|
|
232
|
+
Pp = 'bkg-pp',
|
|
233
|
+
Qr = 'bkg-qr',
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
type BookingStatus = `${BookingStatusEnum}`
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface CancellationPolicy {
|
|
2
|
+
/**
|
|
3
|
+
* The start date and time of the cancellation policy, given in the hotel timezone.
|
|
4
|
+
* @type {string}
|
|
5
|
+
* @memberof CancellationPolicyApi
|
|
6
|
+
*/
|
|
7
|
+
dateFrom: string
|
|
8
|
+
/**
|
|
9
|
+
* The end date and time of the cancellation policy, given in the hotel timezone.
|
|
10
|
+
* @type {string}
|
|
11
|
+
* @memberof CancellationPolicyApi
|
|
12
|
+
*/
|
|
13
|
+
dateTo: string
|
|
14
|
+
/**
|
|
15
|
+
* The penalty percentage that is due in case of cancellation during the **date_from** to **date_to** period range.
|
|
16
|
+
* @type {number}
|
|
17
|
+
* @memberof CancellationPolicyApi
|
|
18
|
+
*/
|
|
19
|
+
penaltyPercentage: number
|
|
20
|
+
}
|