import Service from "../../service";
import { CompanyUser } from '../../typings/management/models';
import { CreateCompanyUserRequest } from '../../typings/management/models';
import { CreateCompanyUserResponse } from '../../typings/management/models';
import { ListCompanyUsersResponse } from '../../typings/management/models';
import { UpdateCompanyUserRequest } from '../../typings/management/models';
import { IRequest } from "../../typings/requestOptions";
export default class UsersCompanyLevelApi extends Service {
    /**
     * @summary Get a list of users
     * @param companyId The unique identifier of the company account.
     * @param pageNumber The number of the page to return.
     * @param pageSize The number of items to have on a page. Maximum value is **100**. The default is **10** items on a page.
     */
    listUsers(companyId: string, requestOptions?: IRequest.Options): Promise<ListCompanyUsersResponse>;
    /**
     * @summary Get user details
     * @param companyId The unique identifier of the company account.
     * @param userId The unique identifier of the user.
     */
    getUserDetails(companyId: string, userId: string, requestOptions?: IRequest.Options): Promise<CompanyUser>;
    /**
     * @summary Update user details
     * @param companyId The unique identifier of the company account.
     * @param userId The unique identifier of the user.
     * @param updateCompanyUserRequest
     */
    updateUserDetails(companyId: string, userId: string, updateCompanyUserRequest: UpdateCompanyUserRequest, requestOptions?: IRequest.Options): Promise<CompanyUser>;
    /**
     * @summary Create a new user
     * @param companyId The unique identifier of the company account.
     * @param createCompanyUserRequest
     */
    createNewUser(companyId: string, createCompanyUserRequest: CreateCompanyUserRequest, requestOptions?: IRequest.Options): Promise<CreateCompanyUserResponse>;
}
