/**
 * 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 { CurationCategoriesModel } from '../models';
import { CurationModel } from '../models';
import { CurationsByCategoryModel } from '../models';
/**
 * CurationsApi - axios parameter creator
 * @export
 */
export declare const CurationsApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary Get CurationCategories
     * @param {string} languageCode
     * @param {string} [curationCategoryId]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoriesGet: (languageCode: string, curationCategoryId?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get Curations by single Category
     * @param {string} curationCategoryId
     * @param {string} languageCode
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoryCurationCategoryIdGet: (curationCategoryId: string, languageCode: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get Curations by mutiple Categories with limit
     * @param {Array<string>} curationCategoryIds
     * @param {string} languageCode
     * @param {number} [curationLimit]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoryGet: (curationCategoryIds: Array<string>, languageCode: string, curationLimit?: number, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get Curation by Id
     * @param {string} curationId
     * @param {string} languageCode
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCurationIdGet: (curationId: string, languageCode: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * CurationsApi - functional programming interface
 * @export
 */
export declare const CurationsApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary Get CurationCategories
     * @param {string} languageCode
     * @param {string} [curationCategoryId]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoriesGet(languageCode: string, curationCategoryId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CurationCategoriesModel>>;
    /**
     *
     * @summary Get Curations by single Category
     * @param {string} curationCategoryId
     * @param {string} languageCode
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoryCurationCategoryIdGet(curationCategoryId: string, languageCode: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CurationsByCategoryModel>>;
    /**
     *
     * @summary Get Curations by mutiple Categories with limit
     * @param {Array<string>} curationCategoryIds
     * @param {string} languageCode
     * @param {number} [curationLimit]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoryGet(curationCategoryIds: Array<string>, languageCode: string, curationLimit?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<CurationsByCategoryModel>>>;
    /**
     *
     * @summary Get Curation by Id
     * @param {string} curationId
     * @param {string} languageCode
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCurationIdGet(curationId: string, languageCode: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CurationModel>>;
};
/**
 * CurationsApi - factory interface
 * @export
 */
export declare const CurationsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary Get CurationCategories
     * @param {string} languageCode
     * @param {string} [curationCategoryId]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoriesGet(languageCode: string, curationCategoryId?: string, options?: any): AxiosPromise<CurationCategoriesModel>;
    /**
     *
     * @summary Get Curations by single Category
     * @param {string} curationCategoryId
     * @param {string} languageCode
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoryCurationCategoryIdGet(curationCategoryId: string, languageCode: string, options?: any): AxiosPromise<CurationsByCategoryModel>;
    /**
     *
     * @summary Get Curations by mutiple Categories with limit
     * @param {Array<string>} curationCategoryIds
     * @param {string} languageCode
     * @param {number} [curationLimit]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCategoryGet(curationCategoryIds: Array<string>, languageCode: string, curationLimit?: number, options?: any): AxiosPromise<Array<CurationsByCategoryModel>>;
    /**
     *
     * @summary Get Curation by Id
     * @param {string} curationId
     * @param {string} languageCode
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV2CurationsCurationIdGet(curationId: string, languageCode: string, options?: any): AxiosPromise<CurationModel>;
};
/**
 * Request parameters for apiV2CurationsCategoriesGet operation in CurationsApi.
 * @export
 * @interface CurationsApiApiV2CurationsCategoriesGetRequest
 */
export interface CurationsApiApiV2CurationsCategoriesGetRequest {
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCategoriesGet
     */
    readonly languageCode: string;
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCategoriesGet
     */
    readonly curationCategoryId?: string;
}
/**
 * Request parameters for apiV2CurationsCategoryCurationCategoryIdGet operation in CurationsApi.
 * @export
 * @interface CurationsApiApiV2CurationsCategoryCurationCategoryIdGetRequest
 */
export interface CurationsApiApiV2CurationsCategoryCurationCategoryIdGetRequest {
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCategoryCurationCategoryIdGet
     */
    readonly curationCategoryId: string;
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCategoryCurationCategoryIdGet
     */
    readonly languageCode: string;
}
/**
 * Request parameters for apiV2CurationsCategoryGet operation in CurationsApi.
 * @export
 * @interface CurationsApiApiV2CurationsCategoryGetRequest
 */
export interface CurationsApiApiV2CurationsCategoryGetRequest {
    /**
     *
     * @type {Array<string>}
     * @memberof CurationsApiApiV2CurationsCategoryGet
     */
    readonly curationCategoryIds: Array<string>;
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCategoryGet
     */
    readonly languageCode: string;
    /**
     *
     * @type {number}
     * @memberof CurationsApiApiV2CurationsCategoryGet
     */
    readonly curationLimit?: number;
}
/**
 * Request parameters for apiV2CurationsCurationIdGet operation in CurationsApi.
 * @export
 * @interface CurationsApiApiV2CurationsCurationIdGetRequest
 */
export interface CurationsApiApiV2CurationsCurationIdGetRequest {
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCurationIdGet
     */
    readonly curationId: string;
    /**
     *
     * @type {string}
     * @memberof CurationsApiApiV2CurationsCurationIdGet
     */
    readonly languageCode: string;
}
/**
 * CurationsApi - object-oriented interface
 * @export
 * @class CurationsApi
 * @extends {BaseAPI}
 */
export declare class CurationsApi extends BaseAPI {
    /**
     *
     * @summary Get CurationCategories
     * @param {CurationsApiApiV2CurationsCategoriesGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof CurationsApi
     */
    apiV2CurationsCategoriesGet(requestParameters: CurationsApiApiV2CurationsCategoriesGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CurationCategoriesModel, any>>;
    /**
     *
     * @summary Get Curations by single Category
     * @param {CurationsApiApiV2CurationsCategoryCurationCategoryIdGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof CurationsApi
     */
    apiV2CurationsCategoryCurationCategoryIdGet(requestParameters: CurationsApiApiV2CurationsCategoryCurationCategoryIdGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CurationsByCategoryModel, any>>;
    /**
     *
     * @summary Get Curations by mutiple Categories with limit
     * @param {CurationsApiApiV2CurationsCategoryGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof CurationsApi
     */
    apiV2CurationsCategoryGet(requestParameters: CurationsApiApiV2CurationsCategoryGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CurationsByCategoryModel[], any>>;
    /**
     *
     * @summary Get Curation by Id
     * @param {CurationsApiApiV2CurationsCurationIdGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof CurationsApi
     */
    apiV2CurationsCurationIdGet(requestParameters: CurationsApiApiV2CurationsCurationIdGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CurationModel, any>>;
}
//# sourceMappingURL=curations-api.d.ts.map