import { AuthManager } from '../auth/AuthManager';
import { UserDetails, UserListResponse, UserUpdateRequest, UserRemoveRequest, UserDevicesResponse, UserQueryParams } from './types';
export declare class UsersAPI {
    private readonly baseUrl;
    private readonly authManager;
    private readonly accountsServer;
    constructor(baseUrl: string, authManager: AuthManager, accountsServer: string);
    private getHeaders;
    /**
     * Get list of managed users
     */
    listUsers(params?: UserQueryParams): Promise<UserListResponse>;
    /**
     * Remove multiple users
     */
    removeUsers(request: UserRemoveRequest): Promise<void>;
    /**
     * Get details of a managed user
     */
    getUser(userId: string): Promise<UserDetails>;
    /**
     * Remove a specific user
     */
    removeUser(userId: string): Promise<void>;
    /**
     * Modify user details
     */
    updateUser(userId: string, request: UserUpdateRequest): Promise<void>;
    /**
     * Get device ids for a user
     */
    getUserDevices(params: {
        email_id?: string;
        domain_name?: string;
    }): Promise<UserDevicesResponse>;
}
