sabre-client 0.6.0 → 0.7.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.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { e as RetryOptions, S as SabreError, f as SabreRawResponseCallback, g as SabreRawRequestCallback, h as SabreWarning, i as SabreBusinessError, O as OtaAirLowFareSearchRq, G as GroupedItineraryResponse, B as BargainFinderMaxRequest, I as ItineraryGroup, j as Itinerary, k as RequestOptions, l as BargainFinderMaxResponse, Q as QueueRef, m as QueueRange, n as QueueActivityRequest, o as QueueActivityOptions, p as QueueActivityResponse, q as ReservationHistoryOptions, r as ReservationHistoryResponse } from './reservation-history-C6giSdFd.js';
2
- export { s as BaggageAllowanceDesc, t as BaggageInformation, C as CurrencyConversion, F as Fare, u as FareComponent, v as FareComponentDesc, w as FareComponentDescSegment, x as FareComponentSegment, y as FareComponentSegmentDetail, z as FareMessage, A as ItineraryMessage, L as Leg, D as LegDesc, E as LegDescription, H as LegSchedule, J as LegScheduleRef, K as LowFareSearchFlight, M as LowFareSearchLocation, N as LowFareSearchOriginDestination, P as LowFareSearchPassengerTypeQuantity, T as LowFareSearchRequestorId, U as LowFareSearchSource, V as LowFareSearchTpaExtensions, W as LowFareSearchTravelPreferences, X as LowFareSearchTravelerInfoSummary, Y as MESSAGE_QUEUE, Z as ObFeeDesc, _ as PassengerInfo, $ as PassengerTotalFare, a0 as PricingInformation, a1 as QueueActivity, a as QueueActivityCounters, a2 as Ref, d as ReservationHistoryAccounting, b as ReservationHistoryFlightSegment, c as ReservationHistoryText, R as ReservationHistoryTransaction, a3 as SabreBusinessErrorOptions, a4 as SabreErrorOptions, a5 as SabreGatewayError, a6 as SabreGatewayErrorOptions, a7 as SabreOrchestrationError, a8 as SabreOrchestrationErrorOptions, a9 as SabreProtocol, aa as SabreRawRequest, ab as SabreRawResponse, ac as SabreServiceErrorOptions, ad as SabreSessionError, ae as SabreSessionErrorKind, af as SabreSessionErrorOptions, ag as ScheduleCarrier, ah as ScheduleDesc, ai as ScheduleEndpoint, aj as ScheduleEquipment, ak as TaxDesc, al as TaxSummaryDesc, am as TotalFare, an as ValidatingCarrierDesc, ao as isMessageQueue } from './reservation-history-C6giSdFd.js';
1
+ import { e as RetryOptions, f as SabreError, g as SabreRawResponseCallback, h as SabreRawRequestCallback, i as SabreWarning, j as SabreBusinessError, O as OtaAirLowFareSearchRq, G as GroupedItineraryResponse, B as BargainFinderMaxRequest, I as ItineraryGroup, k as Itinerary, l as RequestOptions, m as BargainFinderMaxResponse, Q as QueueRef, n as QueueRange, o as QueueActivityRequest, p as QueueActivityOptions, q as QueueActivityResponse, r as DailySalesSummaryRequest, s as DailySalesSummaryOptions, t as DailySalesSummaryResult, u as ReservationHistoryOptions, v as ReservationHistoryResponse } from './reservation-history-BRKQBHsj.js';
2
+ export { w as BaggageAllowanceDesc, x as BaggageInformation, C as CurrencyConversion, y as DailySalesDocumentType, z as DailySalesPaymentDetail, A as DailySalesPayments, E as DailySalesSettlementType, F as DailySalesTotal, D as DailySalesTransaction, H as Fare, J as FareComponent, K as FareComponentDesc, L as FareComponentDescSegment, M as FareComponentSegment, N as FareComponentSegmentDetail, P as FareMessage, T as ItineraryMessage, U as Leg, V as LegDesc, W as LegDescription, X as LegSchedule, Y as LegScheduleRef, Z as LowFareSearchFlight, _ as LowFareSearchLocation, $ as LowFareSearchOriginDestination, a0 as LowFareSearchPassengerTypeQuantity, a1 as LowFareSearchRequestorId, a2 as LowFareSearchSource, a3 as LowFareSearchTpaExtensions, a4 as LowFareSearchTravelPreferences, a5 as LowFareSearchTravelerInfoSummary, a6 as MESSAGE_QUEUE, a7 as ObFeeDesc, a8 as PassengerInfo, a9 as PassengerTotalFare, aa as PricingInformation, ab as QueueActivity, a as QueueActivityCounters, ac as Ref, d as ReservationHistoryAccounting, b as ReservationHistoryFlightSegment, c as ReservationHistoryText, R as ReservationHistoryTransaction, ad as SabreBusinessErrorOptions, ae as SabreErrorOptions, af as SabreGatewayError, ag as SabreGatewayErrorOptions, ah as SabreOrchestrationError, ai as SabreOrchestrationErrorOptions, aj as SabreProtocol, ak as SabreRawRequest, al as SabreRawResponse, am as SabreServiceErrorOptions, an as SabreSessionError, ao as SabreSessionErrorKind, ap as SabreSessionErrorOptions, aq as SabreUncertainOutcomeError, ar as SabreUncertainOutcomeErrorOptions, S as SabreUncertainOutcomeReason, as as SabreUncertainTicket, at as ScheduleCarrier, au as ScheduleDesc, av as ScheduleEndpoint, aw as ScheduleEquipment, ax as TaxDesc, ay as TaxSummaryDesc, az as TotalFare, aA as ValidatingCarrierDesc, aB as isMessageQueue } from './reservation-history-BRKQBHsj.js';
3
3
 
4
4
  /** Token ATK tal cual se guarda: tiempos absolutos, para que otro proceso sepa cuánto le queda. */
5
5
  interface StoredToken {
@@ -3433,16 +3433,266 @@ declare class BookingManagement {
3433
3433
  * Nunca se reintenta automáticamente. Lanza `SabreBusinessError` si algo falló o si Sabre
3434
3434
  * responde `NO_ITEMS_CANCELLED` (no se canceló nada), aunque llegue como aviso. Con
3435
3435
  * `END_TRANSACTION_PROBLEM` en `warnings`, la confirmación quedó pendiente: verifica con `get`.
3436
+ *
3437
+ * **Void** (`flightTicketOperation: 'VOID'`, ADR-031): anula los boletos y es **irreversible**.
3438
+ * Con `cancelAll` y `HALT_ON_ERROR`, una sola llamada anula y cancela la reserva; `voidedTickets`
3439
+ * trae los números anulados (CERT, 2026-11-13). Un fallo de red, un 5xx, un cuerpo ilegible, un
3440
+ * abort con el request ya mandado o `END_TRANSACTION_PROBLEM` lanzan `SabreUncertainOutcomeError`:
3441
+ * no se sabe si se anuló. Verifica con `sabre.tickets.verify` (un boleto anulado queda en `TV`) o
3442
+ * con `get` antes de reintentar. `VOID` sobre una reserva sin boletos lanza `NO_ITEMS_CANCELLED`
3443
+ * con `UNABLE_TO_VOID_TICKET` y **no cancela nada**: para una reserva sin emitir, cancela sin
3444
+ * `VOID`.
3436
3445
  */
3437
3446
  cancel(request: CancelBookingRequest, options?: CancelBookingOptions): Promise<CancelBookingResponse>;
3438
3447
  }
3439
3448
 
3449
+ /** `PriceQuoteHandlingMethodEnum` del spec v1.33. */
3450
+ type PriceQuoteHandlingMethod = 'Reprice' | 'Override' | 'Quit';
3451
+ /** `FulfillErrorPolicyEnum` del spec v1.33. Sabre usa `ALLOW_PARTIAL_FULFILLMENT` por defecto. */
3452
+ type FulfillErrorPolicy = 'ALLOW_PARTIAL_FULFILLMENT' | 'HALT_ON_INVALID_MINIMUM_CONNECTING_TIME_ERROR';
3453
+ /** `FormOfPaymentTypeEnum` del spec v1.33 (Fulfill admite un subconjunto según el contenido). */
3454
+ type FulfillFormOfPaymentType = 'PAYMENTCARD' | 'CASH' | 'CHECK' | 'MISCELLANEOUS' | 'INSTALLMENTS' | 'VIRTUAL_CARD' | 'AGENCY_NAME' | 'AGENCY_IATA' | 'CORPORATE' | 'COMPANY_NAME' | 'VOUCHER' | 'DOCKET' | 'GOVERNMENT_TRAVEL_REQUEST' | 'INVOICE';
3455
+ /** `FulfillFormOfPayment` del spec v1.33. Los campos de tarjeta y cuotas se envían tal cual. */
3456
+ interface FulfillFormOfPayment {
3457
+ type: FulfillFormOfPaymentType;
3458
+ cardTypeCode?: string;
3459
+ cardNumber?: string;
3460
+ cardSecurityCode?: string;
3461
+ /** `YYYY-MM`. */
3462
+ expiryDate?: string;
3463
+ extendedPayment?: number;
3464
+ miscellaneousCreditCode?: string;
3465
+ numberOfInstallments?: number;
3466
+ airlinePlanCode?: string;
3467
+ installmentAmount?: string;
3468
+ manualApprovalCode?: string;
3469
+ virtualCardCode?: string;
3470
+ [field: string]: unknown;
3471
+ }
3472
+ /** `PaymentMethod` del spec: índices desde 1 sobre `formsOfPayment`. */
3473
+ interface FulfillPayment {
3474
+ primaryFormOfPayment: number;
3475
+ secondaryFormOfPayment?: number;
3476
+ /** Importe sobre la segunda forma de pago (`^[0-9]+(\.[0-9]{1,3})?$`). */
3477
+ amountOnSecondFormOfPayment?: string;
3478
+ }
3479
+ /**
3480
+ * `FulfillQualifiers` del spec. La comisión va en `commissionAmount` **o** `commissionPercentage`,
3481
+ * nunca los dos. Un PCC puede exigirla: sin ella, Sabre responde `COMMISSION REQUIRED`
3482
+ * (CERT, 2026-11-12).
3483
+ */
3484
+ interface FulfillTicketingQualifiers {
3485
+ commissionAmount?: string;
3486
+ commissionPercentage?: string;
3487
+ endorsements?: Record<string, unknown>;
3488
+ tourCode?: string;
3489
+ priceQuoteRecordIds?: number[];
3490
+ travelerIndices?: number[];
3491
+ [field: string]: unknown;
3492
+ }
3493
+ /** `FulfillmentDetails` del spec: una emisión (boletos y, con `ancillaryIds`, EMD). */
3494
+ interface FulfillmentDetails {
3495
+ payment?: FulfillPayment;
3496
+ ticketingQualifiers?: FulfillTicketingQualifiers;
3497
+ /** EMD: los `itemId` de los ancillaries de la reserva. */
3498
+ ancillaryIds?: string[];
3499
+ /** Solo Canadá. */
3500
+ serviceFee?: Record<string, unknown>;
3501
+ /** Solo NDC. */
3502
+ payer?: Record<string, unknown>;
3503
+ }
3504
+ /**
3505
+ * `PrinterAddress` del spec v1.33. **Un perfil va solo**, en un único elemento de
3506
+ * `designatePrinters`; si no, todos los elementos tienen que ser del mismo tipo de impresora.
3507
+ */
3508
+ interface FulfillPrinterAddress {
3509
+ /** Perfil de impresoras del PCC de emisión (`PP*`). */
3510
+ profileNumber?: number;
3511
+ /** Impresora de boletos: LNIATA (`address`) o código de stock (`countryCode`, p. ej. `MX`). */
3512
+ ticket?: {
3513
+ address?: string;
3514
+ countryCode?: string;
3515
+ };
3516
+ hardcopy?: {
3517
+ address?: string;
3518
+ spacing?: string;
3519
+ };
3520
+ invoiceItinerary?: string;
3521
+ }
3522
+ /** `FulfillTicketsRequest` del spec v1.33. */
3523
+ interface FulfillTicketsRequest {
3524
+ /** Localizador del PNR u Order ID (`^[A-Z0-9]{6,}$`). */
3525
+ confirmationId: string;
3526
+ /** 1 a 99 emisiones. */
3527
+ fulfillments: FulfillmentDetails[];
3528
+ /** 1 a 10. En ATPCO hace falta al menos una. */
3529
+ formsOfPayment?: FulfillFormOfPayment[];
3530
+ /** En ATPCO hace falta: ver `FulfillPrinterAddress`. */
3531
+ designatePrinters?: FulfillPrinterAddress[];
3532
+ /** PCC de emisión (cambio de contexto, `^[A-Z0-9]{3,4}$`). */
3533
+ targetPcc?: string;
3534
+ bookingSource?: BookingSource;
3535
+ errorHandlingPolicy?: FulfillErrorPolicy[];
3536
+ retainAccounting?: boolean;
3537
+ receivedFrom?: string;
3538
+ travelers?: Array<Record<string, unknown>>;
3539
+ agency?: Record<string, unknown>;
3540
+ generateSingleInvoice?: boolean;
3541
+ /** Espera (0 a 10000 ms) de la validación de *ghost ticket*. */
3542
+ commitTicketToBookingWaitTime?: number;
3543
+ acceptNegotiatedFare?: boolean;
3544
+ /**
3545
+ * **El SDK manda `false` por defecto** (Sabre usa `true`): una emisión automática nunca paga un
3546
+ * precio que nadie vio (ADR-019). Con `false` y un precio nuevo, Sabre responde `PRICE_MISMATCH`.
3547
+ */
3548
+ acceptPriceChanges?: boolean;
3549
+ backDatePriceQuoteMethod?: PriceQuoteHandlingMethod;
3550
+ /** **El SDK manda `'Quit'` por defecto** (Sabre usa `Reprice`), por lo mismo que `acceptPriceChanges`. */
3551
+ priceQuoteExpirationMethod?: PriceQuoteHandlingMethod;
3552
+ notificationEmail?: 'DEFAULT' | 'INVOICE' | 'ETICKET' | 'ETICKET_PDF' | 'ITINERARY' | 'ITINERARY_PDF';
3553
+ returnRequest?: boolean;
3554
+ }
3555
+ interface FulfillTicketsOptions {
3556
+ /**
3557
+ * Abortar **después** de mandar el request no deshace la emisión: lanza
3558
+ * `SabreUncertainOutcomeError` con `reason: 'ABORTED'`. Antes de mandarlo, el `AbortError` se
3559
+ * propaga tal cual.
3560
+ */
3561
+ signal?: AbortSignal;
3562
+ /** Respuesta cruda del último intento HTTP. El body trae PII: ver `SabreRawResponse`. */
3563
+ onRawResponse?: SabreRawResponseCallback;
3564
+ /** Request crudo que se mandó, sin `Authorization`. Trae PII: ver `SabreRawRequest`. */
3565
+ onRawRequest?: SabreRawRequestCallback;
3566
+ /** No se acepta: la emisión nunca se reintenta. Solo `{ maxRetries: 0 }`, o nada. */
3567
+ retry?: {
3568
+ maxRetries?: number;
3569
+ };
3570
+ }
3571
+ /** `FulfillTicket` del spec v1.33. */
3572
+ interface FulfilledTicket {
3573
+ /** Número del documento. Ej.: `0167489825830`. */
3574
+ number: string;
3575
+ /** `YYYY-MM-DD`. */
3576
+ date: string;
3577
+ travelerGivenName?: string;
3578
+ travelerSurname?: string;
3579
+ payment: BookingTotalValues;
3580
+ /** `Issued`, `Voided` o `Refunded/Exchanged`. */
3581
+ ticketStatusName?: string;
3582
+ /** `TE` (boleto ATPCO), `ME` (EMD), `TO` (NDC); `TV` anulado. */
3583
+ ticketStatusCode?: string;
3584
+ ticketingPcc?: string;
3585
+ /** Solo ATPCO: el número quedó guardado en el PNR. */
3586
+ isCommitted?: boolean;
3587
+ }
3588
+ /** Lo que devuelve Fulfill tal cual. */
3589
+ interface RawFulfillTicketsResponse {
3590
+ timestamp?: string;
3591
+ tickets?: FulfilledTicket[];
3592
+ request?: FulfillTicketsRequest;
3593
+ errors?: BookingResponseError[];
3594
+ warnings?: BookingResponseError[];
3595
+ }
3596
+ /**
3597
+ * Emisión con boletos reales. **`partial` no es una emisión completa**: hay boletos emitidos, que
3598
+ * hay que guardar, y otros que faltan (por ejemplo, `PARTIAL_FULFILLMENT` por un FOID o una
3599
+ * tarjeta). No se vuelve a emitir a ciegas: primero `sabre.tickets.verify`.
3600
+ */
3601
+ interface FulfillTicketsResponse {
3602
+ status: 'issued' | 'partial';
3603
+ confirmationId: string;
3604
+ tickets: FulfilledTicket[];
3605
+ /** `warnings[]` y los elementos `WARNING` de `errors[]`. */
3606
+ warnings: SabreWarning[];
3607
+ /** Errores que llegaron junto con boletos emitidos (solo en `partial`). */
3608
+ errors: SabreBusinessError[];
3609
+ /** El `timestamp` de Sabre, tal cual (sin zona). */
3610
+ timestamp?: string;
3611
+ /** Eco del request con los defaults de Sabre completados. */
3612
+ request?: FulfillTicketsRequest;
3613
+ }
3614
+
3615
+ interface VerifyTicketsRequest {
3616
+ confirmationId: string;
3617
+ /** PCC de emisión, si se emitió con `targetPcc`. */
3618
+ targetPcc?: string;
3619
+ /** Números que la reserva ya tenía antes de emitir: no cuentan como nuevos. */
3620
+ knownTickets?: readonly string[];
3621
+ /**
3622
+ * Números que se esperan, p. ej. los `tickets` de un `SabreUncertainOutcomeError`. Si no están
3623
+ * en el PNR, el resultado es `notCommitted`, no `notFound`: **esos boletos existen** y no se
3624
+ * vuelve a emitir.
3625
+ */
3626
+ expectedTickets?: readonly string[];
3627
+ }
3628
+ /** Los callbacks crudos reciben `operation: 'booking.get'`: es el Get Booking que corre. */
3629
+ type VerifyTicketsOptions = GetBookingOptions;
3630
+ /** Un boleto vigente de la reserva, como lo trae Get Booking. */
3631
+ interface VerifiedTicket {
3632
+ number: string;
3633
+ ticketStatusCode?: string;
3634
+ ticketStatusName?: string;
3635
+ date?: string;
3636
+ ticketingPcc?: string;
3637
+ }
3638
+ type VerifyTicketsResponse = {
3639
+ status: 'issued';
3640
+ tickets: VerifiedTicket[];
3641
+ checkedAt: string;
3642
+ } | {
3643
+ status: 'notCommitted';
3644
+ tickets: VerifiedTicket[];
3645
+ missing: string[];
3646
+ checkedAt: string;
3647
+ } | {
3648
+ status: 'notFound';
3649
+ checkedAt: string;
3650
+ };
3651
+
3652
+ declare class TicketsManagement {
3653
+ #private;
3654
+ /** @internal Lo construye el cliente `Sabre`. */
3655
+ constructor(transport: RestTransport);
3656
+ /**
3657
+ * Fulfill Flight Tickets: emite los boletos (y EMD) de una reserva con su PQ guardado. **Mueve
3658
+ * dinero y nunca se reintenta**, ni ante un fallo de transporte ni ante un error que Sabre marque
3659
+ * como temporal (ADR-031). Pasar `retry.maxRetries` distinto de 0 lanza `TypeError` sin red.
3660
+ *
3661
+ * El SDK manda `acceptPriceChanges: false` y `priceQuoteExpirationMethod: 'Quit'` salvo que se
3662
+ * pasen otros valores: una emisión automática no paga un precio que nadie vio.
3663
+ *
3664
+ * Desenlaces:
3665
+ * - **Emitido** (`status: 'issued'`): todos los boletos con `isCommitted: true`.
3666
+ * - **Parcial** (`status: 'partial'`): hay boletos emitidos y algo faltó (`PARTIAL_FULFILLMENT`
3667
+ * o un error junto con boletos). **No es una emisión completa**: hay pasajeros sin boleto.
3668
+ * Guarda los emitidos y verifica antes de completar.
3669
+ * - **No emitido**: lanza `SabreBusinessError` (p. ej. `PRICE_MISMATCH`, `BOOKING_FULFILLED`) o
3670
+ * `SabreGatewayError` (400, 401, 403, 429).
3671
+ * - **Incierto**: lanza `SabreUncertainOutcomeError`. Verifica con `verify`, pasando sus
3672
+ * `tickets` como `expectedTickets`, antes de pensar en reintentar.
3673
+ *
3674
+ * `BOOKING_FULFILLED` quiere decir que la reserva ya tiene boletos, **no** que sean de esta
3675
+ * emisión: verifica con `verify`. Los errores de configuración del PCC (comisión, impresora,
3676
+ * Secure Flight) llegan como `DOWNLINE_SERVICE_ERROR` y hoy se tratan como incierto (CERT,
3677
+ * 2026-11-12).
3678
+ */
3679
+ fulfill(request: FulfillTicketsRequest, options?: FulfillTicketsOptions): Promise<FulfillTicketsResponse>;
3680
+ /**
3681
+ * ¿Se emitió? Lee la reserva con Get Booking y devuelve `issued`, `notCommitted` o `notFound`,
3682
+ * por el `ticketStatusCode` de cada boleto. Nunca emite. Un `notFound` no prueba que no se haya
3683
+ * emitido: ver `VerifyTicketsResponse`.
3684
+ */
3685
+ verify(request: VerifyTicketsRequest, options?: VerifyTicketsOptions): Promise<VerifyTicketsResponse>;
3686
+ }
3687
+
3440
3688
  declare class Sabre {
3441
3689
  #private;
3442
3690
  /** Servicios de Air: shopping, revalidación. */
3443
3691
  readonly air: Air;
3444
3692
  /** Booking Management: creación de reservas. */
3445
3693
  readonly booking: BookingManagement;
3694
+ /** Emisión de boletos (Fulfill Flight Tickets) y su verificación. Mueve dinero: ver ADR-031. */
3695
+ readonly tickets: TicketsManagement;
3446
3696
  constructor(config: SabreConfig);
3447
3697
  get environment(): SabreEnvironment;
3448
3698
  get baseUrl(): string;
@@ -3940,6 +4190,40 @@ declare class QueueManagement {
3940
4190
  place(request: QueuePlaceRequest, options?: QueuePlaceOptions): Promise<QueuePlaceResponse>;
3941
4191
  }
3942
4192
 
4193
+ /** @internal Lo que `SessionReporting` necesita de la sesión. */
4194
+ interface ReportingContext {
4195
+ send(request: SessionRequest): Promise<SoapResponse>;
4196
+ /** El PCC de la sesión: el `pcc` del resultado si Sabre no lo trae. */
4197
+ pcc: string;
4198
+ }
4199
+ declare class SessionReporting {
4200
+ #private;
4201
+ /** @internal Lo construye `SabreSession`. */
4202
+ constructor(context: ReportingContext);
4203
+ /**
4204
+ * Ventas del día: el «Summary» del DQB (`TKT_TravelAgencyReportsRQ` / `DailySalesSummaryRQ`
4205
+ * 1.2.2). Una transacción por movimiento del PCC en el día: ventas, reembolsos, voids, EMD y MCO,
4206
+ * sin tope. Sin `date`, da el día en curso, hasta minutos antes de la llamada (producción,
4207
+ * 2026-11-12). **Trae datos del pasajero** (`passengerName`).
4208
+ *
4209
+ * - Las fechas y horas (`transactionDateTime`, `reportDate`) llegan **tal como vienen, sin zona**.
4210
+ * En producción vienen en hora local del PCC; el SDK no las convierte.
4211
+ * - Solo `status: 'complete'` es el día entero. `incomplete` trae `failedDocuments`, y `deferred`
4212
+ * quiere decir que Sabre lo dejó en caché o sigue corriendo: hay que volver a pedirlo. El SDK
4213
+ * no pide `CachedReportRQ`.
4214
+ * - Los importes van como string.
4215
+ *
4216
+ * Otro PCC necesita Branch Access: sin él, Sabre responde `45100` y el SDK lanza
4217
+ * `SabreBusinessError` (`service: 'dailySalesSummary'`, `code: '45100'`). Lo mismo con `21212`
4218
+ * (versión) y cualquier otro error de la respuesta. Un fallo de autorización del gateway
4219
+ * (`USG_AUTHORIZATION_FAILED`) sale como los demás de la sesión. Un filtro con forma
4220
+ * equivocada lanza `TypeError` sin red.
4221
+ *
4222
+ * Es una lectura: se reintenta ante fallos de transporte, pero no ante errores de negocio.
4223
+ */
4224
+ dailySalesSummary(request?: DailySalesSummaryRequest, options?: DailySalesSummaryOptions): Promise<DailySalesSummaryResult>;
4225
+ }
4226
+
3943
4227
  /** @internal Lo que `SessionReservation` necesita de la sesión. */
3944
4228
  interface ReservationContext {
3945
4229
  send(request: SessionRequest): Promise<SoapResponse>;
@@ -3971,6 +4255,8 @@ declare class SessionReservation {
3971
4255
  history(locator: string, options?: ReservationHistoryOptions): Promise<ReservationHistoryResponse>;
3972
4256
  }
3973
4257
 
4258
+ /** Largo máximo de `HostCommand`, contado como Sabre (ver `sabreCommandLength`). */
4259
+ declare const MAX_COMMAND_LENGTH = 1023;
3974
4260
  interface SabreCommandOptions extends RequestOptions {
3975
4261
  /**
3976
4262
  * `true` solo si el comando es una lectura (`W/PT¥*`, `DC¥…`): entra en la política de
@@ -3996,6 +4282,11 @@ interface SabreCommandResponse {
3996
4282
  */
3997
4283
  respondedAt?: string;
3998
4284
  }
4285
+ /**
4286
+ * Largo del comando como lo cuenta Sabre: cada carácter vale 1, salvo `!`, `%`, `$`, `&`, `¥` y
4287
+ * `§`, que valen 2. Más de `MAX_COMMAND_LENGTH` y Sabre responde `REQUEST EXCEEDED MAXIMUM LENGTH`.
4288
+ */
4289
+ declare function sabreCommandLength(command: string): number;
3999
4290
 
4000
4291
  /** Lo que una operación pide al transporte. La sesión agrega `CPAId`, `ConversationId` y el token. */
4001
4292
  type SessionRequest = Omit<SoapRequest, 'cpaId' | 'conversationId' | 'security'>;
@@ -4025,6 +4316,8 @@ declare class SabreSession {
4025
4316
  readonly queue: QueueManagement;
4026
4317
  /** La reserva: el historial de un PNR, dentro de esta sesión. */
4027
4318
  readonly reservation: SessionReservation;
4319
+ /** Reportes del PCC: las ventas del día (`dailySalesSummary`), dentro de esta sesión. */
4320
+ readonly reporting: SessionReporting;
4028
4321
  /** @internal Se crea con `SabreLegacy.openSession()`. */
4029
4322
  constructor(internal: {
4030
4323
  transport: SoapTransport;
@@ -4407,6 +4700,6 @@ interface BookingFlightDetailsSource {
4407
4700
  */
4408
4701
  declare function buildBookingFlightDetails(source: BookingFlightDetailsSource): FlightDetails;
4409
4702
 
4410
- declare const VERSION = "0.6.0";
4703
+ declare const VERSION = "0.7.0";
4411
4704
 
4412
- export { Air, BargainFinderMaxRequest, BargainFinderMaxResponse, type BookContactInformation, type BookGenericSeat, type BookSeat, type BookTraveler, type Booking, type BookingAccountingFormOfPaymentTypeEnum, type BookingAccountingItem, type BookingAccountingItemCreationTypeEnum, type BookingAddress, type BookingAgency, type BookingAgencyCommission, type BookingAncillary, type BookingAncillarySourceEnum, type BookingAncillaryStatusNameEnum, type BookingAssociatedArrivalFlight, type BookingAssociatedFlightDetails, type BookingBaggageAllowance, type BookingBaggagePolicy, type BookingBasicFormOfPayment, type BookingBrandAttribute, type BookingCar, type BookingCarItem, type BookingCarReference, type BookingCarRentalSite, type BookingCardHolder, type BookingCommission, type BookingCommonOtherServiceInformation, type BookingContactInformation, type BookingCouponStatus, type BookingCouponStatusCodeEnum, type BookingCouponStatusEnum, type BookingCreationDetails, type BookingCruise, type BookingCruiseItem, type BookingCruiseReference, type BookingDateRangeRefundPenalty, type BookingDocumentSubTypeEnum, type BookingDocumentTypeEnum, type BookingEmployerIdTypeEnum, type BookingFare, type BookingFareApplicationTypeEnum, type BookingFareComponent, type BookingFareCreationDetails, type BookingFareDifferenceBreakdown, type BookingFareOffer, type BookingFareRule, type BookingFareRulePenalty, type BookingFareRulePenaltyApplicabilityEnum, type BookingFareService, type BookingFlight, type BookingFlightApplicabilityTypeEnum, type BookingFlightDetailsSource, type BookingFlightItem, type BookingFlightReference, type BookingFlightReferenceCoupon, type BookingFlightSourceEnum, type BookingFlightTicket, type BookingForceHotelUpdateDetails, type BookingFormOfPaymentResponse, type BookingFormOfPaymentTripTypeEnum, type BookingFormOfPaymentTypeResponseEnum, type BookingFormOfPaymentUseTypeEnum, type BookingFutureTicketingPolicy, type BookingGenderEnum, type BookingGenericAddress, type BookingGenericFormOfPayment, type BookingGenericTotalValues, type BookingGoodsAndServicesTax, type BookingGuaranteePaymentTypeEnum, type BookingGuaranteeTypeNameEnum, type BookingHandlingFee, type BookingHiddenStop, type BookingHotel, type BookingHotelAddress, type BookingHotelDateRangeRefundPenalty, type BookingHotelItem, type BookingHotelPaymentPolicyEnum, type BookingHotelPenaltyValue, type BookingHotelReference, type BookingHotelSourceEnum, type BookingIdentityDocument, type BookingIdentityDocumentReference, type BookingInitialSellingFare, type BookingItemReference, type BookingJourney, type BookingLoyaltyProgram, BookingManagement, type BookingManualApproval, type BookingMeal, type BookingMealDescriptionEnum, type BookingNonElectronicTicket, type BookingNonElectronicTicketStatusEnum, type BookingOriginalTotalValues, type BookingOtherServiceInformation, type BookingPassportTypeResponseEnum, type BookingPhone, type BookingPhoneResponse, type BookingPricingStatusCodeEnum, type BookingPricingStatusNameEnum, type BookingPricingTypeCodeEnum, type BookingPricingTypeNameEnum, type BookingProfile, type BookingProgramTypeEnum, type BookingRateInterval, type BookingReasonForIssuanceEnum, type BookingRemark, type BookingRemarkTypeEnum, type BookingResponseError, type BookingRoom, type BookingRoomExtraResponse, type BookingRoomExtrasNameEnum, type BookingSeat, type BookingSeatSelection, type BookingSegmentBasicAttributes, type BookingSegmentBasics, type BookingSegmentReference, type BookingSource, type BookingSpecialService, type BookingStatusNameEnum, type BookingStrongCustomerAuthentication, type BookingTariffBasisTypeEnum, type BookingTax, type BookingTaxComponent, type BookingTicketCoupon, type BookingTicketStatusEnum, type BookingTotalPayments, type BookingTotalValues, type BookingTrain, type BookingTrainItem, type BookingTrainReference, type BookingTraveler, type BookingTravelerTypeEnum, type BookingTravelersEmployer, type BookingTravelersGroup, type BookingValue, type BookingVehicleTypeNameEnum, type BookingVirtualCard, type BookingVisaTypeResponseEnum, type BookingVoucher, type BrandedFare, type BuildCredentialsOptions, type BuildCredentialsOptionsV2, type BuildCredentialsOptionsV3, type BuiltCredentialsV2, type BuiltCredentialsV3, type CancelBookingErrorPolicy, type CancelBookingNotification, type CancelBookingOptions, type CancelBookingRequest, type CancelBookingResponse, type CancelSegmentReference, type CreateBookingErrorPolicy, type CreateBookingOptions, type CreateBookingRequest, type CreateBookingResponse, type CreateBookingResponseError, type FlightDetails, type FlightStatusCode, type FlightTicketOperation, type FlightToBook, type GetBookingExtraFeatures, type GetBookingOptions, type GetBookingRequest, type GetBookingResponse, type GetBookingReturnOnly, type GetSeatsRequest, type GetSeatsResponse, GroupedItineraryResponse, type HostDateDirection, Itinerary, ItineraryGroup, type OpenSessionOptions, OtaAirLowFareSearchRq, type PassengerPricing, type PaymentMethod, type PriceComparison, type PriceComparisonType, type PricedSeat, type PricingDetails, type PricingQualifiers, type QueueAccessOptions, type QueueAccessRequest, QueueActivityOptions, QueueActivityRequest, QueueActivityResponse, type QueueAdditionalInfo, type QueueCount, type QueueCountOptions, type QueueCountRequest, type QueueCountResponse, type QueueEndReason, type QueueItem, type QueueListEntry, type QueueListOptions, type QueueListRequest, type QueueListResponse, QueueManagement, type QueueMessage, type QueueNavigationOptions, type QueueParagraph, type QueueParagraphAirSegment, type QueueParagraphMessage, type QueueParagraphOptions, type QueueParagraphOtherSegment, type QueueParagraphPassenger, type QueueParagraphReceivedFrom, type QueueParagraphSegment, type QueueParagraphTicketing, type QueueParagraphTicketingEntry, type QueuePlaceOptions, type QueuePlaceRemark, type QueuePlaceRequest, type QueuePlaceResponse, type QueuePlaceResult, type QueuePlaceTarget, type QueuePlacement, type QueueProcessAction, type QueueProcessRequest, type QueueProcessResult, QueueRange, QueueRef, type QueueRemoveRequest, type QueueRemoveTarget, type QueueSelection, type QueueState, type QueueStep, type RawSeatAvailabilityRs, type RefundDocumentsType, RequestOptions, ReservationHistoryOptions, ReservationHistoryResponse, type ResolveHostDateOptions, RetryOptions, type RevalidateItineraryRequest, type RevalidateItineraryRequestSource, type RevalidateItineraryResponse, Sabre, type SabreAuthVersion, SabreBusinessError, type SabreCommandOptions, type SabreCommandResponse, type SabreConfig, type SabreConfigFromCredentials, type SabreConfigV2, type SabreConfigV2FromCredentials, type SabreConfigV3, type SabreCredentials, type SabreCredentialsAnyVersion, type SabreCredentialsV2, type SabreEnvironment, SabreError, SabreLegacy, type SabreLogEvent, type SabreLogLevel, type SabreLogger, SabreRawRequestCallback, SabreRawResponseCallback, SabreSession, type SabreTokenStore, SabreWarning, type Seat, type SeatAreaPreference, type SeatAvailabilityByPayloadRq, type SeatAvailabilityByPnrLocatorRq, type SeatAvailabilityIssue, type SeatAvailabilityRequestSource, type SeatAvailabilityResponse, type SeatCabinAisle, type SeatCabinCompartment, type SeatCabinFacility, type SeatCabinLayout, type SeatCabinRowPosition, type SeatCharacteristic, type SeatDisplayOnlyItem, type SeatFareComponent, type SeatFareDetail, type SeatFareSegmentAssociation, type SeatFlightLeg, type SeatKeyValuePair, type SeatLoyaltyProgramAccount, type SeatMap, type SeatOfferItem, type SeatOfferItemDetails, type SeatPassenger, type SeatPassengerPayloadRq, type SeatPassengerRs, type SeatPriceBreakdown, type SeatPriceDefinition, type SeatRow, type SeatSegment, type SeatSegmentPayloadRq, type SeatSegmentRs, type SeatServiceDefinition, type SeatSpecialServiceRequest, type SeatTax, SessionReservation, type SpecificFare, type StoredToken, type TicketingPolicy, type TravelerPhone, type TravelerTitle, VERSION, buildBookingFlightDetails, buildCredentials, buildRevalidateItineraryRequest, buildSeatAvailabilityRequest, parseQueueParagraph, parseQueuePlaceRemark, resolveHostDate };
4705
+ export { Air, BargainFinderMaxRequest, BargainFinderMaxResponse, type BookContactInformation, type BookGenericSeat, type BookSeat, type BookTraveler, type Booking, type BookingAccountingFormOfPaymentTypeEnum, type BookingAccountingItem, type BookingAccountingItemCreationTypeEnum, type BookingAddress, type BookingAgency, type BookingAgencyCommission, type BookingAncillary, type BookingAncillarySourceEnum, type BookingAncillaryStatusNameEnum, type BookingAssociatedArrivalFlight, type BookingAssociatedFlightDetails, type BookingBaggageAllowance, type BookingBaggagePolicy, type BookingBasicFormOfPayment, type BookingBrandAttribute, type BookingCar, type BookingCarItem, type BookingCarReference, type BookingCarRentalSite, type BookingCardHolder, type BookingCommission, type BookingCommonOtherServiceInformation, type BookingContactInformation, type BookingCouponStatus, type BookingCouponStatusCodeEnum, type BookingCouponStatusEnum, type BookingCreationDetails, type BookingCruise, type BookingCruiseItem, type BookingCruiseReference, type BookingDateRangeRefundPenalty, type BookingDocumentSubTypeEnum, type BookingDocumentTypeEnum, type BookingEmployerIdTypeEnum, type BookingFare, type BookingFareApplicationTypeEnum, type BookingFareComponent, type BookingFareCreationDetails, type BookingFareDifferenceBreakdown, type BookingFareOffer, type BookingFareRule, type BookingFareRulePenalty, type BookingFareRulePenaltyApplicabilityEnum, type BookingFareService, type BookingFlight, type BookingFlightApplicabilityTypeEnum, type BookingFlightDetailsSource, type BookingFlightItem, type BookingFlightReference, type BookingFlightReferenceCoupon, type BookingFlightSourceEnum, type BookingFlightTicket, type BookingForceHotelUpdateDetails, type BookingFormOfPaymentResponse, type BookingFormOfPaymentTripTypeEnum, type BookingFormOfPaymentTypeResponseEnum, type BookingFormOfPaymentUseTypeEnum, type BookingFutureTicketingPolicy, type BookingGenderEnum, type BookingGenericAddress, type BookingGenericFormOfPayment, type BookingGenericTotalValues, type BookingGoodsAndServicesTax, type BookingGuaranteePaymentTypeEnum, type BookingGuaranteeTypeNameEnum, type BookingHandlingFee, type BookingHiddenStop, type BookingHotel, type BookingHotelAddress, type BookingHotelDateRangeRefundPenalty, type BookingHotelItem, type BookingHotelPaymentPolicyEnum, type BookingHotelPenaltyValue, type BookingHotelReference, type BookingHotelSourceEnum, type BookingIdentityDocument, type BookingIdentityDocumentReference, type BookingInitialSellingFare, type BookingItemReference, type BookingJourney, type BookingLoyaltyProgram, BookingManagement, type BookingManualApproval, type BookingMeal, type BookingMealDescriptionEnum, type BookingNonElectronicTicket, type BookingNonElectronicTicketStatusEnum, type BookingOriginalTotalValues, type BookingOtherServiceInformation, type BookingPassportTypeResponseEnum, type BookingPhone, type BookingPhoneResponse, type BookingPricingStatusCodeEnum, type BookingPricingStatusNameEnum, type BookingPricingTypeCodeEnum, type BookingPricingTypeNameEnum, type BookingProfile, type BookingProgramTypeEnum, type BookingRateInterval, type BookingReasonForIssuanceEnum, type BookingRemark, type BookingRemarkTypeEnum, type BookingResponseError, type BookingRoom, type BookingRoomExtraResponse, type BookingRoomExtrasNameEnum, type BookingSeat, type BookingSeatSelection, type BookingSegmentBasicAttributes, type BookingSegmentBasics, type BookingSegmentReference, type BookingSource, type BookingSpecialService, type BookingStatusNameEnum, type BookingStrongCustomerAuthentication, type BookingTariffBasisTypeEnum, type BookingTax, type BookingTaxComponent, type BookingTicketCoupon, type BookingTicketStatusEnum, type BookingTotalPayments, type BookingTotalValues, type BookingTrain, type BookingTrainItem, type BookingTrainReference, type BookingTraveler, type BookingTravelerTypeEnum, type BookingTravelersEmployer, type BookingTravelersGroup, type BookingValue, type BookingVehicleTypeNameEnum, type BookingVirtualCard, type BookingVisaTypeResponseEnum, type BookingVoucher, type BrandedFare, type BuildCredentialsOptions, type BuildCredentialsOptionsV2, type BuildCredentialsOptionsV3, type BuiltCredentialsV2, type BuiltCredentialsV3, type CancelBookingErrorPolicy, type CancelBookingNotification, type CancelBookingOptions, type CancelBookingRequest, type CancelBookingResponse, type CancelSegmentReference, type CreateBookingErrorPolicy, type CreateBookingOptions, type CreateBookingRequest, type CreateBookingResponse, type CreateBookingResponseError, DailySalesSummaryOptions, DailySalesSummaryRequest, DailySalesSummaryResult, type FlightDetails, type FlightStatusCode, type FlightTicketOperation, type FlightToBook, type FulfillErrorPolicy, type FulfillFormOfPayment, type FulfillFormOfPaymentType, type FulfillPayment, type FulfillPrinterAddress, type FulfillTicketingQualifiers, type FulfillTicketsOptions, type FulfillTicketsRequest, type FulfillTicketsResponse, type FulfilledTicket, type FulfillmentDetails, type GetBookingExtraFeatures, type GetBookingOptions, type GetBookingRequest, type GetBookingResponse, type GetBookingReturnOnly, type GetSeatsRequest, type GetSeatsResponse, GroupedItineraryResponse, type HostDateDirection, Itinerary, ItineraryGroup, MAX_COMMAND_LENGTH, type OpenSessionOptions, OtaAirLowFareSearchRq, type PassengerPricing, type PaymentMethod, type PriceComparison, type PriceComparisonType, type PriceQuoteHandlingMethod, type PricedSeat, type PricingDetails, type PricingQualifiers, type QueueAccessOptions, type QueueAccessRequest, QueueActivityOptions, QueueActivityRequest, QueueActivityResponse, type QueueAdditionalInfo, type QueueCount, type QueueCountOptions, type QueueCountRequest, type QueueCountResponse, type QueueEndReason, type QueueItem, type QueueListEntry, type QueueListOptions, type QueueListRequest, type QueueListResponse, QueueManagement, type QueueMessage, type QueueNavigationOptions, type QueueParagraph, type QueueParagraphAirSegment, type QueueParagraphMessage, type QueueParagraphOptions, type QueueParagraphOtherSegment, type QueueParagraphPassenger, type QueueParagraphReceivedFrom, type QueueParagraphSegment, type QueueParagraphTicketing, type QueueParagraphTicketingEntry, type QueuePlaceOptions, type QueuePlaceRemark, type QueuePlaceRequest, type QueuePlaceResponse, type QueuePlaceResult, type QueuePlaceTarget, type QueuePlacement, type QueueProcessAction, type QueueProcessRequest, type QueueProcessResult, QueueRange, QueueRef, type QueueRemoveRequest, type QueueRemoveTarget, type QueueSelection, type QueueState, type QueueStep, type RawFulfillTicketsResponse, type RawSeatAvailabilityRs, type RefundDocumentsType, RequestOptions, ReservationHistoryOptions, ReservationHistoryResponse, type ResolveHostDateOptions, RetryOptions, type RevalidateItineraryRequest, type RevalidateItineraryRequestSource, type RevalidateItineraryResponse, Sabre, type SabreAuthVersion, SabreBusinessError, type SabreCommandOptions, type SabreCommandResponse, type SabreConfig, type SabreConfigFromCredentials, type SabreConfigV2, type SabreConfigV2FromCredentials, type SabreConfigV3, type SabreCredentials, type SabreCredentialsAnyVersion, type SabreCredentialsV2, type SabreEnvironment, SabreError, SabreLegacy, type SabreLogEvent, type SabreLogLevel, type SabreLogger, SabreRawRequestCallback, SabreRawResponseCallback, SabreSession, type SabreTokenStore, SabreWarning, type Seat, type SeatAreaPreference, type SeatAvailabilityByPayloadRq, type SeatAvailabilityByPnrLocatorRq, type SeatAvailabilityIssue, type SeatAvailabilityRequestSource, type SeatAvailabilityResponse, type SeatCabinAisle, type SeatCabinCompartment, type SeatCabinFacility, type SeatCabinLayout, type SeatCabinRowPosition, type SeatCharacteristic, type SeatDisplayOnlyItem, type SeatFareComponent, type SeatFareDetail, type SeatFareSegmentAssociation, type SeatFlightLeg, type SeatKeyValuePair, type SeatLoyaltyProgramAccount, type SeatMap, type SeatOfferItem, type SeatOfferItemDetails, type SeatPassenger, type SeatPassengerPayloadRq, type SeatPassengerRs, type SeatPriceBreakdown, type SeatPriceDefinition, type SeatRow, type SeatSegment, type SeatSegmentPayloadRq, type SeatSegmentRs, type SeatServiceDefinition, type SeatSpecialServiceRequest, type SeatTax, SessionReporting, SessionReservation, type SpecificFare, type StoredToken, type TicketingPolicy, TicketsManagement, type TravelerPhone, type TravelerTitle, VERSION, type VerifiedTicket, type VerifyTicketsOptions, type VerifyTicketsRequest, type VerifyTicketsResponse, buildBookingFlightDetails, buildCredentials, buildRevalidateItineraryRequest, buildSeatAvailabilityRequest, parseQueueParagraph, parseQueuePlaceRemark, resolveHostDate, sabreCommandLength };