@finbourne/lusid-sdk-angular18
Version:
An Angular (18) SDK for secure access to the LUSID® by FINBOURNE web API
129 lines (128 loc) • 9.2 kB
TypeScript
import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
import { Observable } from 'rxjs';
import { InvestmentAccount } from '../model/investmentAccount';
import { ResourceListOfInvestmentAccount } from '../model/resourceListOfInvestmentAccount';
import { UpsertInvestmentAccountRequest } from '../model/upsertInvestmentAccountRequest';
import { UpsertInvestmentAccountsResponse } from '../model/upsertInvestmentAccountsResponse';
import { Configuration } from '../configuration';
import * as i0 from "@angular/core";
export interface GetInvestmentAccountRequestParams {
/** Scope of the investment account identifier type. */
idTypeScope: string;
/** Code of the investment account identifier type. */
idTypeCode: string;
/** Code of the investment account under specified identifier type\'s scope and code. This together with stated identifier type uniquely identifies the investment account. */
code: string;
/** A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\". */
propertyKeys?: Array<string>;
/** The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified. */
asAt?: string;
/** A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}. */
relationshipDefinitionIds?: Array<string>;
}
export interface ListAllInvestmentAccountsRequestParams {
/** The effective datetime or cut label at which to list the investment accounts. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to list the investment accounts. Defaults to return the latest version of each investment accounts if not specified. */
asAt?: string;
/** The pagination token to use to continue listing investment accounts from a previous call to list investment accounts. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request. */
page?: string;
/** When paginating, limit the number of returned results to this many. Defaults to 5000 if not specified. */
limit?: number;
/** Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid. */
filter?: string;
/** A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\". */
sortBy?: Array<string>;
/** A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for each investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\". */
propertyKeys?: Array<string>;
/** A list of relationship definitions that are used to decorate related entities onto each investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}. */
relationshipDefinitionIds?: Array<string>;
}
export interface UpsertInvestmentAccountsRequestParams {
/** Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial */
successMode: string;
/** A collection of requests to create or update Investment Accounts. */
requestBody: {
[key: string]: UpsertInvestmentAccountRequest;
};
}
export declare class InvestmentAccountsService {
protected httpClient: HttpClient;
protected basePath: string;
defaultHeaders: HttpHeaders;
configuration: Configuration;
encoder: HttpParameterCodec;
constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration);
private addToHttpParams;
private addToHttpParamsRecursive;
/**
* [EXPERIMENTAL] GetInvestmentAccount: Get Investment Account
* Retrieve the definition of an investment account.
* @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.
*/
getInvestmentAccount(requestParameters?: GetInvestmentAccountRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<InvestmentAccount>;
getInvestmentAccount(requestParameters?: GetInvestmentAccountRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<InvestmentAccount>>;
getInvestmentAccount(requestParameters?: GetInvestmentAccountRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<InvestmentAccount>>;
/**
* [EXPERIMENTAL] ListAllInvestmentAccounts: List Investment Accounts
* List all investment accounts which the user is entitled to see.
* @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.
*/
listAllInvestmentAccounts(requestParameters?: ListAllInvestmentAccountsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<ResourceListOfInvestmentAccount>;
listAllInvestmentAccounts(requestParameters?: ListAllInvestmentAccountsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<ResourceListOfInvestmentAccount>>;
listAllInvestmentAccounts(requestParameters?: ListAllInvestmentAccountsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<ResourceListOfInvestmentAccount>>;
/**
* [EXPERIMENTAL] UpsertInvestmentAccounts: Upsert Investment Accounts
* Creates or updates a collection of Investment Accounts
* @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.
*/
upsertInvestmentAccounts(requestParameters?: UpsertInvestmentAccountsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<UpsertInvestmentAccountsResponse>;
upsertInvestmentAccounts(requestParameters?: UpsertInvestmentAccountsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<UpsertInvestmentAccountsResponse>>;
upsertInvestmentAccounts(requestParameters?: UpsertInvestmentAccountsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<UpsertInvestmentAccountsResponse>>;
static ɵfac: i0.ɵɵFactoryDeclaration<InvestmentAccountsService, [null, { optional: true; }, { optional: true; }]>;
static ɵprov: i0.ɵɵInjectableDeclaration<InvestmentAccountsService>;
}