/** * apaleo Rate Plan API - not safe for work * Continuously evolving version - use at your own risk! Manage the rate plans and rates to rent out your inventory and extra services. * * OpenAPI spec version: v0-nsfw * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ import { AccountingConfigModel } from './accountingConfigModel'; import { BookingPeriodModel } from './bookingPeriodModel'; import { BookingRestrictionsModel } from './bookingRestrictionsModel'; import { CompanyRatePlanModel } from './companyRatePlanModel'; import { EmbeddedCancellationPolicyModel } from './embeddedCancellationPolicyModel'; import { EmbeddedMarketSegmentModel } from './embeddedMarketSegmentModel'; import { EmbeddedNoShowPolicyModel } from './embeddedNoShowPolicyModel'; import { EmbeddedPropertyModel } from './embeddedPropertyModel'; import { EmbeddedTimeSliceDefinitionModel } from './embeddedTimeSliceDefinitionModel'; import { EmbeddedUnitGroupModel } from './embeddedUnitGroupModel'; import { PricingRuleModel } from './pricingRuleModel'; import { RatePlanAgeCategoryModel } from './ratePlanAgeCategoryModel'; import { RatePlanServiceItemModel } from './ratePlanServiceItemModel'; import { RatesRangeModel } from './ratesRangeModel'; import { SurchargeModel } from './surchargeModel'; import { ClassMetaData } from '@apaleo/angular-api-proxy-common'; export interface RatePlanItemModel { /** * The rate plan id */ id: string; /** * The code for the rate plan that can be shown in reports and table views */ code: string; /** * The name for the rate plan */ name: string; /** * The description for the rate plan */ description: string; /** * The minimum guarantee to be provided when this rate plan is booked so the reservation will be guaranteed to the guest */ minGuaranteeType: RatePlanItemModel.MinGuaranteeTypeEnum; /** * The calculation mode is used when calculating the adults' surcharges and derived rates. Defaults to Truncate. Example: for a rate of 125.99 and a surcharge of +10%, when Truncate is selected, the result would be 125.99 + 12 = 137.99 When Round is selected, the result would be 125.99 + 12.60 = 138.59 */ priceCalculationMode?: RatePlanItemModel.PriceCalculationModeEnum; property: EmbeddedPropertyModel; unitGroup: EmbeddedUnitGroupModel; cancellationPolicy: EmbeddedCancellationPolicyModel; noShowPolicy: EmbeddedNoShowPolicyModel; /** * The channel codes the rate plan is sold through */ channelCodes: Array; /** * The rate codes for promotional and hidden rates. If at least one code is set the rate will be not publicly visible anymore and only be offered when one of the promo codes is given in the offer request. For backward compatibility it is still not possible to set multiple promo codes. */ promoCodes?: Array; timeSliceDefinition: EmbeddedTimeSliceDefinitionModel; restrictions?: BookingRestrictionsModel; /** * Time periods when the rate plan is bookable */ bookingPeriods?: Array; /** * Indicates whether the rate plan has an active booking period */ isBookable: boolean; /** * Whether the rate plan is subject to city tax or not */ isSubjectToCityTax: boolean; pricingRule?: PricingRuleModel; /** * Indicates whether the rates for this rate plan are derived from another rate plan */ isDerived: boolean; /** * Indicates the derivation level of the rate plan. When zero, it is a rate plan with manually managed prices. */ derivationLevel: number; /** * Additional charges for more than single occupancy. The percent or absolute value will be added to the manually defined or calculated derived rates. */ surcharges?: Array; /** * Additional charges per age category. */ ageCategories?: Array; /** * Services that are included in the rate plan */ includedServices?: Array; /** * Companies that can use this rate plan */ companies?: Array; ratesRange?: RatesRangeModel; /** * The collection of accounting configs with validity periods. */ accountingConfigs: Array; marketSegment?: EmbeddedMarketSegmentModel; /** * Whether the rate plan is archived or not. */ isArchived?: boolean; } export declare namespace RatePlanItemModel { type MinGuaranteeTypeEnum = 'PM6Hold' | 'CreditCard' | 'Prepayment' | 'Company'; const MinGuaranteeTypeEnumValues: readonly MinGuaranteeTypeEnum[]; type PriceCalculationModeEnum = 'Truncate' | 'Round'; const PriceCalculationModeEnumValues: readonly PriceCalculationModeEnum[]; type ChannelCodesEnum = 'Direct' | 'BookingCom' | 'Ibe' | 'ChannelManager' | 'Expedia' | 'Homelike' | 'Hrs' | 'AltoVita' | 'DesVu'; const ChannelCodesEnumValues: readonly ChannelCodesEnum[]; } export declare namespace RatePlanItemModel { const $metaData: ClassMetaData; }