import { AxiosResponse } from 'axios';
import { Config } from './config';
import Request from './request';
export interface Role {
    owner: string;
    name: string;
    createdTime: string;
    displayName: string;
    description: string;
    users?: string[];
    roles?: string[];
    domains?: string[];
    isEnabled?: boolean;
}
export declare class RoleSDK {
    private config;
    private readonly request;
    constructor(config: Config, request: Request);
    getRoles(): Promise<AxiosResponse<{
        data: Role[];
    }, any>>;
    getRole(id: string): Promise<AxiosResponse<{
        data: Role;
    }, any>>;
    modifyRole(method: string, role: Role): Promise<AxiosResponse<Record<string, unknown>, any>>;
    addRole(role: Role): Promise<AxiosResponse<Record<string, unknown>, any>>;
    updateRole(role: Role): Promise<AxiosResponse<Record<string, unknown>, any>>;
    deleteRole(role: Role): Promise<AxiosResponse<Record<string, unknown>, any>>;
}
