/**
 * 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 { AddAdministratorsUserRoleRequest } from '../models';
import type { AdminPermissionList } from '../models';
import type { AdminRole } from '../models';
import type { AdminRoleCreate } from '../models';
import type { AdminRoleList } from '../models';
import type { AdminRoleUpdate } from '../models';
import type { Password } from '../models';
import type { User } from '../models';
import type { UserCreate } from '../models';
import type { UserList } from '../models';
import type { UserUpdate } from '../models';
/**
 * AdministratorApi - axios parameter creator
 * @export
 */
export declare const AdministratorApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Assign a role to a specific administrator user
     * @summary Add a role to an administrator user
     * @param {string} administratorID
     * @param {AddAdministratorsUserRoleRequest} [addAdministratorsUserRoleRequest]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    addAdministratorsUserRole: (administratorID: string, addAdministratorsUserRoleRequest?: AddAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Add multiple permissions to a custom administrator role
     * @summary Batch add permissions to an administrator role
     * @param {string} roleName
     * @param {Array<string>} requestBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchAddAdministratorsRolePermissions: (roleName: string, requestBody: Array<string>, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Remove multiple permissions from a custom administrator role
     * @summary Batch remove permissions from an administrator role
     * @param {string} roleName
     * @param {Array<string>} requestBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchRemoveAdministratorsRolePermissions: (roleName: string, requestBody: Array<string>, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Create a new administrator
     * @summary Create a new administrator
     * @param {UserCreate} userCreate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createAdministrator: (userCreate: UserCreate, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Create a custom administrator role
     * @summary Create an administrator role
     * @param {AdminRoleCreate} adminRoleCreate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createAdministratorsRole: (adminRoleCreate: AdminRoleCreate, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * delete administrator
     * @summary delete administrator
     * @param {string} administratorID ID of the administrator
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteAdministrator: (administratorID: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Delete a custom administrator role
     * @summary Delete an administrator role by name
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteAdministratorsRoleByName: (roleName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Get detailed information about a specific administrator role
     * @summary Get an administrator role by name
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAdministratorsRoleByName: (roleName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List administrators
     * @summary List administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministrators: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List all permissions available for administrator roles
     * @summary List all permissions for administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsPermissions: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List all permissions assigned to a specific administrator role
     * @summary List permissions of an administrator role
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsRolePermissions: (roleName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List all administrator roles including built-in and custom roles
     * @summary List all administrator roles
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsRoles: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List all roles assigned to a specific administrator user
     * @summary List roles of an administrator user
     * @param {string} administratorID
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsUserRoles: (administratorID: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update the information of the specified administrator
     * @summary Update the information of the specified administrator
     * @param {string} administratorID ID of the administrator
     * @param {UserUpdate} userUpdate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    patchAdministrator: (administratorID: string, userUpdate: UserUpdate, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Remove a specific role from an administrator user
     * @summary Remove a role from an administrator user
     * @param {string} administratorID
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    removeAdministratorsUserRole: (administratorID: string, roleName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update administrator password
     * @summary Update administrator password
     * @param {string} administratorID ID of the administrator
     * @param {Password} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAdministratorPassword: (administratorID: string, body: Password, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update a custom administrator role
     * @summary Update an administrator role by name
     * @param {string} roleName
     * @param {AdminRoleUpdate} adminRoleUpdate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAdministratorsRoleByName: (roleName: string, adminRoleUpdate: AdminRoleUpdate, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * AdministratorApi - functional programming interface
 * @export
 */
export declare const AdministratorApiFp: (configuration?: Configuration) => {
    /**
     * Assign a role to a specific administrator user
     * @summary Add a role to an administrator user
     * @param {string} administratorID
     * @param {AddAdministratorsUserRoleRequest} [addAdministratorsUserRoleRequest]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    addAdministratorsUserRole(administratorID: string, addAdministratorsUserRoleRequest?: AddAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Add multiple permissions to a custom administrator role
     * @summary Batch add permissions to an administrator role
     * @param {string} roleName
     * @param {Array<string>} requestBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchAddAdministratorsRolePermissions(roleName: string, requestBody: Array<string>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Remove multiple permissions from a custom administrator role
     * @summary Batch remove permissions from an administrator role
     * @param {string} roleName
     * @param {Array<string>} requestBody
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchRemoveAdministratorsRolePermissions(roleName: string, requestBody: Array<string>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Create a new administrator
     * @summary Create a new administrator
     * @param {UserCreate} userCreate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createAdministrator(userCreate: UserCreate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<User>>;
    /**
     * Create a custom administrator role
     * @summary Create an administrator role
     * @param {AdminRoleCreate} adminRoleCreate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createAdministratorsRole(adminRoleCreate: AdminRoleCreate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminRole>>;
    /**
     * delete administrator
     * @summary delete administrator
     * @param {string} administratorID ID of the administrator
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteAdministrator(administratorID: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Delete a custom administrator role
     * @summary Delete an administrator role by name
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteAdministratorsRoleByName(roleName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Get detailed information about a specific administrator role
     * @summary Get an administrator role by name
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAdministratorsRoleByName(roleName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminRole>>;
    /**
     * List administrators
     * @summary List administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministrators(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<UserList>>;
    /**
     * List all permissions available for administrator roles
     * @summary List all permissions for administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsPermissions(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPermissionList>>;
    /**
     * List all permissions assigned to a specific administrator role
     * @summary List permissions of an administrator role
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsRolePermissions(roleName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPermissionList>>;
    /**
     * List all administrator roles including built-in and custom roles
     * @summary List all administrator roles
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsRoles(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminRoleList>>;
    /**
     * List all roles assigned to a specific administrator user
     * @summary List roles of an administrator user
     * @param {string} administratorID
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsUserRoles(administratorID: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminRoleList>>;
    /**
     * Update the information of the specified administrator
     * @summary Update the information of the specified administrator
     * @param {string} administratorID ID of the administrator
     * @param {UserUpdate} userUpdate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    patchAdministrator(administratorID: string, userUpdate: UserUpdate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<User>>;
    /**
     * Remove a specific role from an administrator user
     * @summary Remove a role from an administrator user
     * @param {string} administratorID
     * @param {string} roleName
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    removeAdministratorsUserRole(administratorID: string, roleName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Update administrator password
     * @summary Update administrator password
     * @param {string} administratorID ID of the administrator
     * @param {Password} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAdministratorPassword(administratorID: string, body: Password, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Update a custom administrator role
     * @summary Update an administrator role by name
     * @param {string} roleName
     * @param {AdminRoleUpdate} adminRoleUpdate
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAdministratorsRoleByName(roleName: string, adminRoleUpdate: AdminRoleUpdate, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminRole>>;
};
/**
 * AdministratorApi - factory interface
 * @export
 */
export declare const AdministratorApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Assign a role to a specific administrator user
     * @summary Add a role to an administrator user
     * @param {AdministratorApiAddAdministratorsUserRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    addAdministratorsUserRole(requestParameters: AdministratorApiAddAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Add multiple permissions to a custom administrator role
     * @summary Batch add permissions to an administrator role
     * @param {AdministratorApiBatchAddAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchAddAdministratorsRolePermissions(requestParameters: AdministratorApiBatchAddAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Remove multiple permissions from a custom administrator role
     * @summary Batch remove permissions from an administrator role
     * @param {AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    batchRemoveAdministratorsRolePermissions(requestParameters: AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Create a new administrator
     * @summary Create a new administrator
     * @param {AdministratorApiCreateAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createAdministrator(requestParameters: AdministratorApiCreateAdministratorRequest, options?: RawAxiosRequestConfig): AxiosPromise<User>;
    /**
     * Create a custom administrator role
     * @summary Create an administrator role
     * @param {AdministratorApiCreateAdministratorsRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createAdministratorsRole(requestParameters: AdministratorApiCreateAdministratorsRoleRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRole>;
    /**
     * delete administrator
     * @summary delete administrator
     * @param {AdministratorApiDeleteAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteAdministrator(requestParameters: AdministratorApiDeleteAdministratorRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Delete a custom administrator role
     * @summary Delete an administrator role by name
     * @param {AdministratorApiDeleteAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteAdministratorsRoleByName(requestParameters: AdministratorApiDeleteAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Get detailed information about a specific administrator role
     * @summary Get an administrator role by name
     * @param {AdministratorApiGetAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getAdministratorsRoleByName(requestParameters: AdministratorApiGetAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRole>;
    /**
     * List administrators
     * @summary List administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministrators(options?: RawAxiosRequestConfig): AxiosPromise<UserList>;
    /**
     * List all permissions available for administrator roles
     * @summary List all permissions for administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsPermissions(options?: RawAxiosRequestConfig): AxiosPromise<AdminPermissionList>;
    /**
     * List all permissions assigned to a specific administrator role
     * @summary List permissions of an administrator role
     * @param {AdministratorApiListAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsRolePermissions(requestParameters: AdministratorApiListAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminPermissionList>;
    /**
     * List all administrator roles including built-in and custom roles
     * @summary List all administrator roles
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsRoles(options?: RawAxiosRequestConfig): AxiosPromise<AdminRoleList>;
    /**
     * List all roles assigned to a specific administrator user
     * @summary List roles of an administrator user
     * @param {AdministratorApiListAdministratorsUserRolesRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listAdministratorsUserRoles(requestParameters: AdministratorApiListAdministratorsUserRolesRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRoleList>;
    /**
     * Update the information of the specified administrator
     * @summary Update the information of the specified administrator
     * @param {AdministratorApiPatchAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    patchAdministrator(requestParameters: AdministratorApiPatchAdministratorRequest, options?: RawAxiosRequestConfig): AxiosPromise<User>;
    /**
     * Remove a specific role from an administrator user
     * @summary Remove a role from an administrator user
     * @param {AdministratorApiRemoveAdministratorsUserRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    removeAdministratorsUserRole(requestParameters: AdministratorApiRemoveAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Update administrator password
     * @summary Update administrator password
     * @param {AdministratorApiUpdateAdministratorPasswordRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAdministratorPassword(requestParameters: AdministratorApiUpdateAdministratorPasswordRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Update a custom administrator role
     * @summary Update an administrator role by name
     * @param {AdministratorApiUpdateAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateAdministratorsRoleByName(requestParameters: AdministratorApiUpdateAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRole>;
};
/**
 * AdministratorApi - interface
 * @export
 * @interface AdministratorApi
 */
export interface AdministratorApiInterface {
    /**
     * Assign a role to a specific administrator user
     * @summary Add a role to an administrator user
     * @param {AdministratorApiAddAdministratorsUserRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    addAdministratorsUserRole(requestParameters: AdministratorApiAddAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Add multiple permissions to a custom administrator role
     * @summary Batch add permissions to an administrator role
     * @param {AdministratorApiBatchAddAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    batchAddAdministratorsRolePermissions(requestParameters: AdministratorApiBatchAddAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Remove multiple permissions from a custom administrator role
     * @summary Batch remove permissions from an administrator role
     * @param {AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    batchRemoveAdministratorsRolePermissions(requestParameters: AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Create a new administrator
     * @summary Create a new administrator
     * @param {AdministratorApiCreateAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    createAdministrator(requestParameters: AdministratorApiCreateAdministratorRequest, options?: RawAxiosRequestConfig): AxiosPromise<User>;
    /**
     * Create a custom administrator role
     * @summary Create an administrator role
     * @param {AdministratorApiCreateAdministratorsRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    createAdministratorsRole(requestParameters: AdministratorApiCreateAdministratorsRoleRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRole>;
    /**
     * delete administrator
     * @summary delete administrator
     * @param {AdministratorApiDeleteAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    deleteAdministrator(requestParameters: AdministratorApiDeleteAdministratorRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Delete a custom administrator role
     * @summary Delete an administrator role by name
     * @param {AdministratorApiDeleteAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    deleteAdministratorsRoleByName(requestParameters: AdministratorApiDeleteAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Get detailed information about a specific administrator role
     * @summary Get an administrator role by name
     * @param {AdministratorApiGetAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    getAdministratorsRoleByName(requestParameters: AdministratorApiGetAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRole>;
    /**
     * List administrators
     * @summary List administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    listAdministrators(options?: RawAxiosRequestConfig): AxiosPromise<UserList>;
    /**
     * List all permissions available for administrator roles
     * @summary List all permissions for administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    listAdministratorsPermissions(options?: RawAxiosRequestConfig): AxiosPromise<AdminPermissionList>;
    /**
     * List all permissions assigned to a specific administrator role
     * @summary List permissions of an administrator role
     * @param {AdministratorApiListAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    listAdministratorsRolePermissions(requestParameters: AdministratorApiListAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminPermissionList>;
    /**
     * List all administrator roles including built-in and custom roles
     * @summary List all administrator roles
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    listAdministratorsRoles(options?: RawAxiosRequestConfig): AxiosPromise<AdminRoleList>;
    /**
     * List all roles assigned to a specific administrator user
     * @summary List roles of an administrator user
     * @param {AdministratorApiListAdministratorsUserRolesRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    listAdministratorsUserRoles(requestParameters: AdministratorApiListAdministratorsUserRolesRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRoleList>;
    /**
     * Update the information of the specified administrator
     * @summary Update the information of the specified administrator
     * @param {AdministratorApiPatchAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    patchAdministrator(requestParameters: AdministratorApiPatchAdministratorRequest, options?: RawAxiosRequestConfig): AxiosPromise<User>;
    /**
     * Remove a specific role from an administrator user
     * @summary Remove a role from an administrator user
     * @param {AdministratorApiRemoveAdministratorsUserRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    removeAdministratorsUserRole(requestParameters: AdministratorApiRemoveAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Update administrator password
     * @summary Update administrator password
     * @param {AdministratorApiUpdateAdministratorPasswordRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    updateAdministratorPassword(requestParameters: AdministratorApiUpdateAdministratorPasswordRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * Update a custom administrator role
     * @summary Update an administrator role by name
     * @param {AdministratorApiUpdateAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApiInterface
     */
    updateAdministratorsRoleByName(requestParameters: AdministratorApiUpdateAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminRole>;
}
/**
 * Request parameters for addAdministratorsUserRole operation in AdministratorApi.
 * @export
 * @interface AdministratorApiAddAdministratorsUserRoleRequest
 */
export interface AdministratorApiAddAdministratorsUserRoleRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiAddAdministratorsUserRole
     */
    readonly administratorID: string;
    /**
     *
     * @type {AddAdministratorsUserRoleRequest}
     * @memberof AdministratorApiAddAdministratorsUserRole
     */
    readonly addAdministratorsUserRoleRequest?: AddAdministratorsUserRoleRequest;
}
/**
 * Request parameters for batchAddAdministratorsRolePermissions operation in AdministratorApi.
 * @export
 * @interface AdministratorApiBatchAddAdministratorsRolePermissionsRequest
 */
export interface AdministratorApiBatchAddAdministratorsRolePermissionsRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiBatchAddAdministratorsRolePermissions
     */
    readonly roleName: string;
    /**
     *
     * @type {Array<string>}
     * @memberof AdministratorApiBatchAddAdministratorsRolePermissions
     */
    readonly requestBody: Array<string>;
}
/**
 * Request parameters for batchRemoveAdministratorsRolePermissions operation in AdministratorApi.
 * @export
 * @interface AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest
 */
export interface AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiBatchRemoveAdministratorsRolePermissions
     */
    readonly roleName: string;
    /**
     *
     * @type {Array<string>}
     * @memberof AdministratorApiBatchRemoveAdministratorsRolePermissions
     */
    readonly requestBody: Array<string>;
}
/**
 * Request parameters for createAdministrator operation in AdministratorApi.
 * @export
 * @interface AdministratorApiCreateAdministratorRequest
 */
export interface AdministratorApiCreateAdministratorRequest {
    /**
     *
     * @type {UserCreate}
     * @memberof AdministratorApiCreateAdministrator
     */
    readonly userCreate: UserCreate;
}
/**
 * Request parameters for createAdministratorsRole operation in AdministratorApi.
 * @export
 * @interface AdministratorApiCreateAdministratorsRoleRequest
 */
export interface AdministratorApiCreateAdministratorsRoleRequest {
    /**
     *
     * @type {AdminRoleCreate}
     * @memberof AdministratorApiCreateAdministratorsRole
     */
    readonly adminRoleCreate: AdminRoleCreate;
}
/**
 * Request parameters for deleteAdministrator operation in AdministratorApi.
 * @export
 * @interface AdministratorApiDeleteAdministratorRequest
 */
export interface AdministratorApiDeleteAdministratorRequest {
    /**
     * ID of the administrator
     * @type {string}
     * @memberof AdministratorApiDeleteAdministrator
     */
    readonly administratorID: string;
}
/**
 * Request parameters for deleteAdministratorsRoleByName operation in AdministratorApi.
 * @export
 * @interface AdministratorApiDeleteAdministratorsRoleByNameRequest
 */
export interface AdministratorApiDeleteAdministratorsRoleByNameRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiDeleteAdministratorsRoleByName
     */
    readonly roleName: string;
}
/**
 * Request parameters for getAdministratorsRoleByName operation in AdministratorApi.
 * @export
 * @interface AdministratorApiGetAdministratorsRoleByNameRequest
 */
export interface AdministratorApiGetAdministratorsRoleByNameRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiGetAdministratorsRoleByName
     */
    readonly roleName: string;
}
/**
 * Request parameters for listAdministratorsRolePermissions operation in AdministratorApi.
 * @export
 * @interface AdministratorApiListAdministratorsRolePermissionsRequest
 */
export interface AdministratorApiListAdministratorsRolePermissionsRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiListAdministratorsRolePermissions
     */
    readonly roleName: string;
}
/**
 * Request parameters for listAdministratorsUserRoles operation in AdministratorApi.
 * @export
 * @interface AdministratorApiListAdministratorsUserRolesRequest
 */
export interface AdministratorApiListAdministratorsUserRolesRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiListAdministratorsUserRoles
     */
    readonly administratorID: string;
}
/**
 * Request parameters for patchAdministrator operation in AdministratorApi.
 * @export
 * @interface AdministratorApiPatchAdministratorRequest
 */
export interface AdministratorApiPatchAdministratorRequest {
    /**
     * ID of the administrator
     * @type {string}
     * @memberof AdministratorApiPatchAdministrator
     */
    readonly administratorID: string;
    /**
     *
     * @type {UserUpdate}
     * @memberof AdministratorApiPatchAdministrator
     */
    readonly userUpdate: UserUpdate;
}
/**
 * Request parameters for removeAdministratorsUserRole operation in AdministratorApi.
 * @export
 * @interface AdministratorApiRemoveAdministratorsUserRoleRequest
 */
export interface AdministratorApiRemoveAdministratorsUserRoleRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiRemoveAdministratorsUserRole
     */
    readonly administratorID: string;
    /**
     *
     * @type {string}
     * @memberof AdministratorApiRemoveAdministratorsUserRole
     */
    readonly roleName: string;
}
/**
 * Request parameters for updateAdministratorPassword operation in AdministratorApi.
 * @export
 * @interface AdministratorApiUpdateAdministratorPasswordRequest
 */
export interface AdministratorApiUpdateAdministratorPasswordRequest {
    /**
     * ID of the administrator
     * @type {string}
     * @memberof AdministratorApiUpdateAdministratorPassword
     */
    readonly administratorID: string;
    /**
     *
     * @type {Password}
     * @memberof AdministratorApiUpdateAdministratorPassword
     */
    readonly body: Password;
}
/**
 * Request parameters for updateAdministratorsRoleByName operation in AdministratorApi.
 * @export
 * @interface AdministratorApiUpdateAdministratorsRoleByNameRequest
 */
export interface AdministratorApiUpdateAdministratorsRoleByNameRequest {
    /**
     *
     * @type {string}
     * @memberof AdministratorApiUpdateAdministratorsRoleByName
     */
    readonly roleName: string;
    /**
     *
     * @type {AdminRoleUpdate}
     * @memberof AdministratorApiUpdateAdministratorsRoleByName
     */
    readonly adminRoleUpdate: AdminRoleUpdate;
}
/**
 * AdministratorApi - object-oriented interface
 * @export
 * @class AdministratorApi
 * @extends {BaseAPI}
 */
export declare class AdministratorApi extends BaseAPI implements AdministratorApiInterface {
    /**
     * Assign a role to a specific administrator user
     * @summary Add a role to an administrator user
     * @param {AdministratorApiAddAdministratorsUserRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    addAdministratorsUserRole(requestParameters: AdministratorApiAddAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Add multiple permissions to a custom administrator role
     * @summary Batch add permissions to an administrator role
     * @param {AdministratorApiBatchAddAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    batchAddAdministratorsRolePermissions(requestParameters: AdministratorApiBatchAddAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Remove multiple permissions from a custom administrator role
     * @summary Batch remove permissions from an administrator role
     * @param {AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    batchRemoveAdministratorsRolePermissions(requestParameters: AdministratorApiBatchRemoveAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Create a new administrator
     * @summary Create a new administrator
     * @param {AdministratorApiCreateAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    createAdministrator(requestParameters: AdministratorApiCreateAdministratorRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<User, any, {}>>;
    /**
     * Create a custom administrator role
     * @summary Create an administrator role
     * @param {AdministratorApiCreateAdministratorsRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    createAdministratorsRole(requestParameters: AdministratorApiCreateAdministratorsRoleRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminRole, any, {}>>;
    /**
     * delete administrator
     * @summary delete administrator
     * @param {AdministratorApiDeleteAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    deleteAdministrator(requestParameters: AdministratorApiDeleteAdministratorRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Delete a custom administrator role
     * @summary Delete an administrator role by name
     * @param {AdministratorApiDeleteAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    deleteAdministratorsRoleByName(requestParameters: AdministratorApiDeleteAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Get detailed information about a specific administrator role
     * @summary Get an administrator role by name
     * @param {AdministratorApiGetAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    getAdministratorsRoleByName(requestParameters: AdministratorApiGetAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminRole, any, {}>>;
    /**
     * List administrators
     * @summary List administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    listAdministrators(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<UserList, any, {}>>;
    /**
     * List all permissions available for administrator roles
     * @summary List all permissions for administrators
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    listAdministratorsPermissions(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPermissionList, any, {}>>;
    /**
     * List all permissions assigned to a specific administrator role
     * @summary List permissions of an administrator role
     * @param {AdministratorApiListAdministratorsRolePermissionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    listAdministratorsRolePermissions(requestParameters: AdministratorApiListAdministratorsRolePermissionsRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPermissionList, any, {}>>;
    /**
     * List all administrator roles including built-in and custom roles
     * @summary List all administrator roles
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    listAdministratorsRoles(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminRoleList, any, {}>>;
    /**
     * List all roles assigned to a specific administrator user
     * @summary List roles of an administrator user
     * @param {AdministratorApiListAdministratorsUserRolesRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    listAdministratorsUserRoles(requestParameters: AdministratorApiListAdministratorsUserRolesRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminRoleList, any, {}>>;
    /**
     * Update the information of the specified administrator
     * @summary Update the information of the specified administrator
     * @param {AdministratorApiPatchAdministratorRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    patchAdministrator(requestParameters: AdministratorApiPatchAdministratorRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<User, any, {}>>;
    /**
     * Remove a specific role from an administrator user
     * @summary Remove a role from an administrator user
     * @param {AdministratorApiRemoveAdministratorsUserRoleRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    removeAdministratorsUserRole(requestParameters: AdministratorApiRemoveAdministratorsUserRoleRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Update administrator password
     * @summary Update administrator password
     * @param {AdministratorApiUpdateAdministratorPasswordRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    updateAdministratorPassword(requestParameters: AdministratorApiUpdateAdministratorPasswordRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
    /**
     * Update a custom administrator role
     * @summary Update an administrator role by name
     * @param {AdministratorApiUpdateAdministratorsRoleByNameRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AdministratorApi
     */
    updateAdministratorsRoleByName(requestParameters: AdministratorApiUpdateAdministratorsRoleByNameRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminRole, any, {}>>;
}
//# sourceMappingURL=administrator-api.d.ts.map