import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http'; import { Observable } from 'rxjs'; import { CompanyDtoPaginatedResponseApi } from '../model/companyDtoPaginatedResponse'; import { UserDtoPaginatedResponseApi } from '../model/userDtoPaginatedResponse'; import { Configuration } from '../configuration'; import * as i0 from "@angular/core"; export interface AdminGetCompaniesRequestParams { createdBy?: string; /** The fields to sort by. The Sort by allow to sort the results by specific properties, for example to sort the results by createdAt in scending order you can use the following syntaxt : ?sortBy=createdAt:asc if you want to apply multiple sort you can do it by adding more sortBy options like this : ?sortBy=createdAt:asc,questionId:desc */ sortBy?: string; /** An array of IDs used to filter the results to only include entities with the specified IDs */ ids?: string; domains?: string; /** The ID of the user sending the request. This field is required when using the API Key. It will be included in the JSON Web Token (JWT) when using Auth0 authentication. */ userId?: string; /** The page of results to retrieve. */ page?: number; /** The number of items per page to retrieve. */ itemsPerPage?: number; /** A date used to filter the results based on the createdAt field of the resources, only including resources created after this date. the operator used for this filter is >= (greater than or equal to) If the createdAfter field is provided with a date without a time, it will include resources created on the same day as the provided date, starting at midnight. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ createdAfter?: Date; /** A date used to filter the results based on the createdAt field of the resources, only including resources created before this date. the operator used for this filter is <= (less than or equal to) If the createdBefore field is provided with a date without a time, it will include resources created on the same day as the provided date, ending at midnight. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ createdBefore?: Date; } export interface AdminGetUsersRequestParams { createdBy?: string; /** The fields to sort by. The Sort by allow to sort the results by specific properties, for example to sort the results by createdAt in scending order you can use the following syntaxt : ?sortBy=createdAt:asc if you want to apply multiple sort you can do it by adding more sortBy options like this : ?sortBy=createdAt:asc,questionId:desc */ sortBy?: string; /** An array of IDs used to filter the results to only include entities with the specified IDs */ ids?: string; /** An array of team IDs used to filter the results. If no team IDs are provided, all users will be returned. The filter applied is an <b>OR</b>. <b>The query will return the users that have are assigned to the team.</b> */ teamIds?: string; /** Filter by email If email is provided, we only want to return users that have the provided email If email is not provided, we return all users */ emails?: string; /** Filter by companies If companies is provided, we only want to return users that are part of the companies If email is not provided, we return all users */ companyIds?: string; theOfficeCompanyId?: string; /** Filter by isCompanyAdmin If isCompanyAdmin is true, we only want to return users that have the company-admin role If isCompanyAdmin is false, we only want to return users that do not have the company-admin role If isCompanyAdmin is not provided, we return all users isCompanyAdmin is computed by checking if the user has the company-admin role */ isCompanyAdmin?: boolean; /** Filter by isActive If isActive is true, we only want to return users that are active If isActive is false, we only want to return users that are not active If isActive is not provided, we return all users isActive is computed by checking if the user has created any guesses in the past 7 days */ isActive?: boolean; /** Include soft deleted users If includeDeleted is true and authenticated user is company admin or alto admin, we want to return all users, including soft deleted users */ includeSoftDeleted?: boolean; /** Search by email If search is provided, we want to return all users that match the search criteria If search is not provided, we return all users Search is computed by checking if the user\'s email contains the search string */ search?: string; /** The ID of the company that the user sending the request is related to. This field is required when using the API Key. It will be included in the JSON Web Token (JWT) when using Auth0 authentication. */ companyId?: string; /** The ID of the user sending the request. This field is required when using the API Key. It will be included in the JSON Web Token (JWT) when using Auth0 authentication. */ userId?: string; /** The page of results to retrieve. */ page?: number; /** The number of items per page to retrieve. */ itemsPerPage?: number; /** A date used to filter the results based on the createdAt field of the resources, only including resources created after this date. the operator used for this filter is >= (greater than or equal to) If the createdAfter field is provided with a date without a time, it will include resources created on the same day as the provided date, starting at midnight. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ createdAfter?: Date; /** A date used to filter the results based on the createdAt field of the resources, only including resources created before this date. the operator used for this filter is <= (less than or equal to) If the createdBefore field is provided with a date without a time, it will include resources created on the same day as the provided date, ending at midnight. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ createdBefore?: Date; } export interface GetUsersFromTheOfficeCompanyIdRequestParams { theOfficeCompanyId: string; createdBy?: string; /** The fields to sort by. The Sort by allow to sort the results by specific properties, for example to sort the results by createdAt in scending order you can use the following syntaxt : ?sortBy=createdAt:asc if you want to apply multiple sort you can do it by adding more sortBy options like this : ?sortBy=createdAt:asc,questionId:desc */ sortBy?: string; /** An array of IDs used to filter the results to only include entities with the specified IDs */ ids?: string; /** An array of team IDs used to filter the results. If no team IDs are provided, all users will be returned. The filter applied is an <b>OR</b>. <b>The query will return the users that have are assigned to the team.</b> */ teamIds?: string; /** Filter by email If email is provided, we only want to return users that have the provided email If email is not provided, we return all users */ emails?: string; /** Filter by isCompanyAdmin If isCompanyAdmin is true, we only want to return users that have the company-admin role If isCompanyAdmin is false, we only want to return users that do not have the company-admin role If isCompanyAdmin is not provided, we return all users isCompanyAdmin is computed by checking if the user has the company-admin role */ isCompanyAdmin?: boolean; /** Filter by isActive If isActive is true, we only want to return users that are active If isActive is false, we only want to return users that are not active If isActive is not provided, we return all users isActive is computed by checking if the user has created any guesses in the past 7 days */ isActive?: boolean; /** Include soft deleted users If includeDeleted is true and authenticated user is company admin or alto admin, we want to return all users, including soft deleted users */ includeSoftDeleted?: boolean; /** Search by email If search is provided, we want to return all users that match the search criteria If search is not provided, we return all users Search is computed by checking if the user\'s email contains the search string */ search?: string; /** The ID of the company that the user sending the request is related to. This field is required when using the API Key. It will be included in the JSON Web Token (JWT) when using Auth0 authentication. */ companyId?: string; /** The ID of the user sending the request. This field is required when using the API Key. It will be included in the JSON Web Token (JWT) when using Auth0 authentication. */ userId?: string; /** The page of results to retrieve. */ page?: number; /** The number of items per page to retrieve. */ itemsPerPage?: number; /** A date used to filter the results based on the createdAt field of the resources, only including resources created after this date. the operator used for this filter is >= (greater than or equal to) If the createdAfter field is provided with a date without a time, it will include resources created on the same day as the provided date, starting at midnight. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ createdAfter?: Date; /** A date used to filter the results based on the createdAt field of the resources, only including resources created before this date. the operator used for this filter is <= (less than or equal to) If the createdBefore field is provided with a date without a time, it will include resources created on the same day as the provided date, ending at midnight. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ createdBefore?: Date; } export declare class AdminApiService { protected httpClient: HttpClient; protected basePath: string; defaultHeaders: HttpHeaders; configuration: Configuration; encoder: HttpParameterCodec; constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration); private addToHttpParams; private addToHttpParamsRecursive; /** * Admin Route to get all Companies (not tenanted) with filter, sort and pagination options * This method handles GET requests to the \'/admins/companies\' route with the filter, sort and pagination options passed in the query parameters. It will respond with the paginated companies along with the current state of pagination. * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ adminGetCompanies(requestParameters: AdminGetCompaniesRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; adminGetCompanies(requestParameters: AdminGetCompaniesRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; adminGetCompanies(requestParameters: AdminGetCompaniesRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Admin Route to get all Users (not tenanted) with filter, sort and pagination options * This method handles GET requests to the \'/users\' route with the filter, sort and pagination options passed in the query parameters. It will respond with the paginated users along with the current state of pagination. * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ adminGetUsers(requestParameters: AdminGetUsersRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; adminGetUsers(requestParameters: AdminGetUsersRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; adminGetUsers(requestParameters: AdminGetUsersRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get users from the office company id * This method handles GET requests to the \'/users/:theOfficeCompanyId\' route to get the users for TheOffice. * @param requestParameters * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ getUsersFromTheOfficeCompanyId(requestParameters: GetUsersFromTheOfficeCompanyIdRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getUsersFromTheOfficeCompanyId(requestParameters: GetUsersFromTheOfficeCompanyIdRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getUsersFromTheOfficeCompanyId(requestParameters: GetUsersFromTheOfficeCompanyIdRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }