/**
 * CloudHospital Admin Api
 * CloudHospital application with Swagger, Swashbuckle, and API versioning.
 *
 * The version of the OpenAPI document: 1
 * 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 { AppVersionModel } from '../models';
import { AppVersionsModel } from '../models';
import { CreateAppVersionCommand } from '../models';
import { Platform } from '../models';
import { UpdateAppVersionCommand } from '../models';
/**
 * AppVersionApi - axios parameter creator
 * @export
 */
export declare const AppVersionApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} [platform]
     * @param {string} [latestVersion]
     * @param {string} [minimumVersion]
     * @param {Date} [committedDate]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionGet: (platform?: Platform, latestVersion?: string, minimumVersion?: string, committedDate?: Date, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformDelete: (platform: Platform, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformGet: (platform: Platform, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {UpdateAppVersionCommand} [updateAppVersionCommand]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformPut: (platform: Platform, updateAppVersionCommand?: UpdateAppVersionCommand, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {CreateAppVersionCommand} [createAppVersionCommand]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPost: (createAppVersionCommand?: CreateAppVersionCommand, options?: AxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * AppVersionApi - functional programming interface
 * @export
 */
export declare const AppVersionApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} [platform]
     * @param {string} [latestVersion]
     * @param {string} [minimumVersion]
     * @param {Date} [committedDate]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionGet(platform?: Platform, latestVersion?: string, minimumVersion?: string, committedDate?: Date, page?: number, limit?: number, lastRetrieved?: Date, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AppVersionsModel>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformDelete(platform: Platform, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AppVersionModel>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformGet(platform: Platform, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AppVersionModel>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {UpdateAppVersionCommand} [updateAppVersionCommand]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformPut(platform: Platform, updateAppVersionCommand?: UpdateAppVersionCommand, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AppVersionModel>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {CreateAppVersionCommand} [createAppVersionCommand]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPost(createAppVersionCommand?: CreateAppVersionCommand, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AppVersionModel>>;
};
/**
 * AppVersionApi - factory interface
 * @export
 */
export declare const AppVersionApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} [platform]
     * @param {string} [latestVersion]
     * @param {string} [minimumVersion]
     * @param {Date} [committedDate]
     * @param {number} [page]
     * @param {number} [limit]
     * @param {Date} [lastRetrieved]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionGet(platform?: Platform, latestVersion?: string, minimumVersion?: string, committedDate?: Date, page?: number, limit?: number, lastRetrieved?: Date, options?: any): AxiosPromise<AppVersionsModel>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformDelete(platform: Platform, options?: any): AxiosPromise<AppVersionModel>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformGet(platform: Platform, options?: any): AxiosPromise<AppVersionModel>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {Platform} platform
     * @param {UpdateAppVersionCommand} [updateAppVersionCommand]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPlatformPut(platform: Platform, updateAppVersionCommand?: UpdateAppVersionCommand, options?: any): AxiosPromise<AppVersionModel>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {CreateAppVersionCommand} [createAppVersionCommand]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiV1AppversionPost(createAppVersionCommand?: CreateAppVersionCommand, options?: any): AxiosPromise<AppVersionModel>;
};
/**
 * Request parameters for apiV1AppversionGet operation in AppVersionApi.
 * @export
 * @interface AppVersionApiApiV1AppversionGetRequest
 */
export interface AppVersionApiApiV1AppversionGetRequest {
    /**
     *
     * @type {Platform}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly platform?: Platform;
    /**
     *
     * @type {string}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly latestVersion?: string;
    /**
     *
     * @type {string}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly minimumVersion?: string;
    /**
     *
     * @type {Date}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly committedDate?: Date;
    /**
     *
     * @type {number}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly page?: number;
    /**
     *
     * @type {number}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly limit?: number;
    /**
     *
     * @type {Date}
     * @memberof AppVersionApiApiV1AppversionGet
     */
    readonly lastRetrieved?: Date;
}
/**
 * Request parameters for apiV1AppversionPlatformDelete operation in AppVersionApi.
 * @export
 * @interface AppVersionApiApiV1AppversionPlatformDeleteRequest
 */
export interface AppVersionApiApiV1AppversionPlatformDeleteRequest {
    /**
     *
     * @type {Platform}
     * @memberof AppVersionApiApiV1AppversionPlatformDelete
     */
    readonly platform: Platform;
}
/**
 * Request parameters for apiV1AppversionPlatformGet operation in AppVersionApi.
 * @export
 * @interface AppVersionApiApiV1AppversionPlatformGetRequest
 */
export interface AppVersionApiApiV1AppversionPlatformGetRequest {
    /**
     *
     * @type {Platform}
     * @memberof AppVersionApiApiV1AppversionPlatformGet
     */
    readonly platform: Platform;
}
/**
 * Request parameters for apiV1AppversionPlatformPut operation in AppVersionApi.
 * @export
 * @interface AppVersionApiApiV1AppversionPlatformPutRequest
 */
export interface AppVersionApiApiV1AppversionPlatformPutRequest {
    /**
     *
     * @type {Platform}
     * @memberof AppVersionApiApiV1AppversionPlatformPut
     */
    readonly platform: Platform;
    /**
     *
     * @type {UpdateAppVersionCommand}
     * @memberof AppVersionApiApiV1AppversionPlatformPut
     */
    readonly updateAppVersionCommand?: UpdateAppVersionCommand;
}
/**
 * Request parameters for apiV1AppversionPost operation in AppVersionApi.
 * @export
 * @interface AppVersionApiApiV1AppversionPostRequest
 */
export interface AppVersionApiApiV1AppversionPostRequest {
    /**
     *
     * @type {CreateAppVersionCommand}
     * @memberof AppVersionApiApiV1AppversionPost
     */
    readonly createAppVersionCommand?: CreateAppVersionCommand;
}
/**
 * AppVersionApi - object-oriented interface
 * @export
 * @class AppVersionApi
 * @extends {BaseAPI}
 */
export declare class AppVersionApi extends BaseAPI {
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {AppVersionApiApiV1AppversionGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AppVersionApi
     */
    apiV1AppversionGet(requestParameters?: AppVersionApiApiV1AppversionGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AppVersionsModel, any>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {AppVersionApiApiV1AppversionPlatformDeleteRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AppVersionApi
     */
    apiV1AppversionPlatformDelete(requestParameters: AppVersionApiApiV1AppversionPlatformDeleteRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AppVersionModel, any>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {AppVersionApiApiV1AppversionPlatformGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AppVersionApi
     */
    apiV1AppversionPlatformGet(requestParameters: AppVersionApiApiV1AppversionPlatformGetRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AppVersionModel, any>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {AppVersionApiApiV1AppversionPlatformPutRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AppVersionApi
     */
    apiV1AppversionPlatformPut(requestParameters: AppVersionApiApiV1AppversionPlatformPutRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AppVersionModel, any>>;
    /**
     *
     * @summary (Auth policies: RequireAdministratorRole)
     * @param {AppVersionApiApiV1AppversionPostRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AppVersionApi
     */
    apiV1AppversionPost(requestParameters?: AppVersionApiApiV1AppversionPostRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AppVersionModel, any>>;
}
//# sourceMappingURL=app-version-api.d.ts.map