import { AttributePrivilege, AttributePrivilegesResponse, CreateSecurityGroupRequest, Privilege, SecurityGroup, SecurityGroupsResponse, TypePrivilege, TypePrivilegesResponse, TypesResponse, UsersResponse, UserWithOrganizations } from '../../interfaces'; import { Api } from '../api'; export declare const PRIVILEGES_API = "/service/nugeta"; export declare class Privileges { api: Api; constructor(api: Api); getSecurityGroups(organization: string, page?: number, perPage?: number): Promise>; getSecurityGroupUsers(groupId: string, filters: { page?: number; perPage?: number; 'user-name-prefix'?: string; }): Promise>; getSecurityGroupTypes(groupId: string, page?: number, perPage?: number): Promise>; getUserSecurityGroups(organization: string): Promise>; createSecurityGroup(data: CreateSecurityGroupRequest): Promise; }>>; cloneSecurityGroup(groupId: string, data: CreateSecurityGroupRequest, scope?: 'privileges' | 'users' | 'all'): Promise>; deleteSecurityGroup(groupId: string): Promise>; getSecurityGroupsUsersBatch(groupIds: string[]): Promise; }, { totalUsers: number; securityGroups: Record; }>>; addSecurityGroupUsers(groupId: string, users: { id: string; }[]): Promise>; deleteSecurityGroupUser(groupId: string, userId: string): Promise>; getAttributePrivileges(groupId: string, type: string, page?: number, perPage?: number): Promise>; setAttributePrivileges(groupId: string, privileges: AttributePrivilege[]): Promise>; getTypePrivileges(groupId: string, type: string, page?: number, perPage?: number): Promise>; createTypePrivileges(groupId: string, type: string, privileges: Privilege[]): Promise>; updateTypePrivileges(groupId: string, privilegeId: string, privileges: Privilege[]): Promise>; }