import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http'; import { Observable } from 'rxjs'; import { CustomerBankModel } from '../model/customer'; import { CustomerListBankModel } from '../model/customerList'; import { PatchCustomerBankModel } from '../model/patchCustomer'; import { PostCustomerBankModel } from '../model/postCustomer'; import { Configuration } from '../configuration'; import * as i0 from "@angular/core"; export declare class CustomersService { protected httpClient: HttpClient; protected basePath: string; defaultHeaders: HttpHeaders; configuration: Configuration; encoder: HttpParameterCodec; constructor(httpClient: HttpClient, basePath: string, configuration: Configuration); private addToHttpParams; private addToHttpParamsRecursive; /** * Create Customer * Creates a customer. ## Customer Type Customer resources are an abstraction for real world individuals and businesses on the Cybrid Platform and are used throughout the platform to perform high level operations, e.g., create a quote, execute a trade, etc.. Customers can have additional resources attached to them, e.g., identity verifications, accounts, etc. ## State | State | Description | |-------|-------------| | storing | The Platform is storing the customer details in our private store | | unverified | The Platform has not yet verified the customer\'s identity | | verified | The Platform has verified the customer\'s identity | | rejected | The Platform was not able to successfully verify the customer\'s identity | | frozen | The customer has been frozen on the Platform | Required scope: **customers:execute** * @param postCustomerBankModel * @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. */ createCustomer(postCustomerBankModel: PostCustomerBankModel, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; createCustomer(postCustomerBankModel: PostCustomerBankModel, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; createCustomer(postCustomerBankModel: PostCustomerBankModel, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get Customer * Retrieves a customer. Required scope: **customers:read** Optional scope: **customers:pii:read**. * @param customerGuid Identifier for the customer. * @param includePii Include PII in the response (requires **customers:pii:read** scope). * @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. */ getCustomer(customerGuid: string, includePii?: boolean, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; getCustomer(customerGuid: string, includePii?: boolean, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; getCustomer(customerGuid: string, includePii?: boolean, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Get customers list * Retrieves a listing of customers. Records are sorted by creation date in descending order. Required scope: **customers:read** Optional scope: **customers:pii:read**. * @param page * @param perPage * @param type Comma separated types to list customers for. * @param bankGuid Comma separated bank_guids to list customers for. * @param guid Comma separated customer_guids to list customers for. * @param label Comma separated labels to list customers for. * @param includePii Include PII in the response (requires **customers:pii:read** scope). * @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. */ listCustomers(page?: string, perPage?: string, type?: string, bankGuid?: string, guid?: string, label?: string, includePii?: boolean, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; listCustomers(page?: string, perPage?: string, type?: string, bankGuid?: string, guid?: string, label?: string, includePii?: boolean, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; listCustomers(page?: string, perPage?: string, type?: string, bankGuid?: string, guid?: string, label?: string, includePii?: boolean, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; /** * Patch Customer * Update a customer. Required scope: **customers:write** * @param customerGuid Identifier for the customer. * @param patchCustomerBankModel * @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. */ updateCustomer(customerGuid: string, patchCustomerBankModel: PatchCustomerBankModel, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable; updateCustomer(customerGuid: string, patchCustomerBankModel: PatchCustomerBankModel, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; updateCustomer(customerGuid: string, patchCustomerBankModel: PatchCustomerBankModel, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; }): Observable>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }