/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { personManagementAssignLargeTrader } from "../funcs/personManagementAssignLargeTrader.js"; import { personManagementAssignLargeTraderLegalEntity } from "../funcs/personManagementAssignLargeTraderLegalEntity.js"; import { personManagementCreateLegalEntity } from "../funcs/personManagementCreateLegalEntity.js"; import { personManagementCreateLegalNaturalPerson } from "../funcs/personManagementCreateLegalNaturalPerson.js"; import { personManagementEndLargeTrader } from "../funcs/personManagementEndLargeTrader.js"; import { personManagementEndLargeTraderLegalNaturalPerson } from "../funcs/personManagementEndLargeTraderLegalNaturalPerson.js"; import { personManagementGetLegalEntity } from "../funcs/personManagementGetLegalEntity.js"; import { personManagementGetLegalNaturalPerson } from "../funcs/personManagementGetLegalNaturalPerson.js"; import { personManagementListLegalEntities } from "../funcs/personManagementListLegalEntities.js"; import { personManagementListLegalNaturalPersons } from "../funcs/personManagementListLegalNaturalPersons.js"; import { personManagementUpdateLegalEntity } from "../funcs/personManagementUpdateLegalEntity.js"; import { personManagementUpdateLegalNaturalPerson } from "../funcs/personManagementUpdateLegalNaturalPerson.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class PersonManagement extends ClientSDK { /** * Create Legal Natural Person * * @remarks * Creates a Legal Natural Person. */ async createLegalNaturalPerson( request: components.LegalNaturalPersonCreate, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementCreateLegalNaturalPerson( this, request, options, )); } /** * List Legal Natural Persons * * @remarks * Gets a list of Legal Natural Person records based on search criteria. */ async listLegalNaturalPersons( pageSize?: number | undefined, pageToken?: string | undefined, orderBy?: string | undefined, filter?: string | undefined, options?: RequestOptions, ): Promise< PageIterator< operations.AccountsListLegalNaturalPersonsResponse, { cursor: string } > > { return unwrapResultIterator(personManagementListLegalNaturalPersons( this, pageSize, pageToken, orderBy, filter, options, )); } /** * Get Legal Natural Persons * * @remarks * Get Legal Natural Person */ async getLegalNaturalPerson( legalNaturalPersonId: string, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementGetLegalNaturalPerson( this, legalNaturalPersonId, options, )); } /** * Update Legal Natural Person * * @remarks * Updates a Legal Natural Person. */ async updateLegalNaturalPerson( legalNaturalPersonUpdate: components.LegalNaturalPersonUpdate, legalNaturalPersonId: string, updateMask?: string | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementUpdateLegalNaturalPerson( this, legalNaturalPersonUpdate, legalNaturalPersonId, updateMask, options, )); } /** * Assign Large Trader * * @remarks * Assigns a person's Large Trader ID. */ async assignLargeTrader( assignLargeTraderRequestCreate: components.AssignLargeTraderRequestCreate, legalNaturalPersonId: string, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementAssignLargeTrader( this, assignLargeTraderRequestCreate, legalNaturalPersonId, options, )); } /** * End Large Trader * * @remarks * Removes a person's Large Trader ID. */ async endLargeTraderLegalNaturalPerson( endLargeTraderRequestCreate: components.EndLargeTraderRequestCreate, legalNaturalPersonId: string, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementEndLargeTraderLegalNaturalPerson( this, endLargeTraderRequestCreate, legalNaturalPersonId, options, )); } /** * Create Legal Entity * * @remarks * Creates a Legal Entity. */ async createLegalEntity( request: components.LegalEntityCreate, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementCreateLegalEntity( this, request, options, )); } /** * List Legal Entity * * @remarks * Gets a list of Legal Entity records based on search criteria. */ async listLegalEntities( pageSize?: number | undefined, pageToken?: string | undefined, orderBy?: string | undefined, filter?: string | undefined, options?: RequestOptions, ): Promise< PageIterator< operations.AccountsListLegalEntitiesResponse, { cursor: string } > > { return unwrapResultIterator(personManagementListLegalEntities( this, pageSize, pageToken, orderBy, filter, options, )); } /** * Get Legal Entity * * @remarks * Get Legal Entity */ async getLegalEntity( legalEntityId: string, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementGetLegalEntity( this, legalEntityId, options, )); } /** * Update Legal Entity * * @remarks * Updates a Legal Entity. */ async updateLegalEntity( legalEntityUpdate: components.LegalEntityUpdate, legalEntityId: string, updateMask?: string | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementUpdateLegalEntity( this, legalEntityUpdate, legalEntityId, updateMask, options, )); } /** * Assign Entity Large Trader * * @remarks * Assigns a person's Large Trader ID. */ async assignLargeTraderLegalEntity( assignLargeTraderRequestCreate: components.AssignLargeTraderRequestCreate, legalEntityId: string, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementAssignLargeTraderLegalEntity( this, assignLargeTraderRequestCreate, legalEntityId, options, )); } /** * End Entity Large Trader * * @remarks * Removes a person's Large Trader ID. */ async endLargeTrader( endLargeTraderRequestCreate: components.EndLargeTraderRequestCreate, legalEntityId: string, options?: RequestOptions, ): Promise { return unwrapAsync(personManagementEndLargeTrader( this, endLargeTraderRequestCreate, legalEntityId, options, )); } }