/**
 * CloudHospital Api
 * CloudHospital application with Swagger, Swashbuckle, and API versioning.
 *
 * The version of the OpenAPI document: 2
 * Contact: developer@icloudhospital.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';
import { Configuration } from '../configuration';
import { RequestArgs, BaseAPI } from '../base';
import { DealModel } from '../models';
import { DealPackageModel } from '../models';
import { DealPackagesModel } from '../models';
import { DealServiceModel } from '../models';
import { DealServicesModel } from '../models';
import { DealsModel } from '../models';
import { DealsSimpleModel } from '../models';
import { GetAppointmentTimetablesResponseModel } from '../models';
import { MarketingType } from '../models';
/**
 * DealsApi - axios parameter creator
 * @export
 */
export declare const DealsApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary Get deal.
     * @param {string} dealId
     * @param {string} [languageCode]
     * @param {boolean} [returnDefaultValue]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdGet: (dealId: string, languageCode?: string, returnDefaultValue?: boolean, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get all DealPackage.
     * @param {string} dealId
     * @param {string} [relatedDealPackageId]
     * @param {string} [dealName]
     * @param {string} [name]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [languageCode]
     * @param {boolean} [appointmentChEnabled]
     * @param {boolean} [appointmentSaasEnabled]
     * @param {boolean} [showHidden]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesGet: (dealId: string, relatedDealPackageId?: string, dealName?: string, name?: string, countryId?: string, hospitalId?: string, hospitalName?: string, languageCode?: string, appointmentChEnabled?: boolean, appointmentSaasEnabled?: boolean, showHidden?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get DealPackageAppointmentTimetables
     * @param {string} dealId
     * @param {string} packageId
     * @param {number} [year]
     * @param {number} [month]
     * @param {string} [timeZone]
     * @param {boolean} [isExternal]
     * @param {boolean} [isOnline]
     * @param {string} [appointmentIdExcluded]
     * @param {boolean} [excludeUnavailableTimeSlots]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet: (dealId: string, packageId: string, year?: number, month?: number, timeZone?: string, isExternal?: boolean, isOnline?: boolean, appointmentIdExcluded?: string, excludeUnavailableTimeSlots?: boolean, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get DealPackage.
     * @param {string} dealId
     * @param {string} packageId
     * @param {string} [languageCode]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesPackageIdGet: (dealId: string, packageId: string, languageCode?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get all DealService.
     * @param {string} dealId
     * @param {string} [languageCode]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdServicesGet: (dealId: string, languageCode?: string, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get DealService.
     * @param {string} dealId
     * @param {string} serviceId
     * @param {string} [languageCode]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdServicesServiceIdGet: (dealId: string, serviceId: string, languageCode?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get all deals.
     * @param {string} [id]
     * @param {string} [name]
     * @param {MarketingType} [marketingType]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [specialtyId]
     * @param {string} [specialtyName]
     * @param {string} [specialtyTypeId]
     * @param {string} [specialtyTypeName]
     * @param {string} [serviceId]
     * @param {string} [serviceName]
     * @param {string} [exceptHospitalId]
     * @param {string} [exceptDealId]
     * @param {Array<string>} [ids]
     * @param {number} [serviceDuration]
     * @param {string} [languageCode]
     * @param {boolean} [showHidden]
     * @param {boolean} [returnDefaultValue]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsGet: (id?: string, name?: string, marketingType?: MarketingType, countryId?: string, hospitalId?: string, hospitalName?: string, specialtyId?: string, specialtyName?: string, specialtyTypeId?: string, specialtyTypeName?: string, serviceId?: string, serviceName?: string, exceptHospitalId?: string, exceptDealId?: string, ids?: Array<string>, serviceDuration?: number, languageCode?: string, showHidden?: boolean, returnDefaultValue?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get all deals.
     * @param {string} [id]
     * @param {string} [name]
     * @param {MarketingType} [marketingType]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [specialtyId]
     * @param {string} [specialtyName]
     * @param {string} [specialtyTypeId]
     * @param {string} [specialtyTypeName]
     * @param {string} [serviceId]
     * @param {string} [serviceName]
     * @param {string} [exceptHospitalId]
     * @param {string} [exceptDealId]
     * @param {Array<string>} [ids]
     * @param {number} [serviceDuration]
     * @param {string} [languageCode]
     * @param {boolean} [showHidden]
     * @param {boolean} [returnDefaultValue]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsSimpleGet: (id?: string, name?: string, marketingType?: MarketingType, countryId?: string, hospitalId?: string, hospitalName?: string, specialtyId?: string, specialtyName?: string, specialtyTypeId?: string, specialtyTypeName?: string, serviceId?: string, serviceName?: string, exceptHospitalId?: string, exceptDealId?: string, ids?: Array<string>, serviceDuration?: number, languageCode?: string, showHidden?: boolean, returnDefaultValue?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get deal by slug.
     * @param {string} slug
     * @param {string} [languageCode]
     * @param {boolean} [returnDefaultValue]
     * @param {string} [previewSecret]
     * @param {string} [hospitalId]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsSlugGet: (slug: string, languageCode?: string, returnDefaultValue?: boolean, previewSecret?: string, hospitalId?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * DealsApi - functional programming interface
 * @export
 */
export declare const DealsApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary Get deal.
     * @param {string} dealId
     * @param {string} [languageCode]
     * @param {boolean} [returnDefaultValue]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdGet(dealId: string, languageCode?: string, returnDefaultValue?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealModel>>;
    /**
     *
     * @summary Get all DealPackage.
     * @param {string} dealId
     * @param {string} [relatedDealPackageId]
     * @param {string} [dealName]
     * @param {string} [name]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [languageCode]
     * @param {boolean} [appointmentChEnabled]
     * @param {boolean} [appointmentSaasEnabled]
     * @param {boolean} [showHidden]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesGet(dealId: string, relatedDealPackageId?: string, dealName?: string, name?: string, countryId?: string, hospitalId?: string, hospitalName?: string, languageCode?: string, appointmentChEnabled?: boolean, appointmentSaasEnabled?: boolean, showHidden?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealPackagesModel>>;
    /**
     *
     * @summary Get DealPackageAppointmentTimetables
     * @param {string} dealId
     * @param {string} packageId
     * @param {number} [year]
     * @param {number} [month]
     * @param {string} [timeZone]
     * @param {boolean} [isExternal]
     * @param {boolean} [isOnline]
     * @param {string} [appointmentIdExcluded]
     * @param {boolean} [excludeUnavailableTimeSlots]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet(dealId: string, packageId: string, year?: number, month?: number, timeZone?: string, isExternal?: boolean, isOnline?: boolean, appointmentIdExcluded?: string, excludeUnavailableTimeSlots?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetAppointmentTimetablesResponseModel>>;
    /**
     *
     * @summary Get DealPackage.
     * @param {string} dealId
     * @param {string} packageId
     * @param {string} [languageCode]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesPackageIdGet(dealId: string, packageId: string, languageCode?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealPackageModel>>;
    /**
     *
     * @summary Get all DealService.
     * @param {string} dealId
     * @param {string} [languageCode]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdServicesGet(dealId: string, languageCode?: string, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealServicesModel>>;
    /**
     *
     * @summary Get DealService.
     * @param {string} dealId
     * @param {string} serviceId
     * @param {string} [languageCode]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdServicesServiceIdGet(dealId: string, serviceId: string, languageCode?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealServiceModel>>;
    /**
     *
     * @summary Get all deals.
     * @param {string} [id]
     * @param {string} [name]
     * @param {MarketingType} [marketingType]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [specialtyId]
     * @param {string} [specialtyName]
     * @param {string} [specialtyTypeId]
     * @param {string} [specialtyTypeName]
     * @param {string} [serviceId]
     * @param {string} [serviceName]
     * @param {string} [exceptHospitalId]
     * @param {string} [exceptDealId]
     * @param {Array<string>} [ids]
     * @param {number} [serviceDuration]
     * @param {string} [languageCode]
     * @param {boolean} [showHidden]
     * @param {boolean} [returnDefaultValue]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsGet(id?: string, name?: string, marketingType?: MarketingType, countryId?: string, hospitalId?: string, hospitalName?: string, specialtyId?: string, specialtyName?: string, specialtyTypeId?: string, specialtyTypeName?: string, serviceId?: string, serviceName?: string, exceptHospitalId?: string, exceptDealId?: string, ids?: Array<string>, serviceDuration?: number, languageCode?: string, showHidden?: boolean, returnDefaultValue?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealsModel>>;
    /**
     *
     * @summary Get all deals.
     * @param {string} [id]
     * @param {string} [name]
     * @param {MarketingType} [marketingType]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [specialtyId]
     * @param {string} [specialtyName]
     * @param {string} [specialtyTypeId]
     * @param {string} [specialtyTypeName]
     * @param {string} [serviceId]
     * @param {string} [serviceName]
     * @param {string} [exceptHospitalId]
     * @param {string} [exceptDealId]
     * @param {Array<string>} [ids]
     * @param {number} [serviceDuration]
     * @param {string} [languageCode]
     * @param {boolean} [showHidden]
     * @param {boolean} [returnDefaultValue]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsSimpleGet(id?: string, name?: string, marketingType?: MarketingType, countryId?: string, hospitalId?: string, hospitalName?: string, specialtyId?: string, specialtyName?: string, specialtyTypeId?: string, specialtyTypeName?: string, serviceId?: string, serviceName?: string, exceptHospitalId?: string, exceptDealId?: string, ids?: Array<string>, serviceDuration?: number, languageCode?: string, showHidden?: boolean, returnDefaultValue?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealsSimpleModel>>;
    /**
     *
     * @summary Get deal by slug.
     * @param {string} slug
     * @param {string} [languageCode]
     * @param {boolean} [returnDefaultValue]
     * @param {string} [previewSecret]
     * @param {string} [hospitalId]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsSlugGet(slug: string, languageCode?: string, returnDefaultValue?: boolean, previewSecret?: string, hospitalId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DealModel>>;
};
/**
 * DealsApi - factory interface
 * @export
 */
export declare const DealsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary Get deal.
     * @param {string} dealId
     * @param {string} [languageCode]
     * @param {boolean} [returnDefaultValue]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdGet(dealId: string, languageCode?: string, returnDefaultValue?: boolean, options?: any): AxiosPromise<DealModel>;
    /**
     *
     * @summary Get all DealPackage.
     * @param {string} dealId
     * @param {string} [relatedDealPackageId]
     * @param {string} [dealName]
     * @param {string} [name]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [languageCode]
     * @param {boolean} [appointmentChEnabled]
     * @param {boolean} [appointmentSaasEnabled]
     * @param {boolean} [showHidden]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesGet(dealId: string, relatedDealPackageId?: string, dealName?: string, name?: string, countryId?: string, hospitalId?: string, hospitalName?: string, languageCode?: string, appointmentChEnabled?: boolean, appointmentSaasEnabled?: boolean, showHidden?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: any): AxiosPromise<DealPackagesModel>;
    /**
     *
     * @summary Get DealPackageAppointmentTimetables
     * @param {string} dealId
     * @param {string} packageId
     * @param {number} [year]
     * @param {number} [month]
     * @param {string} [timeZone]
     * @param {boolean} [isExternal]
     * @param {boolean} [isOnline]
     * @param {string} [appointmentIdExcluded]
     * @param {boolean} [excludeUnavailableTimeSlots]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet(dealId: string, packageId: string, year?: number, month?: number, timeZone?: string, isExternal?: boolean, isOnline?: boolean, appointmentIdExcluded?: string, excludeUnavailableTimeSlots?: boolean, options?: any): AxiosPromise<GetAppointmentTimetablesResponseModel>;
    /**
     *
     * @summary Get DealPackage.
     * @param {string} dealId
     * @param {string} packageId
     * @param {string} [languageCode]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdPackagesPackageIdGet(dealId: string, packageId: string, languageCode?: string, options?: any): AxiosPromise<DealPackageModel>;
    /**
     *
     * @summary Get all DealService.
     * @param {string} dealId
     * @param {string} [languageCode]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdServicesGet(dealId: string, languageCode?: string, page?: number, limit?: number, lastRetrieved?: Date, options?: any): AxiosPromise<DealServicesModel>;
    /**
     *
     * @summary Get DealService.
     * @param {string} dealId
     * @param {string} serviceId
     * @param {string} [languageCode]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsDealIdServicesServiceIdGet(dealId: string, serviceId: string, languageCode?: string, options?: any): AxiosPromise<DealServiceModel>;
    /**
     *
     * @summary Get all deals.
     * @param {string} [id]
     * @param {string} [name]
     * @param {MarketingType} [marketingType]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [specialtyId]
     * @param {string} [specialtyName]
     * @param {string} [specialtyTypeId]
     * @param {string} [specialtyTypeName]
     * @param {string} [serviceId]
     * @param {string} [serviceName]
     * @param {string} [exceptHospitalId]
     * @param {string} [exceptDealId]
     * @param {Array<string>} [ids]
     * @param {number} [serviceDuration]
     * @param {string} [languageCode]
     * @param {boolean} [showHidden]
     * @param {boolean} [returnDefaultValue]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsGet(id?: string, name?: string, marketingType?: MarketingType, countryId?: string, hospitalId?: string, hospitalName?: string, specialtyId?: string, specialtyName?: string, specialtyTypeId?: string, specialtyTypeName?: string, serviceId?: string, serviceName?: string, exceptHospitalId?: string, exceptDealId?: string, ids?: Array<string>, serviceDuration?: number, languageCode?: string, showHidden?: boolean, returnDefaultValue?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: any): AxiosPromise<DealsModel>;
    /**
     *
     * @summary Get all deals.
     * @param {string} [id]
     * @param {string} [name]
     * @param {MarketingType} [marketingType]
     * @param {string} [countryId]
     * @param {string} [hospitalId]
     * @param {string} [hospitalName]
     * @param {string} [specialtyId]
     * @param {string} [specialtyName]
     * @param {string} [specialtyTypeId]
     * @param {string} [specialtyTypeName]
     * @param {string} [serviceId]
     * @param {string} [serviceName]
     * @param {string} [exceptHospitalId]
     * @param {string} [exceptDealId]
     * @param {Array<string>} [ids]
     * @param {number} [serviceDuration]
     * @param {string} [languageCode]
     * @param {boolean} [showHidden]
     * @param {boolean} [returnDefaultValue]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsSimpleGet(id?: string, name?: string, marketingType?: MarketingType, countryId?: string, hospitalId?: string, hospitalName?: string, specialtyId?: string, specialtyName?: string, specialtyTypeId?: string, specialtyTypeName?: string, serviceId?: string, serviceName?: string, exceptHospitalId?: string, exceptDealId?: string, ids?: Array<string>, serviceDuration?: number, languageCode?: string, showHidden?: boolean, returnDefaultValue?: boolean, page?: number, limit?: number, lastRetrieved?: Date, options?: any): AxiosPromise<DealsSimpleModel>;
    /**
     *
     * @summary Get deal by slug.
     * @param {string} slug
     * @param {string} [languageCode]
     * @param {boolean} [returnDefaultValue]
     * @param {string} [previewSecret]
     * @param {string} [hospitalId]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2DealsSlugGet(slug: string, languageCode?: string, returnDefaultValue?: boolean, previewSecret?: string, hospitalId?: string, options?: any): AxiosPromise<DealModel>;
};
/**
 * Request parameters for apiV2DealsDealIdGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsDealIdGetRequest
 */
export interface DealsApiApiV2DealsDealIdGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdGet
     */
    readonly dealId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdGet
     */
    readonly languageCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdGet
     */
    readonly returnDefaultValue?: boolean;
}
/**
 * Request parameters for apiV2DealsDealIdPackagesGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsDealIdPackagesGetRequest
 */
export interface DealsApiApiV2DealsDealIdPackagesGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly dealId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly relatedDealPackageId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly dealName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly name?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly countryId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly hospitalId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly hospitalName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly languageCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly appointmentChEnabled?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly appointmentSaasEnabled?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly showHidden?: boolean;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly page?: number;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly limit?: number;
    /**
     *
     * @type {Date}
     * @memberof DealsApiApiV2DealsDealIdPackagesGet
     */
    readonly lastRetrieved?: Date;
}
/**
 * Request parameters for apiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGetRequest
 */
export interface DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly dealId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly packageId: string;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly year?: number;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly month?: number;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly timeZone?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly isExternal?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly isOnline?: boolean;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly appointmentIdExcluded?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet
     */
    readonly excludeUnavailableTimeSlots?: boolean;
}
/**
 * Request parameters for apiV2DealsDealIdPackagesPackageIdGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsDealIdPackagesPackageIdGetRequest
 */
export interface DealsApiApiV2DealsDealIdPackagesPackageIdGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdGet
     */
    readonly dealId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdGet
     */
    readonly packageId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdPackagesPackageIdGet
     */
    readonly languageCode?: string;
}
/**
 * Request parameters for apiV2DealsDealIdServicesGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsDealIdServicesGetRequest
 */
export interface DealsApiApiV2DealsDealIdServicesGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdServicesGet
     */
    readonly dealId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdServicesGet
     */
    readonly languageCode?: string;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsDealIdServicesGet
     */
    readonly page?: number;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsDealIdServicesGet
     */
    readonly limit?: number;
    /**
     *
     * @type {Date}
     * @memberof DealsApiApiV2DealsDealIdServicesGet
     */
    readonly lastRetrieved?: Date;
}
/**
 * Request parameters for apiV2DealsDealIdServicesServiceIdGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsDealIdServicesServiceIdGetRequest
 */
export interface DealsApiApiV2DealsDealIdServicesServiceIdGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdServicesServiceIdGet
     */
    readonly dealId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdServicesServiceIdGet
     */
    readonly serviceId: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsDealIdServicesServiceIdGet
     */
    readonly languageCode?: string;
}
/**
 * Request parameters for apiV2DealsGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsGetRequest
 */
export interface DealsApiApiV2DealsGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly id?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly name?: string;
    /**
     *
     * @type {MarketingType}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly marketingType?: MarketingType;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly countryId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly hospitalId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly hospitalName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly specialtyId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly specialtyName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly specialtyTypeId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly specialtyTypeName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly serviceId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly serviceName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly exceptHospitalId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly exceptDealId?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly ids?: Array<string>;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly serviceDuration?: number;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly languageCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly showHidden?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly returnDefaultValue?: boolean;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly page?: number;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly limit?: number;
    /**
     *
     * @type {Date}
     * @memberof DealsApiApiV2DealsGet
     */
    readonly lastRetrieved?: Date;
}
/**
 * Request parameters for apiV2DealsSimpleGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsSimpleGetRequest
 */
export interface DealsApiApiV2DealsSimpleGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly id?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly name?: string;
    /**
     *
     * @type {MarketingType}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly marketingType?: MarketingType;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly countryId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly hospitalId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly hospitalName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly specialtyId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly specialtyName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly specialtyTypeId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly specialtyTypeName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly serviceId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly serviceName?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly exceptHospitalId?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly exceptDealId?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly ids?: Array<string>;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly serviceDuration?: number;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly languageCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly showHidden?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly returnDefaultValue?: boolean;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly page?: number;
    /**
     *
     * @type {number}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly limit?: number;
    /**
     *
     * @type {Date}
     * @memberof DealsApiApiV2DealsSimpleGet
     */
    readonly lastRetrieved?: Date;
}
/**
 * Request parameters for apiV2DealsSlugGet operation in DealsApi.
 * @export
 * @interface DealsApiApiV2DealsSlugGetRequest
 */
export interface DealsApiApiV2DealsSlugGetRequest {
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSlugGet
     */
    readonly slug: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSlugGet
     */
    readonly languageCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof DealsApiApiV2DealsSlugGet
     */
    readonly returnDefaultValue?: boolean;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSlugGet
     */
    readonly previewSecret?: string;
    /**
     *
     * @type {string}
     * @memberof DealsApiApiV2DealsSlugGet
     */
    readonly hospitalId?: string;
}
/**
 * DealsApi - object-oriented interface
 * @export
 * @class DealsApi
 * @extends {BaseAPI}
 */
export declare class DealsApi extends BaseAPI {
    /**
     *
     * @summary Get deal.
     * @param {DealsApiApiV2DealsDealIdGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsDealIdGet(requestParameters: DealsApiApiV2DealsDealIdGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealModel, any>>;
    /**
     *
     * @summary Get all DealPackage.
     * @param {DealsApiApiV2DealsDealIdPackagesGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsDealIdPackagesGet(requestParameters: DealsApiApiV2DealsDealIdPackagesGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealPackagesModel, any>>;
    /**
     *
     * @summary Get DealPackageAppointmentTimetables
     * @param {DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGet(requestParameters: DealsApiApiV2DealsDealIdPackagesPackageIdAppointmenttimetablesGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GetAppointmentTimetablesResponseModel, any>>;
    /**
     *
     * @summary Get DealPackage.
     * @param {DealsApiApiV2DealsDealIdPackagesPackageIdGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsDealIdPackagesPackageIdGet(requestParameters: DealsApiApiV2DealsDealIdPackagesPackageIdGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealPackageModel, any>>;
    /**
     *
     * @summary Get all DealService.
     * @param {DealsApiApiV2DealsDealIdServicesGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsDealIdServicesGet(requestParameters: DealsApiApiV2DealsDealIdServicesGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealServicesModel, any>>;
    /**
     *
     * @summary Get DealService.
     * @param {DealsApiApiV2DealsDealIdServicesServiceIdGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsDealIdServicesServiceIdGet(requestParameters: DealsApiApiV2DealsDealIdServicesServiceIdGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealServiceModel, any>>;
    /**
     *
     * @summary Get all deals.
     * @param {DealsApiApiV2DealsGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsGet(requestParameters?: DealsApiApiV2DealsGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealsModel, any>>;
    /**
     *
     * @summary Get all deals.
     * @param {DealsApiApiV2DealsSimpleGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsSimpleGet(requestParameters?: DealsApiApiV2DealsSimpleGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealsSimpleModel, any>>;
    /**
     *
     * @summary Get deal by slug.
     * @param {DealsApiApiV2DealsSlugGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof DealsApi
     */
    apiV2DealsSlugGet(requestParameters: DealsApiApiV2DealsSlugGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DealModel, any>>;
}
//# sourceMappingURL=deals-api.d.ts.map