/* * Copyright (C) 2023 Expedia, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { JsonObject, JsonProperty } from 'typescript-json-serializer' /** * This field holds details about activity\'s capabilities and execution details related to inventory hold functionality. */ @JsonObject({ constructorParams: [{}] }) export class DelayedFulfillment { /** * This field indicates if the fulfillment of an activity is possible or not. */ @JsonProperty({ name: 'is_available' }) isAvailable?: boolean /** * This field indicates the duration of the hold on an activity. */ @JsonProperty({ name: 'hold_duration_value' }) holdDurationValue?: number /** * This field indicates the unit of duration of the hold on an activity. */ @JsonProperty({ name: 'hold_duration_unit_of_measure' }) holdDurationUnitOfMeasure?: string /** * This field indicates whether customer order confirmation can be delayed. Customer will receive ticket number, voucher ID or any other type of confirmation until transaction is successfully completed or approved by an analyst during the review process. */ @JsonProperty({ name: 'is_delayed_customer_confirmation' }) isDelayedCustomerConfirmation?: boolean public constructor(delayedFulfillment: DelayedFulfillmentProperties) { this.isAvailable = delayedFulfillment.isAvailable this.holdDurationValue = delayedFulfillment.holdDurationValue this.holdDurationUnitOfMeasure = delayedFulfillment.holdDurationUnitOfMeasure this.isDelayedCustomerConfirmation = delayedFulfillment.isDelayedCustomerConfirmation } } export interface DelayedFulfillmentProperties { isAvailable?: boolean holdDurationValue?: number holdDurationUnitOfMeasure?: string isDelayedCustomerConfirmation?: boolean }