/**
 * Admin API
 * The Admin API is used to manage the ApeCloud platform.
 *
 * The version of the OpenAPI document: 1.0.0
 * Contact: support@apecloud.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 type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import { type RequestArgs, BaseAPI } from '../base';
import type { AlertConfig } from '../models';
import type { AlertSMSConfig } from '../models';
/**
 * AlertConfigApi - axios parameter creator
 * @export
 */
export declare const AlertConfigApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary Get alert SMS config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAlertSMSConfig: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get alert time zone config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAlertTZConfig: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Set alert timezone config
     * @param {AlertConfig} [alertConfig]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setAlertTZConfig: (alertConfig?: AlertConfig, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Update alert SMS config
     * @param {AlertSMSConfig} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAlertSMSConfig: (body: AlertSMSConfig, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * AlertConfigApi - functional programming interface
 * @export
 */
export declare const AlertConfigApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary Get alert SMS config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAlertSMSConfig(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AlertSMSConfig>>;
    /**
     *
     * @summary Get alert time zone config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAlertTZConfig(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AlertConfig>>;
    /**
     *
     * @summary Set alert timezone config
     * @param {AlertConfig} [alertConfig]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setAlertTZConfig(alertConfig?: AlertConfig, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AlertConfig>>;
    /**
     *
     * @summary Update alert SMS config
     * @param {AlertSMSConfig} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAlertSMSConfig(body: AlertSMSConfig, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AlertSMSConfig>>;
};
/**
 * AlertConfigApi - factory interface
 * @export
 */
export declare const AlertConfigApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary Get alert SMS config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAlertSMSConfig(options?: RawAxiosRequestConfig): AxiosPromise<AlertSMSConfig>;
    /**
     *
     * @summary Get alert time zone config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAlertTZConfig(options?: RawAxiosRequestConfig): AxiosPromise<AlertConfig>;
    /**
     *
     * @summary Set alert timezone config
     * @param {AlertConfigApiSetAlertTZConfigRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setAlertTZConfig(requestParameters?: AlertConfigApiSetAlertTZConfigRequest, options?: RawAxiosRequestConfig): AxiosPromise<AlertConfig>;
    /**
     *
     * @summary Update alert SMS config
     * @param {AlertConfigApiUpdateAlertSMSConfigRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAlertSMSConfig(requestParameters: AlertConfigApiUpdateAlertSMSConfigRequest, options?: RawAxiosRequestConfig): AxiosPromise<AlertSMSConfig>;
};
/**
 * AlertConfigApi - interface
 * @export
 * @interface AlertConfigApi
 */
export interface AlertConfigApiInterface {
    /**
     *
     * @summary Get alert SMS config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApiInterface
     */
    getAlertSMSConfig(options?: RawAxiosRequestConfig): AxiosPromise<AlertSMSConfig>;
    /**
     *
     * @summary Get alert time zone config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApiInterface
     */
    getAlertTZConfig(options?: RawAxiosRequestConfig): AxiosPromise<AlertConfig>;
    /**
     *
     * @summary Set alert timezone config
     * @param {AlertConfigApiSetAlertTZConfigRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApiInterface
     */
    setAlertTZConfig(requestParameters?: AlertConfigApiSetAlertTZConfigRequest, options?: RawAxiosRequestConfig): AxiosPromise<AlertConfig>;
    /**
     *
     * @summary Update alert SMS config
     * @param {AlertConfigApiUpdateAlertSMSConfigRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApiInterface
     */
    updateAlertSMSConfig(requestParameters: AlertConfigApiUpdateAlertSMSConfigRequest, options?: RawAxiosRequestConfig): AxiosPromise<AlertSMSConfig>;
}
/**
 * Request parameters for setAlertTZConfig operation in AlertConfigApi.
 * @export
 * @interface AlertConfigApiSetAlertTZConfigRequest
 */
export interface AlertConfigApiSetAlertTZConfigRequest {
    /**
     *
     * @type {AlertConfig}
     * @memberof AlertConfigApiSetAlertTZConfig
     */
    readonly alertConfig?: AlertConfig;
}
/**
 * Request parameters for updateAlertSMSConfig operation in AlertConfigApi.
 * @export
 * @interface AlertConfigApiUpdateAlertSMSConfigRequest
 */
export interface AlertConfigApiUpdateAlertSMSConfigRequest {
    /**
     *
     * @type {AlertSMSConfig}
     * @memberof AlertConfigApiUpdateAlertSMSConfig
     */
    readonly body: AlertSMSConfig;
}
/**
 * AlertConfigApi - object-oriented interface
 * @export
 * @class AlertConfigApi
 * @extends {BaseAPI}
 */
export declare class AlertConfigApi extends BaseAPI implements AlertConfigApiInterface {
    /**
     *
     * @summary Get alert SMS config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApi
     */
    getAlertSMSConfig(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AlertSMSConfig, any, {}>>;
    /**
     *
     * @summary Get alert time zone config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApi
     */
    getAlertTZConfig(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AlertConfig, any, {}>>;
    /**
     *
     * @summary Set alert timezone config
     * @param {AlertConfigApiSetAlertTZConfigRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApi
     */
    setAlertTZConfig(requestParameters?: AlertConfigApiSetAlertTZConfigRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AlertConfig, any, {}>>;
    /**
     *
     * @summary Update alert SMS config
     * @param {AlertConfigApiUpdateAlertSMSConfigRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertConfigApi
     */
    updateAlertSMSConfig(requestParameters: AlertConfigApiUpdateAlertSMSConfigRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AlertSMSConfig, any, {}>>;
}
//# sourceMappingURL=alert-config-api.d.ts.map