import { BaseAPI } from '../../../../common/BaseAPI';
import Configuration from '../../../../common/Configuration';
import AzureAccountRegionSettings from '../../../../models/AzureAccountRegionSettings';
import AzureCloudRegion from '../../../../models/AzureCloudRegion';
import PaginationResponse from '../../../../models/PaginationResponse';
import { AzureAccountRegionSettingsListQueryParams, AzureAccountRegionSettingsListQueryParamsBuilder } from './AzureAccountRegionSettingsListQueryParams';
/**
 * RegionsApi - object-oriented interface
 * @export
 * @class RegionsApi
 * @extends {BaseAPI}
 */
export default class RegionsApi extends BaseAPI {
    constructor(configuration: Configuration);
    /**
     * @summary Add Azure Region Setting
     * @param {string} infrastructureId Id of the Azure account
     * @param {AzureCloudRegion} region Azure region.
     * @param {AzureAccountRegionSettings} azureAccountRegionSettings The Azure Region Settings to be added
     * @throws {BitmovinError}
     * @memberof RegionsApi
     */
    create(infrastructureId: string, region: AzureCloudRegion, azureAccountRegionSettings?: AzureAccountRegionSettings): Promise<AzureAccountRegionSettings>;
    /**
     * @summary Delete Azure Region Settings
     * @param {string} infrastructureId Id of the Azure account
     * @param {AzureCloudRegion} region Azure region.
     * @throws {BitmovinError}
     * @memberof RegionsApi
     */
    delete(infrastructureId: string, region: AzureCloudRegion): Promise<AzureAccountRegionSettings>;
    /**
     * @summary Azure Region Settings Details
     * @param {string} infrastructureId Id of the Azure account
     * @param {AzureCloudRegion} region Azure region.
     * @throws {BitmovinError}
     * @memberof RegionsApi
     */
    get(infrastructureId: string, region: AzureCloudRegion): Promise<AzureAccountRegionSettings>;
    /**
     * @summary List Azure Region Settings
     * @param {string} infrastructureId Id of the Azure account
     * @param {*} [queryParameters] query parameters for filtering, sorting and pagination
     * @throws {BitmovinError}
     * @memberof RegionsApi
     */
    list(infrastructureId: string, queryParameters?: AzureAccountRegionSettingsListQueryParams | ((q: AzureAccountRegionSettingsListQueryParamsBuilder) => AzureAccountRegionSettingsListQueryParamsBuilder)): Promise<PaginationResponse<AzureAccountRegionSettings>>;
}
