/**
 * 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 { OrgParameter } from '../models';
/**
 * OrganizationParameterApi - axios parameter creator
 * @export
 */
export declare const OrganizationParameterApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Batch update parameters of an organization
     * @summary Batch update parameters of an organization
     * @param {string} orgName The name of the organization
     * @param {Array<OrgParameter>} orgParameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchUpdateOrgParameters: (orgName: string, orgParameter: Array<OrgParameter>, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary Get a parameter of an organization
     * @param {string} orgName The name of the organization
     * @param {string} parameterName The name of the parameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getOrgParameter: (orgName: string, parameterName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     *
     * @summary List parameters of an organization
     * @param {string} orgName The name of the organization
     * @param {string} [category] the category of the parameters
     * @param {string} [name] the name of the parameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listOrgParameters: (orgName: string, category?: string, name?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update a parameter of an organization
     * @summary Update a parameter of an organization
     * @param {string} orgName The name of the organization
     * @param {string} parameterName The name of the parameter
     * @param {OrgParameter} orgParameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    patchOrgParameter: (orgName: string, parameterName: string, orgParameter: OrgParameter, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * OrganizationParameterApi - functional programming interface
 * @export
 */
export declare const OrganizationParameterApiFp: (configuration?: Configuration) => {
    /**
     * Batch update parameters of an organization
     * @summary Batch update parameters of an organization
     * @param {string} orgName The name of the organization
     * @param {Array<OrgParameter>} orgParameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchUpdateOrgParameters(orgName: string, orgParameter: Array<OrgParameter>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<OrgParameter>>>;
    /**
     *
     * @summary Get a parameter of an organization
     * @param {string} orgName The name of the organization
     * @param {string} parameterName The name of the parameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getOrgParameter(orgName: string, parameterName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OrgParameter>>;
    /**
     *
     * @summary List parameters of an organization
     * @param {string} orgName The name of the organization
     * @param {string} [category] the category of the parameters
     * @param {string} [name] the name of the parameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listOrgParameters(orgName: string, category?: string, name?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<OrgParameter>>>;
    /**
     * Update a parameter of an organization
     * @summary Update a parameter of an organization
     * @param {string} orgName The name of the organization
     * @param {string} parameterName The name of the parameter
     * @param {OrgParameter} orgParameter
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    patchOrgParameter(orgName: string, parameterName: string, orgParameter: OrgParameter, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OrgParameter>>;
};
/**
 * OrganizationParameterApi - factory interface
 * @export
 */
export declare const OrganizationParameterApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Batch update parameters of an organization
     * @summary Batch update parameters of an organization
     * @param {OrganizationParameterApiBatchUpdateOrgParametersRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchUpdateOrgParameters(requestParameters: OrganizationParameterApiBatchUpdateOrgParametersRequest, options?: RawAxiosRequestConfig): AxiosPromise<Array<OrgParameter>>;
    /**
     *
     * @summary Get a parameter of an organization
     * @param {OrganizationParameterApiGetOrgParameterRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getOrgParameter(requestParameters: OrganizationParameterApiGetOrgParameterRequest, options?: RawAxiosRequestConfig): AxiosPromise<OrgParameter>;
    /**
     *
     * @summary List parameters of an organization
     * @param {OrganizationParameterApiListOrgParametersRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listOrgParameters(requestParameters: OrganizationParameterApiListOrgParametersRequest, options?: RawAxiosRequestConfig): AxiosPromise<Array<OrgParameter>>;
    /**
     * Update a parameter of an organization
     * @summary Update a parameter of an organization
     * @param {OrganizationParameterApiPatchOrgParameterRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    patchOrgParameter(requestParameters: OrganizationParameterApiPatchOrgParameterRequest, options?: RawAxiosRequestConfig): AxiosPromise<OrgParameter>;
};
/**
 * OrganizationParameterApi - interface
 * @export
 * @interface OrganizationParameterApi
 */
export interface OrganizationParameterApiInterface {
    /**
     * Batch update parameters of an organization
     * @summary Batch update parameters of an organization
     * @param {OrganizationParameterApiBatchUpdateOrgParametersRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApiInterface
     */
    batchUpdateOrgParameters(requestParameters: OrganizationParameterApiBatchUpdateOrgParametersRequest, options?: RawAxiosRequestConfig): AxiosPromise<Array<OrgParameter>>;
    /**
     *
     * @summary Get a parameter of an organization
     * @param {OrganizationParameterApiGetOrgParameterRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApiInterface
     */
    getOrgParameter(requestParameters: OrganizationParameterApiGetOrgParameterRequest, options?: RawAxiosRequestConfig): AxiosPromise<OrgParameter>;
    /**
     *
     * @summary List parameters of an organization
     * @param {OrganizationParameterApiListOrgParametersRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApiInterface
     */
    listOrgParameters(requestParameters: OrganizationParameterApiListOrgParametersRequest, options?: RawAxiosRequestConfig): AxiosPromise<Array<OrgParameter>>;
    /**
     * Update a parameter of an organization
     * @summary Update a parameter of an organization
     * @param {OrganizationParameterApiPatchOrgParameterRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApiInterface
     */
    patchOrgParameter(requestParameters: OrganizationParameterApiPatchOrgParameterRequest, options?: RawAxiosRequestConfig): AxiosPromise<OrgParameter>;
}
/**
 * Request parameters for batchUpdateOrgParameters operation in OrganizationParameterApi.
 * @export
 * @interface OrganizationParameterApiBatchUpdateOrgParametersRequest
 */
export interface OrganizationParameterApiBatchUpdateOrgParametersRequest {
    /**
     * The name of the organization
     * @type {string}
     * @memberof OrganizationParameterApiBatchUpdateOrgParameters
     */
    readonly orgName: string;
    /**
     *
     * @type {Array<OrgParameter>}
     * @memberof OrganizationParameterApiBatchUpdateOrgParameters
     */
    readonly orgParameter: Array<OrgParameter>;
}
/**
 * Request parameters for getOrgParameter operation in OrganizationParameterApi.
 * @export
 * @interface OrganizationParameterApiGetOrgParameterRequest
 */
export interface OrganizationParameterApiGetOrgParameterRequest {
    /**
     * The name of the organization
     * @type {string}
     * @memberof OrganizationParameterApiGetOrgParameter
     */
    readonly orgName: string;
    /**
     * The name of the parameter
     * @type {string}
     * @memberof OrganizationParameterApiGetOrgParameter
     */
    readonly parameterName: string;
}
/**
 * Request parameters for listOrgParameters operation in OrganizationParameterApi.
 * @export
 * @interface OrganizationParameterApiListOrgParametersRequest
 */
export interface OrganizationParameterApiListOrgParametersRequest {
    /**
     * The name of the organization
     * @type {string}
     * @memberof OrganizationParameterApiListOrgParameters
     */
    readonly orgName: string;
    /**
     * the category of the parameters
     * @type {string}
     * @memberof OrganizationParameterApiListOrgParameters
     */
    readonly category?: string;
    /**
     * the name of the parameter
     * @type {string}
     * @memberof OrganizationParameterApiListOrgParameters
     */
    readonly name?: string;
}
/**
 * Request parameters for patchOrgParameter operation in OrganizationParameterApi.
 * @export
 * @interface OrganizationParameterApiPatchOrgParameterRequest
 */
export interface OrganizationParameterApiPatchOrgParameterRequest {
    /**
     * The name of the organization
     * @type {string}
     * @memberof OrganizationParameterApiPatchOrgParameter
     */
    readonly orgName: string;
    /**
     * The name of the parameter
     * @type {string}
     * @memberof OrganizationParameterApiPatchOrgParameter
     */
    readonly parameterName: string;
    /**
     *
     * @type {OrgParameter}
     * @memberof OrganizationParameterApiPatchOrgParameter
     */
    readonly orgParameter: OrgParameter;
}
/**
 * OrganizationParameterApi - object-oriented interface
 * @export
 * @class OrganizationParameterApi
 * @extends {BaseAPI}
 */
export declare class OrganizationParameterApi extends BaseAPI implements OrganizationParameterApiInterface {
    /**
     * Batch update parameters of an organization
     * @summary Batch update parameters of an organization
     * @param {OrganizationParameterApiBatchUpdateOrgParametersRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApi
     */
    batchUpdateOrgParameters(requestParameters: OrganizationParameterApiBatchUpdateOrgParametersRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OrgParameter[], any, {}>>;
    /**
     *
     * @summary Get a parameter of an organization
     * @param {OrganizationParameterApiGetOrgParameterRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApi
     */
    getOrgParameter(requestParameters: OrganizationParameterApiGetOrgParameterRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OrgParameter, any, {}>>;
    /**
     *
     * @summary List parameters of an organization
     * @param {OrganizationParameterApiListOrgParametersRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApi
     */
    listOrgParameters(requestParameters: OrganizationParameterApiListOrgParametersRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OrgParameter[], any, {}>>;
    /**
     * Update a parameter of an organization
     * @summary Update a parameter of an organization
     * @param {OrganizationParameterApiPatchOrgParameterRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OrganizationParameterApi
     */
    patchOrgParameter(requestParameters: OrganizationParameterApiPatchOrgParameterRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OrgParameter, any, {}>>;
}
//# sourceMappingURL=organization-parameter-api.d.ts.map