import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http'; import { Observable } from 'rxjs'; import { CompanyStatsDtoResponseApi } from '../model/companyStatsDtoResponse'; import { ProgramStatsDtoPaginatedResponseApi } from '../model/programStatsDtoPaginatedResponse'; import { QuestionStatsDtoPaginatedResponseApi } from '../model/questionStatsDtoPaginatedResponse'; import { TagStatsDtoPaginatedResponseApi } from '../model/tagStatsDtoPaginatedResponse'; import { TeamStatsDtoPaginatedResponseApi } from '../model/teamStatsDtoPaginatedResponse'; import { UserStatsDtoPaginatedResponseApi } from '../model/userStatsDtoPaginatedResponse'; import { Configuration } from '../configuration'; import * as i0 from "@angular/core"; export interface GetCompanyStatsRequestParams { id: 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. Used to set the `createdBy` property on creation of entities. */ userId?: string; /** No default value (will take all the results from the date of the first guess) if only `from` is provided, it will take all the results from the date of the `from` date to the current Date. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ from?: Date; /** A date used to filter the results based on creation date of the guesses. the operator used for this filter is <= (less than or equal to) If the `to` field is provided with a date without a time, it will include resources started 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. */ to?: Date; } export interface GetProgramsStatsRequestParams { /** 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 teamIds used to filter the results to only include the team with the specified IDs */ teamIds?: string; /** filter the results to only include entities with a name that contains the specified string */ search?: string; /** filter the results to only include entities who have a progress above or equal to the specified value */ progressAboveOrEqual?: number; /** filter the results to only include entities who have a progress below or equal to the specified value */ progressBelowOrEqual?: number; /** filter the results to only include accelerated programs */ isAccelerated?: boolean; /** The page number to retrieve. The default value is 1. The minimum value is 1. ?page=1 */ page?: number; /** The number of items per page to retrieve. The default value is temporary to 1000. to keep the API working as before. It will be set to 10 when the frontend is ready for this change. */ itemsPerPage?: number; /** filter the results to only include entities who have a score above or equal to the specified value */ scoreAboveOrEqual?: number; /** filter the results to only include entities who have a score below or equal to the specified value */ scoreBelowOrEqual?: number; /** No default value (will take all the results from the date of the first guess) if only `from` is provided, it will take all the results from the date of the `from` date to the current Date. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ from?: Date; /** A date used to filter the results based on creation date of the guesses. the operator used for this filter is <= (less than or equal to) If the `to` field is provided with a date without a time, it will include resources started 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. */ to?: Date; /** 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. Used to set the `createdBy` property on creation of entities. */ userId?: string; } export interface GetQuestionsStatsRequestParams { /** 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 tagIds used to filter the results to only include the tag with the specified IDs */ tagIds?: string; /** An array of programIds used to filter the results to only include the programs with the specified IDs */ programIds?: string; /** An array of teamIds used to filter the results to only include the teams with the specified IDs */ teamIds?: string; /** filter the results to only include questions with title that contains the specified string */ search?: string; /** The page number to retrieve. The default value is 1. The minimum value is 1. ?page=1 */ page?: number; /** The number of items per page to retrieve. The default value is temporary to 1000. to keep the API working as before. It will be set to 10 when the frontend is ready for this change. */ itemsPerPage?: number; /** filter the results to only include entities who have a score above or equal to the specified value */ scoreAboveOrEqual?: number; /** filter the results to only include entities who have a score below or equal to the specified value */ scoreBelowOrEqual?: number; /** No default value (will take all the results from the date of the first guess) if only `from` is provided, it will take all the results from the date of the `from` date to the current Date. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ from?: Date; /** A date used to filter the results based on creation date of the guesses. the operator used for this filter is <= (less than or equal to) If the `to` field is provided with a date without a time, it will include resources started 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. */ to?: Date; /** 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. Used to set the `createdBy` property on creation of entities. */ userId?: string; } export interface GetTagsStatsRequestParams { /** 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 IDs used to filter the results to only include the teams with the specified IDs in the stats calculation */ teamIds?: string; search?: string; /** The page number to retrieve. The default value is 1. The minimum value is 1. ?page=1 */ page?: number; /** The number of items per page to retrieve. The default value is temporary to 1000. to keep the API working as before. It will be set to 10 when the frontend is ready for this change. */ itemsPerPage?: number; /** filter the results to only include entities who have a score above or equal to the specified value */ scoreAboveOrEqual?: number; /** filter the results to only include entities who have a score below or equal to the specified value */ scoreBelowOrEqual?: number; /** No default value (will take all the results from the date of the first guess) if only `from` is provided, it will take all the results from the date of the `from` date to the current Date. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ from?: Date; /** A date used to filter the results based on creation date of the guesses. the operator used for this filter is <= (less than or equal to) If the `to` field is provided with a date without a time, it will include resources started 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. */ to?: Date; /** 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. Used to set the `createdBy` property on creation of entities. */ userId?: string; } export interface GetTeamsStatsRequestParams { /** 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 IDs used to filter the results to only include the teams with the specified tags */ tagIds?: string; /** The page number to retrieve. The default value is 1. The minimum value is 1. ?page=1 */ page?: number; /** The number of items per page to retrieve. The default value is temporary to 1000. to keep the API working as before. It will be set to 10 when the frontend is ready for this change. */ itemsPerPage?: number; /** filter the results to only include entities who have a score above or equal to the specified value */ scoreAboveOrEqual?: number; /** filter the results to only include entities who have a score below or equal to the specified value */ scoreBelowOrEqual?: number; /** No default value (will take all the results from the date of the first guess) if only `from` is provided, it will take all the results from the date of the `from` date to the current Date. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ from?: Date; /** A date used to filter the results based on creation date of the guesses. the operator used for this filter is <= (less than or equal to) If the `to` field is provided with a date without a time, it will include resources started 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. */ to?: Date; /** 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. Used to set the `createdBy` property on creation of entities. */ userId?: string; } export interface GetUsersStatsRequestParams { /** 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 teamIds used to filter the results to only include users in teams specified by the IDs. */ teamIds?: string; /** filter the results to only include entities with a name that contains the specified string */ search?: string; /** The threshold used to calculate the `respondsRegularly` field. This corresponds to the number of responses per day a user need to have the `respondsRegularly` field set to true. By default, the threshold is 6/7 (corresponds ~0.85 response per days, this is equivalent to 6 responses per week, the number of questions sent to the connector per week). */ respondsRegularlyThreshold?: number; /** The user id to filter the results by. This will filter the results by the given user id and will only return the stats for this user. TODO should be removed when n8n and the frontend will be updated to use the `ids` query param. */ filterByUserId?: string; /** The page number to retrieve. The default value is 1. The minimum value is 1. ?page=1 */ page?: number; /** The number of items per page to retrieve. The default value is temporary to 1000. to keep the API working as before. It will be set to 10 when the frontend is ready for this change. */ itemsPerPage?: number; /** filter the results to only include entities who have a score above or equal to the specified value */ scoreAboveOrEqual?: number; /** filter the results to only include entities who have a score below or equal to the specified value */ scoreBelowOrEqual?: number; /** No default value (will take all the results from the date of the first guess) if only `from` is provided, it will take all the results from the date of the `from` date to the current Date. The format of the datetime should be ISO 8601 with timezone: YYYY-MM-DDTHH:mm:ss.sssZ. Example: 2023-02-27T21:42:00.000Z. */ from?: Date; /** A date used to filter the results based on creation date of the guesses. the operator used for this filter is <= (less than or equal to) If the `to` field is provided with a date without a time, it will include resources started 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. */ to?: Date; /** 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. Used to set the `createdBy` property on creation of entities. */ userId?: string; } export declare class StatsApiService { protected httpClient: HttpClient; protected basePath: string; defaultHeaders: HttpHeaders; configuration: Configuration; encoder: HttpParameterCodec; constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration); private addToHttpParams; private addToHttpParamsRecursive; /** * Get company statistics * @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. */ getCompanyStats(requestParameters: GetCompanyStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getCompanyStats(requestParameters: GetCompanyStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getCompanyStats(requestParameters: GetCompanyStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get programs statistics * @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. */ getProgramsStats(requestParameters: GetProgramsStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getProgramsStats(requestParameters: GetProgramsStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getProgramsStats(requestParameters: GetProgramsStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get questions statistics * @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. */ getQuestionsStats(requestParameters: GetQuestionsStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getQuestionsStats(requestParameters: GetQuestionsStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getQuestionsStats(requestParameters: GetQuestionsStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get tags statistics * @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. */ getTagsStats(requestParameters: GetTagsStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getTagsStats(requestParameters: GetTagsStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getTagsStats(requestParameters: GetTagsStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get teams statistics * @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. */ getTeamsStats(requestParameters: GetTeamsStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getTeamsStats(requestParameters: GetTeamsStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getTeamsStats(requestParameters: GetTeamsStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get users statistics * @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. */ getUsersStats(requestParameters: GetUsersStatsRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getUsersStats(requestParameters: GetUsersStatsRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getUsersStats(requestParameters: GetUsersStatsRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }