/**
 * KubeBlocks Cloud Internal API
 * The Internal API is using for interaction of ApeCloud platform microservices.
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * 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 { PostableAlert } from '../models';
/**
 * AlertApi - axios parameter creator
 * @export
 */
export declare const AlertApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary Proxy alert webhook
     * @param {string} strategyId id of the alert strategyId
     * @param {string} orgName name of the org
     * @param {PostableAlert} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    alertWebhookProxy: (strategyId: string, orgName: string, body: PostableAlert, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Get alert config
     * @summary Get internal alert config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getInternalAlertConfig: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Record alert webhook
     * @summary Record alert webhook
     * @param {PostableAlert} postableAlert
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    recordAlertWebhook: (postableAlert: PostableAlert, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * AlertApi - functional programming interface
 * @export
 */
export declare const AlertApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary Proxy alert webhook
     * @param {string} strategyId id of the alert strategyId
     * @param {string} orgName name of the org
     * @param {PostableAlert} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    alertWebhookProxy(strategyId: string, orgName: string, body: PostableAlert, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Get alert config
     * @summary Get internal alert config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getInternalAlertConfig(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Record alert webhook
     * @summary Record alert webhook
     * @param {PostableAlert} postableAlert
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    recordAlertWebhook(postableAlert: PostableAlert, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
};
/**
 * AlertApi - factory interface
 * @export
 */
export declare const AlertApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary Proxy alert webhook
     * @param {AlertApiAlertWebhookProxyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    alertWebhookProxy(requestParameters: AlertApiAlertWebhookProxyRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Get alert config
     * @summary Get internal alert config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getInternalAlertConfig(options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Record alert webhook
     * @summary Record alert webhook
     * @param {AlertApiRecordAlertWebhookRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    recordAlertWebhook(requestParameters: AlertApiRecordAlertWebhookRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
};
/**
 * AlertApi - interface
 * @export
 * @interface AlertApi
 */
export interface AlertApiInterface {
    /**
     *
     * @summary Proxy alert webhook
     * @param {AlertApiAlertWebhookProxyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertApiInterface
     */
    alertWebhookProxy(requestParameters: AlertApiAlertWebhookProxyRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Get alert config
     * @summary Get internal alert config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertApiInterface
     */
    getInternalAlertConfig(options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Record alert webhook
     * @summary Record alert webhook
     * @param {AlertApiRecordAlertWebhookRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertApiInterface
     */
    recordAlertWebhook(requestParameters: AlertApiRecordAlertWebhookRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
}
/**
 * Request parameters for alertWebhookProxy operation in AlertApi.
 * @export
 * @interface AlertApiAlertWebhookProxyRequest
 */
export interface AlertApiAlertWebhookProxyRequest {
    /**
     * id of the alert strategyId
     * @type {string}
     * @memberof AlertApiAlertWebhookProxy
     */
    readonly strategyId: string;
    /**
     * name of the org
     * @type {string}
     * @memberof AlertApiAlertWebhookProxy
     */
    readonly orgName: string;
    /**
     *
     * @type {PostableAlert}
     * @memberof AlertApiAlertWebhookProxy
     */
    readonly body: PostableAlert;
}
/**
 * Request parameters for recordAlertWebhook operation in AlertApi.
 * @export
 * @interface AlertApiRecordAlertWebhookRequest
 */
export interface AlertApiRecordAlertWebhookRequest {
    /**
     *
     * @type {PostableAlert}
     * @memberof AlertApiRecordAlertWebhook
     */
    readonly postableAlert: PostableAlert;
}
/**
 * AlertApi - object-oriented interface
 * @export
 * @class AlertApi
 * @extends {BaseAPI}
 */
export declare class AlertApi extends BaseAPI implements AlertApiInterface {
    /**
     *
     * @summary Proxy alert webhook
     * @param {AlertApiAlertWebhookProxyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertApi
     */
    alertWebhookProxy(requestParameters: AlertApiAlertWebhookProxyRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Get alert config
     * @summary Get internal alert config
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertApi
     */
    getInternalAlertConfig(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Record alert webhook
     * @summary Record alert webhook
     * @param {AlertApiRecordAlertWebhookRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AlertApi
     */
    recordAlertWebhook(requestParameters: AlertApiRecordAlertWebhookRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
}
//# sourceMappingURL=alert-api.d.ts.map