import { BedApi } from './BedApi';
import { HotelImageApi } from './HotelImageApi';
/**
 * Hotel Room details.
 * @export
 * @interface HotelRoomApi
 */
export interface HotelRoomApi {
    /**
     * List of amenities in the room. May be subject to changes at the Hotel.
     * @type {Array<string>}
     * @memberof HotelRoomApi
     */
    amenities?: Array<string> | null;
    /**
     * Beds list.
     * Each nested array of beds represents a single combination of possible beds.
     * e.g.: The following object represents **1 double bed or 1 sofa bed and 1 double bed or 1 single bed**:
     * ```
     * [
     *   [
     *     { count: 1, name: 'double', occupancy: 2 },
     *     { count: 1, name: 'sofa', occupancy: 1 }
     *   ],
     *   [
     *     { count: 1, name: 'double', occupancy: 2 },
     *     { count: 1, name: 'single', occupancy: 1 }
     *   ]
     * ]
     * ```
     * @type {Array<Array<BedApi>>}
     * @memberof HotelRoomApi
     */
    beds: Array<Array<BedApi>>;
    /**
     * Prettified and localized list of beds
     * @type {string}
     * @memberof HotelRoomApi
     */
    bedsPretty: string;
    /**
     * Hotel Room count included in the Hotel Room Offer.
     * @type {number}
     * @memberof HotelRoomApi
     */
    count: number;
    /**
     * Hotel Room description.
     * @type {string}
     * @memberof HotelRoomApi
     */
    description: string;
    /**
     * Whether high resolution images are available.
     * @type {boolean}
     * @memberof HotelRoomApi
     */
    highresImages?: boolean | null;
    /**
     * Hotel Room id, when applicable.
     * @type {string}
     * @memberof HotelRoomApi
     */
    id: string;
    /**
     * List of indexes corresponding to image names for the given Hotel Room among the related hotel images.
     * @type {Array<number>}
     * @memberof HotelRoomApi
     */
    imageIndexes?: Array<number> | null;
    /**
     * Hotel Room images.
     * @type {Array<HotelImageApi>}
     * @memberof HotelRoomApi
     */
    images?: Array<HotelImageApi> | null;
    /**
     * Whether low resolution images are available.
     * @type {boolean}
     * @memberof HotelRoomApi
     */
    lowresImages?: boolean | null;
    /**
     * Total occupancy of a single hotel room.
     * @type {number}
     * @memberof HotelRoomApi
     */
    occupancy: number;
    /**
     * Rich Hotel Room description. May contain HTML tags markup.
     * @type {string}
     * @memberof HotelRoomApi
     */
    richDescription?: string | null;
    /**
     * Room surface in square feet. May be subject to changes at the Hotel.
     * @type {number}
     * @memberof HotelRoomApi
     */
    roomSquareFeet?: number | null;
    /**
     * Room surface in square meters. May be subject to changes at the Hotel.
     * @type {number}
     * @memberof HotelRoomApi
     */
    roomSquareMeters?: number | null;
    /**
     * Whether thumb resolution images are available (in order to display them as image carousel navigation for instance).
     * @type {boolean}
     * @memberof HotelRoomApi
     */
    thumbImages?: boolean | null;
}
/**
 * Check if a given object implements the HotelRoomApi interface.
 */
export declare function instanceOfHotelRoomApi(value: object): boolean;
export declare function HotelRoomApiFromJSON(json: any): HotelRoomApi;
export declare function HotelRoomApiFromJSONTyped(json: any, ignoreDiscriminator: boolean): HotelRoomApi;
export declare function HotelRoomApiToJSON(value?: HotelRoomApi | null): any;
