import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http'; import { Observable } from 'rxjs'; import { CompanyDtoCreatedResponseApi } from '../model/companyDtoCreatedResponse'; import { CompanyDtoPaginatedResponseApi } from '../model/companyDtoPaginatedResponse'; import { CompanyDtoResponseApi } from '../model/companyDtoResponse'; import { CreateCompanyDtoApi } from '../model/createCompanyDto'; import { DeleteResponseApi } from '../model/deleteResponse'; import { PatchCompanyDtoApi } from '../model/patchCompanyDto'; import { Configuration } from '../configuration'; import * as i0 from "@angular/core"; export interface CreateCompanyRequestParams { createCompanyDtoApi: CreateCompanyDtoApi; } export interface DeleteCompanyRequestParams { id: string; } export interface GetCompaniesRequestParams { createdByUserId?: 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; search?: 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 GetCompanyByIdRequestParams { id: string; } export interface PatchCompanyRequestParams { id: string; patchCompanyDtoApi: PatchCompanyDtoApi; } export declare class CompaniesApiService { protected httpClient: HttpClient; protected basePath: string; defaultHeaders: HttpHeaders; configuration: Configuration; encoder: HttpParameterCodec; constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration); private addToHttpParams; private addToHttpParamsRecursive; /** * Create a new company * This method handles POST requests to the \'/companies\' route to create a new company using the data passed in the body. It will respond with the newly created company. This route is not tenanted this mean we dont have to add companyId to the query params. * @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. */ createCompany(requestParameters: CreateCompanyRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; createCompany(requestParameters: CreateCompanyRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; createCompany(requestParameters: CreateCompanyRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Soft delete an existing company by ID * This method handles DELETE requests to the \'/companies/:id\' route, it \"softDelete\" a single company and does not return anything. By \"soft delete\" we mean that it will just set the deletedAt and will not remove the item from the database, this is done to better manage deletions and allow us to handle different scenario like deleting in cascade etc... * @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. */ deleteCompany(requestParameters: DeleteCompanyRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; deleteCompany(requestParameters: DeleteCompanyRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; deleteCompany(requestParameters: DeleteCompanyRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get companies with filter, sort and pagination options * This method handles GET requests to the \'/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 . This route is not tenanted this mean we dont have to add companyId to the query params. * @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. */ getCompanies(requestParameters: GetCompaniesRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getCompanies(requestParameters: GetCompaniesRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getCompanies(requestParameters: GetCompaniesRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get a single company by ID * This method handles GET requests to the \'/companies/{:id}\' route with `{:id}` the id of the company we want to find. If the company exists it will return it, if not we respond with an error not found. This route is tenanted this mean we have to add companyId to the query params. * @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. */ getCompanyById(requestParameters: GetCompanyByIdRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getCompanyById(requestParameters: GetCompanyByIdRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getCompanyById(requestParameters: GetCompanyByIdRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Patch an existing company by ID * This method handles PATCH requests to the \'/companies/:id\' route where :id is a company ID, it updates a single company with the ID :id and return it. If the company with ID does not exists we return an error. * @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. */ patchCompany(requestParameters: PatchCompanyRequestParams, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; patchCompany(requestParameters: PatchCompanyRequestParams, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; patchCompany(requestParameters: PatchCompanyRequestParams, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }