sm-types 1.8.8 → 1.9.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.
@@ -1,207 +1,851 @@
1
- import * as SharedTypes from "./shared";
2
- export * from "./shared";
3
- export interface IHeadersDto {
4
- "x-azul-username": string;
5
- "x-azul-password": string;
6
- [key: string]: string;
7
- }
8
- export type ILogonResponse = {
9
- secureToken: string;
10
- sessionId: number;
11
- roleCode: string;
12
- };
13
- export interface IPaxStatusRequestDto {
14
- state: SharedTypes.IMessageStateDto;
15
- type: string;
1
+ export interface IAzulCredentials {
2
+ username: string;
3
+ password: string;
4
+ baseUrl: string;
5
+ subscriptionKey: string;
6
+ }
7
+ export interface INotification {
8
+ code: string;
9
+ message: string;
10
+ }
11
+ export interface IAuthenticationReponse {
12
+ data: {
13
+ token: string;
14
+ };
15
+ notifications: INotification[];
16
+ }
17
+ export interface IUserAuthenticateData {
18
+ username: string;
19
+ password: string;
20
+ }
21
+ export interface ISessionContext {
22
+ pointOfSale: {
23
+ code: string;
24
+ name: string;
25
+ currencyCode: string;
26
+ };
27
+ profile: string;
28
+ }
29
+ export interface IUserAuthenticateResponse {
30
+ data?: {
31
+ sessionContext: ISessionContext;
32
+ };
33
+ notifications: INotification[];
34
+ }
35
+ export declare enum BaggageAllowance {
36
+ All = "All",
37
+ WithBaggage = "WithBaggage",
38
+ NoBaggage = "NoBaggage"
39
+ }
40
+ export interface IAirSearchRequest {
41
+ passengers: Array<{
42
+ type: string;
43
+ count: number;
44
+ }>;
45
+ journeys: Array<{
46
+ origin: string;
47
+ destination: string;
48
+ departure: Date | string;
49
+ }>;
50
+ criteria: {
51
+ baggageAllowance: BaggageAllowance;
52
+ directFlightsOnly: boolean;
53
+ promotionCode: string;
54
+ };
55
+ flexibleDays?: {
56
+ behind: number;
57
+ ahead: number;
58
+ };
59
+ }
60
+ export interface IAzulOfferSegmentLeg {
61
+ designator: {
62
+ origin?: string;
63
+ departure: Date;
64
+ destination?: string;
65
+ arrival: Date;
66
+ };
67
+ }
68
+ export interface IAzulOfferSegment {
69
+ designator: {
70
+ origin?: string;
71
+ departure: string;
72
+ destination?: string;
73
+ arrival: string;
74
+ };
75
+ identifier: {
76
+ flightNumber?: string;
77
+ carrierCode?: string;
78
+ };
79
+ operatingIdentifier: {
80
+ flightNumber?: string;
81
+ carrierCode?: string;
82
+ };
83
+ international: boolean;
84
+ equipmentCode?: string;
85
+ duration: {
86
+ days: number;
87
+ hours: number;
88
+ minutes: number;
89
+ };
90
+ connectionTime: {
91
+ days: number;
92
+ hours: number;
93
+ minutes: number;
94
+ };
95
+ legs?: IAzulOfferSegmentLeg[];
16
96
  }
17
- export interface IItineraryKeysDto {
18
- fareSellKey: string;
19
- journeySellKey: string;
97
+ export interface IAzulOfferList {
98
+ departure: Date;
99
+ offersAvailableByMarket?: Array<{
100
+ key?: string;
101
+ value?: IAzulOfferJourney[];
102
+ }>;
20
103
  }
21
- export interface ISellByKeysDto {
104
+ export interface IAzulOfferJourney {
105
+ key?: string;
106
+ stops: {
107
+ stopover: number;
108
+ connection: number;
109
+ };
110
+ designator: {
111
+ origin?: string;
112
+ departure: string;
113
+ destination?: string;
114
+ arrival: string;
115
+ };
116
+ duration: {
117
+ days: number;
118
+ hours: number;
119
+ minutes: number;
120
+ };
121
+ fares?: Array<{
122
+ key?: string;
123
+ available: number;
124
+ }>;
125
+ segments?: IAzulOfferSegment[];
126
+ }
127
+ export interface IAzulFareDetails {
128
+ key?: string;
129
+ value: {
130
+ productClass?: string;
131
+ classOfService?: string;
132
+ fareBasis?: string;
133
+ passengerFares?: IAirSearchPassengerFare[];
134
+ };
135
+ }
136
+ export interface IAirSearchPassengerFare {
137
+ passengerType?: string;
138
+ count: number;
139
+ total: number;
140
+ charges?: IAirSearchPassengerFareCharge[];
141
+ }
142
+ export interface IAirSearchPassengerFareCharge {
143
+ amount: number;
144
+ type: 'Fare' | 'TaxSum' | 'duFee';
145
+ currencyCode?: string;
146
+ }
147
+ export interface IAirSearchResult {
148
+ organizationCode: string;
22
149
  currencyCode: string;
23
- totalCost: number;
24
- balanceDue: number;
25
- paxCount: number;
26
- segmentCount: number;
27
- passiveSegmentCount: number;
28
- priceStatus: SharedTypes.IPriceStatusDto;
29
- fareChanges: SharedTypes.IFareChangeDto[];
30
- passengerChanges: SharedTypes.IPassengerDto[];
31
- sourcePointOfSale: SharedTypes.IPointOfSaleDto;
32
- journeyServices: SharedTypes.IJourneyServiceDto[];
33
- }
34
- export interface IGetAvailabilityRequestDto {
35
- routes: SharedTypes.IRouteRequestDto[];
36
- promoCode: string;
37
- paxInfo: SharedTypes.IPaxInfoRequestDto;
38
- }
39
- export interface IGetPriceItineraryRequestDto {
40
- itinerariesKeys: IItineraryKeysDto[];
41
- paxStatus: IPaxStatusRequestDto[];
42
- }
43
- export interface IGetTariffedOffersRequestDto {
44
- routes: SharedTypes.IRouteRequestDto[];
45
- promoCode: string;
46
- paxInfo: SharedTypes.IPaxInfoRequestDto;
47
- }
48
- export interface ISellByKeysRequestDto {
49
- }
50
- export interface IContactInfoRequestDto {
51
- firstName: string;
52
- surname: string;
53
- email: string;
54
- phone: IPhoneRequestDto;
55
- companyName: string;
56
- address: IAddressRequestDto;
150
+ offers?: IAzulOfferList[];
151
+ fareDetails?: IAzulFareDetails[];
152
+ flexibleDays: {
153
+ journeys?: Array<{
154
+ designator: {
155
+ origin?: string;
156
+ destination?: string;
157
+ };
158
+ fares?: Array<{
159
+ departure: Date;
160
+ totalAmount?: number;
161
+ }>;
162
+ }>;
163
+ };
164
+ organizationFeeRules: IAirSearchFeeRules;
57
165
  }
58
- export interface IPhoneRequestDto {
59
- ddi: string;
60
- number: string;
166
+ export declare enum AirSearchFeeRuleTypeEnum {
167
+ DUFEE = "DUFEE",
168
+ Unavailable = "Unavailable"
169
+ }
170
+ export interface IAirSearchFeeRules {
171
+ type: AirSearchFeeRuleTypeEnum;
172
+ overridable: boolean;
173
+ percentage?: number;
174
+ minimal?: number;
175
+ currencyCode?: string;
61
176
  }
62
- export interface IAddressRequestDto {
63
- street: string;
177
+ export interface IAirSearchResponse {
178
+ errors?: any;
179
+ type?: string;
180
+ title?: string;
181
+ status?: number;
182
+ traceId?: string;
183
+ data?: {
184
+ airResult: IAirSearchResult;
185
+ };
186
+ notifications: INotification[];
187
+ }
188
+ export interface IQuoteOffer {
189
+ journeyKey: string;
190
+ fareKey: string;
191
+ }
192
+ export interface IQuotePassengers {
193
+ type: string;
194
+ count: number;
195
+ }
196
+ export interface IQuoteRequest {
197
+ offers: IQuoteOffer[];
198
+ passengers: IQuotePassengers;
199
+ promotionCode?: string;
200
+ }
201
+ export interface IQuoteOrderJourneySegmentLeg {
202
+ designator: {
203
+ origin?: string;
204
+ departure: Date;
205
+ destination?: string;
206
+ arrival: Date;
207
+ };
208
+ }
209
+ export interface IQuoteOrderJourneySegment {
210
+ designator: {
211
+ origin?: string;
212
+ departure: Date;
213
+ destination?: string;
214
+ arrival: Date;
215
+ };
216
+ identifier: {
217
+ flightNumber?: string;
218
+ carrierCode?: string;
219
+ };
220
+ operatingIdentifier: {
221
+ flightNumber?: string;
222
+ carrierCode?: string;
223
+ };
224
+ international: boolean;
225
+ equipmentCode?: string;
226
+ duration: {
227
+ days: number;
228
+ hours: number;
229
+ minutes: number;
230
+ };
231
+ connectionTime: {
232
+ days: number;
233
+ hours: number;
234
+ minutes: number;
235
+ };
236
+ legs?: IQuoteOrderJourneySegmentLeg[];
237
+ }
238
+ export declare enum FareChargeTypeEnum {
239
+ Fare = "Fare",
240
+ Tax = "Tax"
241
+ }
242
+ export interface IQuoteOrderJourney {
243
+ stops: {
244
+ stopover: number;
245
+ connection: number;
246
+ };
247
+ key?: string;
248
+ designator: {
249
+ origin?: string;
250
+ departure: Date;
251
+ destination?: string;
252
+ arrival: Date;
253
+ };
254
+ duration: {
255
+ days: number;
256
+ hours: number;
257
+ minutes: number;
258
+ };
259
+ fares: {
260
+ key?: string;
261
+ productlass?: string;
262
+ classOfService?: string;
263
+ fareBasis?: string;
264
+ passengerFares?: Array<{
265
+ passengerType?: string;
266
+ total: number;
267
+ charges?: Array<{
268
+ amount: number;
269
+ code?: string;
270
+ type: FareChargeTypeEnum;
271
+ currencyCode?: string;
272
+ }>;
273
+ }>;
274
+ };
275
+ segments?: IQuoteOrderJourneySegment[];
276
+ }
277
+ export interface IQuoteOrderPassengers {
278
+ key?: string;
279
+ type?: string;
280
+ fees?: Array<{
281
+ code?: string;
282
+ flightReference?: string;
283
+ amount: number;
284
+ ssrCode?: string;
285
+ currencyCode?: string;
286
+ }>;
287
+ infant: {
288
+ fees?: Array<{
289
+ code?: string;
290
+ flightReference?: string;
291
+ amount: number;
292
+ ssrCode?: string;
293
+ currencyCode?: string;
294
+ }>;
295
+ };
296
+ }
297
+ export interface IQuoteOrderResult {
298
+ organizationCode?: string;
299
+ totals: {
300
+ amount: number;
301
+ };
302
+ journeys?: IQuoteOrderJourney[];
303
+ passengers?: IQuoteOrderPassengers[];
304
+ }
305
+ export interface IQuoteResponse {
306
+ data?: {
307
+ order: IQuoteOrderResult;
308
+ };
309
+ notifications: INotification[];
310
+ }
311
+ export interface IReservationOffer {
312
+ journeyKey: string;
313
+ fareKey: string;
314
+ }
315
+ export declare enum DocumentType {
316
+ CPF = "CPF",
317
+ Passport = "Passport",
318
+ RNE = "RNE",
319
+ RG = "RG"
320
+ }
321
+ export declare enum GenderType {
322
+ Male = "Male",
323
+ Female = "Female"
324
+ }
325
+ export declare enum PassengerTitle {
326
+ MS = "MS",
327
+ MR = "MR",
328
+ MRS = "MRS"
329
+ }
330
+ export declare enum PassengerSuffix {
331
+ FO = "FO",
332
+ JR = "JR",
333
+ NT = "NT",
334
+ SOBR = "SOBR"
335
+ }
336
+ export interface IPassengerName {
337
+ first: string;
338
+ middle?: string;
339
+ last: string;
340
+ title?: PassengerTitle;
341
+ suffix?: PassengerSuffix;
342
+ }
343
+ export interface IReservationPassengerDocument {
344
+ type: DocumentType;
64
345
  number: string;
65
- complement: string;
66
- postalCode: string;
67
- city: string;
68
- stateCode: string;
69
- countryCode: string;
70
- }
71
- export interface IPassengerInfoRequestDto {
72
- firstName: string;
73
- surname: string;
74
- birthDate: Date | string;
75
- sex: SharedTypes.IGenderDto;
346
+ birthCountry: string;
347
+ issuingCountry: string;
348
+ issuedDate?: Date | string;
349
+ expirationDate?: Date | string;
350
+ }
351
+ export interface IReservationPassenger {
352
+ customerProgram: {
353
+ number?: string;
354
+ };
76
355
  nationality: string;
77
- residenceCountry: string;
78
- cpf: {
79
- firstName: string;
80
- surname: string;
81
- number: string;
356
+ gender: GenderType;
357
+ dateOfBirth: Date | string;
358
+ phone: string;
359
+ email: string;
360
+ type: 'ADT' | 'CHD';
361
+ name: IPassengerName;
362
+ travelDocuments: IReservationPassengerDocument[];
363
+ infant?: {
364
+ nationality: string;
365
+ dateOfBirth: Date | string;
366
+ gender: GenderType;
367
+ name: IPassengerName;
368
+ travelDocuments: IReservationPassengerDocument[];
369
+ };
370
+ iropContact?: {
371
+ refused: boolean;
372
+ mobile: string;
373
+ email: string;
374
+ };
375
+ }
376
+ export declare enum PhoneType {
377
+ Other = "Other",
378
+ Home = "Home",
379
+ Work = "Work",
380
+ Mobile = "Mobile",
381
+ Fax = "Fax"
382
+ }
383
+ export interface IReservationRequest {
384
+ offers: IReservationOffer[];
385
+ organizationFeeOverride?: {
386
+ amount: number;
387
+ };
388
+ passengers: IReservationPassenger[];
389
+ contact?: {
390
+ address: {
391
+ lineOne: string;
392
+ lineTwo?: string;
393
+ lineThree?: string;
394
+ country?: string;
395
+ provinceState?: string;
396
+ city?: string;
397
+ postalCode?: string;
398
+ };
399
+ email?: string;
400
+ companyName?: string;
401
+ name: IPassengerName;
402
+ phones: Array<{
403
+ number: string;
404
+ type: PhoneType;
405
+ }>;
406
+ };
407
+ promotionCode?: string;
408
+ liableRecordLocator?: string;
409
+ }
410
+ export interface IReservationOrderResult {
411
+ currencyCode?: string;
412
+ organizationCode?: string;
413
+ totals: {
414
+ amount: number;
415
+ balanceDue: number;
416
+ };
417
+ }
418
+ export interface IReservationResponse {
419
+ data?: {
420
+ order: IReservationOrderResult;
421
+ };
422
+ notifications: INotification[];
423
+ }
424
+ export interface ICheckoutReservationResponse {
425
+ data?: {
426
+ recordLocator?: string;
427
+ };
428
+ notifications: INotification[];
429
+ }
430
+ export declare enum ReserveStatus {
431
+ Default = "Default",
432
+ Hold = "Hold",
433
+ Confirmed = "Confirmed",
434
+ Closed = "Closed",
435
+ HoldCanceled = "HoldCanceled",
436
+ PendingArchive = "PendingArchive",
437
+ Archived = "Archived"
438
+ }
439
+ export declare enum LiftStatus {
440
+ Default = "Default",
441
+ CheckedIn = "CheckedIn",
442
+ Boarded = "Boarded",
443
+ NoShow = "NoShow"
444
+ }
445
+ export declare enum PaymentStatus {
446
+ New = "New",
447
+ Received = "Received",
448
+ Pending = "Pending",
449
+ Approved = "Approved",
450
+ Declined = "Declined",
451
+ Unknown = "Unknown",
452
+ PendingCustomerAction = "PendingCustomerAction"
453
+ }
454
+ export interface IReserveDetailsJourneySegment {
455
+ key?: string;
456
+ designator: {
457
+ origin?: string;
458
+ departure?: Date;
459
+ destination?: string;
460
+ arrival?: Date;
461
+ };
462
+ identifier: {
463
+ flightNumber?: string;
464
+ carrierCode?: string;
465
+ };
466
+ operatingIdentifier: {
467
+ flightNumber?: string;
468
+ carrierCode?: string;
82
469
  };
83
- passport: {
84
- firstName: string;
85
- surname: string;
86
- number: string;
87
- issuingCountry: string;
88
- expirationDate: Date | string;
470
+ passengersSegment?: Array<{
471
+ passengerKey?: string;
472
+ liftStatus: LiftStatus;
473
+ seat: {
474
+ unitKey?: string;
475
+ unitDesignator?: string;
476
+ amount: number;
477
+ currencyCode?: string;
478
+ };
479
+ services?: Array<{
480
+ code?: string;
481
+ amount: number;
482
+ }>;
483
+ assistances?: Array<{
484
+ code?: string;
485
+ }>;
486
+ }>;
487
+ international: boolean;
488
+ equipmentCode?: string;
489
+ duration: {
490
+ days: number;
491
+ hours: number;
492
+ minutes: number;
89
493
  };
494
+ connectionTime: {
495
+ days: number;
496
+ hours: number;
497
+ minutes: number;
498
+ };
499
+ legs?: Array<{
500
+ designator: {
501
+ origin?: string;
502
+ departure?: Date;
503
+ destination?: string;
504
+ arrival?: Date;
505
+ };
506
+ }>;
90
507
  }
91
- export interface IReserveDataDto {
92
- contactInfo: IContactInfoRequestDto;
93
- passengersInfo: IPassengerInfoRequestDto[];
508
+ export interface IReserveDetailsJourney {
509
+ key?: string;
510
+ stops: {
511
+ stopover: number;
512
+ connection: number;
513
+ };
514
+ designator: {
515
+ origin?: string;
516
+ departure?: Date;
517
+ destination?: string;
518
+ arrival?: Date;
519
+ };
520
+ duration: {
521
+ days: number;
522
+ hours: number;
523
+ minutes: number;
524
+ };
525
+ fare: {
526
+ key?: string;
527
+ productClass?: string;
528
+ classOfService?: string;
529
+ fareBasis?: string;
530
+ passengerFares?: Array<{
531
+ passengerType?: string;
532
+ total: number;
533
+ charges?: Array<{
534
+ amount: number;
535
+ code?: string;
536
+ type: 'Fare' | 'Tax';
537
+ currencyCode?: string;
538
+ }>;
539
+ }>;
540
+ };
541
+ segments?: IReserveDetailsJourneySegment[];
542
+ passengersJourney?: Array<{
543
+ passengerKey?: string;
544
+ baggage: {
545
+ count: number;
546
+ amount: number;
547
+ };
548
+ }>;
94
549
  }
95
- export interface IReserveRequestDto {
96
- offer: SharedTypes.IAirlinesOffer;
97
- reserveData: IReserveDataDto;
550
+ export declare enum ReserveDetailsGenderType {
551
+ XX = "XX",
552
+ Male = "Male",
553
+ Female = "Female"
98
554
  }
99
- export interface ICheckReserveRequestDto {
100
- offer: SharedTypes.IAirlinesOffer;
555
+ export interface IReserveDetailsTravelDocument {
556
+ type?: string;
557
+ number?: string;
558
+ birthCountry?: string;
559
+ issuingCountry?: string;
560
+ issuedDate?: Date;
561
+ expirationDate?: Date;
101
562
  }
102
- export interface IBuyOfferRequestDto {
103
- offer: SharedTypes.IAirlinesOffer;
104
- paymentDataHash: string;
105
- passengersInfo: IPassengerInfoRequestDto[];
563
+ export interface IReserveDetailsPassenger {
564
+ key?: string;
565
+ type?: string;
566
+ customerProgram: {
567
+ number?: string;
568
+ level?: string;
569
+ };
570
+ nationality?: string;
571
+ gender?: ReserveDetailsGenderType;
572
+ dateOfBirth?: Date;
573
+ phone?: string;
574
+ email?: string;
575
+ name: {
576
+ first?: string;
577
+ middle?: string;
578
+ last?: string;
579
+ title?: string;
580
+ suffix?: string;
581
+ };
582
+ travelDocuments?: IReserveDetailsTravelDocument[];
583
+ fees?: Array<{
584
+ code?: string;
585
+ flightReference?: string;
586
+ amount: number;
587
+ ssrCode?: string;
588
+ currencyCode?: string;
589
+ }>;
590
+ infant: {
591
+ nationality?: string;
592
+ gender: ReserveDetailsGenderType;
593
+ dateOfBirth: Date;
594
+ name: {
595
+ first?: string;
596
+ middle?: string;
597
+ last?: string;
598
+ title?: string;
599
+ suffix?: string;
600
+ };
601
+ travelDocuments?: IReserveDetailsTravelDocument[];
602
+ fees?: Array<{
603
+ code?: string;
604
+ flightReference?: string;
605
+ amount: number;
606
+ ssrCode?: string;
607
+ currencyCode?: string;
608
+ }>;
609
+ };
610
+ iropContact: {
611
+ refused: boolean;
612
+ mobile?: string;
613
+ email?: string;
614
+ };
615
+ }
616
+ export interface IReserveDetailsContact {
617
+ type?: string;
618
+ address: {
619
+ lineOne?: string;
620
+ lineTwo?: string;
621
+ lineThree?: string;
622
+ countryCode?: string;
623
+ provinceState?: string;
624
+ city?: string;
625
+ postalCode?: string;
626
+ };
627
+ email?: string;
628
+ companyName?: string;
629
+ name: {
630
+ first?: string;
631
+ middle?: string;
632
+ last?: string;
633
+ title?: string;
634
+ suffix?: string;
635
+ };
636
+ phones?: Array<{
637
+ type: PhoneType;
638
+ number?: string;
639
+ }>;
106
640
  }
107
- export interface ICancelOfferRequestDto {
108
- recordLocator: string;
641
+ export interface IReserveDetailsPayment {
642
+ key?: string;
643
+ methodCode?: string;
644
+ approval?: Date;
645
+ account?: string;
646
+ installments: number;
647
+ amount: number;
648
+ currencyCode?: string;
649
+ authorizationCode?: string;
650
+ status: PaymentStatus;
651
+ created?: Date;
652
+ createdBy?: string;
109
653
  }
110
- export type IGetAvailabilityResponseDto = {
111
- generalInfo: SharedTypes.IGeneralInfoDto;
112
- allJourneysData: SharedTypes.IJourneysPerStepDto[];
113
- };
114
- export interface IGetTariffedOfferResponseDto extends SharedTypes.ITariffedOfferDto {
654
+ export interface IReserveDetailsOrderResult {
655
+ key?: string;
656
+ recordLocator?: string;
657
+ parentRecordLocator?: string;
658
+ currencyCode?: string;
659
+ promotionCode?: string;
660
+ status: ReserveStatus;
661
+ hold?: Date;
662
+ organizationCode?: string;
663
+ created?: Date;
664
+ booked?: Date;
665
+ createdBy?: string;
666
+ totals: {
667
+ balanceDue: number;
668
+ amount: number;
669
+ };
670
+ journeys?: IReserveDetailsJourney[];
671
+ passengers?: IReserveDetailsPassenger[];
672
+ contacts?: IReserveDetailsContact[];
673
+ payments?: IReserveDetailsPayment[];
115
674
  }
116
- export type IGetTariffedOffersResponseDto = IGetTariffedOfferResponseDto[];
117
- export interface IGetPriceItineraryResponseDto extends SharedTypes.ITariffedOfferDto {
675
+ export interface IReserveDetailsReponse {
676
+ data?: {
677
+ order: IReserveDetailsOrderResult;
678
+ };
679
+ notifications: INotification[];
118
680
  }
119
- export interface ICommitResponseDto {
681
+ export declare enum RefundType {
682
+ Credit = "Credit"
683
+ }
684
+ export declare enum MethodCode {
685
+ AG = "AG",
686
+ CF = "CF",
687
+ AX = "AX",
688
+ VI = "VI",
689
+ MC = "MC",
690
+ DI = "DI",
691
+ HP = "HP",
692
+ EL = "EL",
693
+ TP = "TP"
694
+ }
695
+ export interface IPaymentRequest {
696
+ methodCode: MethodCode;
697
+ amount: number;
698
+ installments: number;
699
+ account?: string;
700
+ expirationMonth?: number;
701
+ expirationYear?: number;
702
+ holderName?: string;
703
+ verificationCode?: string;
704
+ govId?: string;
705
+ }
706
+ export interface IPaymentResponseResult {
707
+ currencyCode?: string;
708
+ totals: {
709
+ amount: number;
710
+ balanceDue: number;
711
+ discountedAmount: number;
712
+ };
713
+ }
714
+ export interface IPaymentResponse {
715
+ data?: IPaymentResponseResult;
716
+ notifications: INotification[];
717
+ }
718
+ export interface IAddJourneyRequest {
719
+ journeys: Array<{
720
+ journeyKey: string;
721
+ fareKey: string;
722
+ }>;
723
+ }
724
+ export declare enum CompartmentUnitType {
725
+ Seat = "Seat",
726
+ Lavatory = "Lavatory",
727
+ Galley = "Galley"
728
+ }
729
+ export declare enum CompartmentUnitAvailable {
730
+ Blocked = "Blocked",
731
+ Taken = "Taken",
732
+ Open = "Open"
733
+ }
734
+ export declare enum CompartmentUnitLocation {
735
+ Window = "Window",
736
+ Aisle = "Aisle",
737
+ Middle = "Middle"
738
+ }
739
+ export interface ICompartmentUnit {
740
+ key?: string;
741
+ type: CompartmentUnitType;
742
+ subType?: string;
743
+ designator?: string;
744
+ group?: number;
745
+ dimentions: {
746
+ width: number;
747
+ height: number;
748
+ x: number;
749
+ y: number;
750
+ };
751
+ available: CompartmentUnitAvailable;
752
+ location: CompartmentUnitLocation;
753
+ priority?: boolean;
754
+ restrictRecline?: boolean;
755
+ }
756
+ export declare enum CompartmentName {
757
+ Economy = "Economy",
758
+ Business = "Business"
759
+ }
760
+ export interface ICompartment {
761
+ availableUnits: number;
762
+ name: CompartmentName;
763
+ length: number;
764
+ width: number;
765
+ sequence: number;
766
+ orientation?: string;
767
+ wing: {
768
+ yBegin: number;
769
+ yEnd: number;
770
+ };
771
+ columns?: Array<{
772
+ text?: string;
773
+ width: number;
774
+ x: number;
775
+ }>;
776
+ units?: ICompartmentUnit[];
777
+ }
778
+ export interface ISeatMap {
779
+ designation: {
780
+ origin?: string;
781
+ destination?: string;
782
+ };
783
+ equipmentCode?: string;
784
+ availableUnits: number;
785
+ currencyCode?: string;
786
+ compartments?: ICompartment[];
787
+ }
788
+ export interface ISeatsResult {
789
+ seatMap: ISeatMap;
790
+ passengerFees?: Array<{
791
+ passengerKey?: string;
792
+ seatGroups?: Array<{
793
+ group: number;
794
+ amount: number;
795
+ }>;
796
+ }>;
797
+ }
798
+ export interface ISeatsResponse {
799
+ data?: ISeatsResult;
800
+ notifications: INotification[];
801
+ }
802
+ export interface IFaresResponse {
803
+ data: IFareResponseData;
804
+ notifications: any[];
805
+ }
806
+ export interface IFareResponseData {
807
+ fares: IAzulFareInfo[];
808
+ }
809
+ export interface IAzulFareInfo {
810
+ productClass: string;
811
+ name: string;
812
+ cabin: string;
813
+ charges: ICharge[];
814
+ bags: IBag[];
815
+ economyXtraSeat?: boolean;
816
+ }
817
+ export interface ICharge {
818
+ type: string;
819
+ amountType: string;
820
+ amount: number;
821
+ currencyCode?: string;
822
+ }
823
+ export interface IBag {
824
+ program: IProgram;
825
+ items: IItem[];
826
+ }
827
+ export interface IProgram {
828
+ level: string;
829
+ name: string;
830
+ }
831
+ export interface IItem {
832
+ type: string;
833
+ included: number;
834
+ weight: number;
835
+ }
836
+ export interface ICalculateResponse {
837
+ data: ICalculateData;
838
+ notifications: any[];
839
+ }
840
+ export interface ICalculateData {
841
+ order: ICalculateOrder;
842
+ }
843
+ export interface ICalculateOrder {
120
844
  currencyCode: string;
121
- totalCost: number;
122
- balanceDue: number;
123
- paxCount: number;
124
- segmentCount: number;
125
- passiveSegmentCount: number;
126
- priceStatus: SharedTypes.IPriceStatusDto;
127
- fareChanges: SharedTypes.IFareChangeDto[];
128
- passengerChanges: SharedTypes.IPassengerDto[];
129
- otherServiceInformations: SharedTypes.IOtherServiceInformationDto[];
130
- bookingID: string;
131
- recordLocator: string;
132
- pointOfSale: SharedTypes.IPointOfSaleDto;
133
- bookingDate: Date;
134
- createdDate: Date;
135
- receivedBy: string;
136
- receivedByReference: string;
137
- modifiedDate: Date;
138
- bookingStatus: SharedTypes.IBookingStatusDto;
139
- holdDateTime: Date;
140
- soldJourneyServices: SharedTypes.IJourneyServiceDto[];
141
- cancelledJourneyServices: SharedTypes.IJourneyServiceDto[];
142
- bookingQueueInfoList: SharedTypes.IBookingQueueInfoDto[];
143
- changedRecordLocators: SharedTypes.IRecordLocatorDto[];
144
- newPayments: SharedTypes.IPaymentDto[];
145
- serverAddedComments: SharedTypes.IBookingCommentDto[];
146
- SSRChanges: SharedTypes.ISSRResponseDto[];
147
- seatChanges: SharedTypes.ISeatResponseDto[];
148
- segmentChanges: SharedTypes.ISegmentChangeDto[];
149
- comments: SharedTypes.IBookingCommentDto[];
150
- bookingComponent: SharedTypes.IBookingComponent[];
151
- passengerSegmentChange: SharedTypes.IPassengerSegmentDto[];
152
- }
153
- export interface IAddPaymentToBookingDto {
154
- currencyCode: SharedTypes.ICurrencyOptionsDto;
155
- totalCost: number;
156
- balanceDue: number;
157
- paxCount: number;
158
- segmentCount: number;
159
- passiveSegmentCount: number;
160
- priceStatus: SharedTypes.IPriceStatusDto;
161
- fareChanges: SharedTypes.IFareChangeDto[];
162
- passengerChanges: SharedTypes.IPassengerDto[];
163
- pointOfSale: SharedTypes.IPointOfSaleDto;
164
- sourcePointOfSale: SharedTypes.IPointOfSaleDto;
165
- validationErrors: SharedTypes.IValidationErrorDto[];
166
- newPayments: SharedTypes.IPaymentDto[];
167
- }
168
- export interface ISellResponseDto extends ICommitResponseDto {
169
- }
170
- export interface IReserveOfferResponseDto {
171
- bookedJourneys: SharedTypes.IJourneyServiceDto[];
172
- bookingInfo: ICommitResponseDto;
173
- }
174
- export interface ICheckReserveResponseDto {
175
- error?: boolean;
176
- message?: string;
177
- availability: boolean;
178
- currentPrice: number;
179
- selectedPrice: number;
180
- priceDetails: SharedTypes.IPriceDetailsDto;
181
- isSamePrice: boolean;
182
- }
183
- export interface IBuyOfferResponseDto {
184
- recordLocator: string;
185
- bookingCode: string;
186
- price: number;
187
- emittedAt: Date;
188
- }
189
- export interface ICancelOfferResponseDto {
190
- bookingStatus: SharedTypes.IBookingStatusDto;
191
- recordLocator: string;
192
- costToCancel: number;
193
- refundedValue: number;
194
- }
195
- export interface ICancelOfferDto {
196
- currencyCode: SharedTypes.ICurrencyOptionsDto;
197
- totalCost: number;
845
+ organizationCode: string;
846
+ totals: Totals;
847
+ }
848
+ export interface Totals {
198
849
  balanceDue: number;
199
- paxCount: number;
200
- segmentCount: number;
201
- passiveSegmentCount: number;
202
- priceStatus: SharedTypes.IPriceStatusDto;
203
- fareChanges: SharedTypes.IFareChangeDto[];
204
- sourcePointOfSale: SharedTypes.IPointOfSaleDto;
205
- passengerChanges: SharedTypes.IPassengerDto[];
206
- journeyServices: SharedTypes.IJourneyServiceDto[];
850
+ amount: number;
207
851
  }