@matech/thebigpos-sdk 3.7.0 → 3.8.0-stag-3544

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -40,44 +40,5 @@ apiClient.api.getSiteConfiguration().then((response) => {
40
40
  });
41
41
  ```
42
42
 
43
- ## Generate SDK from Swagger
44
-
45
- To regenerate the SDK from a specific API version, run:
46
-
47
- ```bash
48
- npx swagger-typescript-api generate -p https://api.thebigpos.dev/swagger/{version}/swagger.json -o ./src -n index.ts -r true --axios --enum-names-as-values --enum-style union
49
- ```
50
-
51
- Replace `{version}` with the target API version (e.g. `v2.34.0`):
52
-
53
- ```bash
54
- npx swagger-typescript-api generate -p https://api.thebigpos.dev/swagger/v2.34.0/swagger.json -o ./src -n index.ts -r true --axios --enum-names-as-values --enum-style union
55
- ```
56
-
57
- Then apply the PATCH content-type fixup, passing the **same** spec that was given
58
- to the generator. The generator does not propagate `application/json-patch+json`,
59
- so this step sets each PATCH method's content type from the spec (no hard-coded
60
- endpoint list):
61
-
62
- ```bash
63
- node scripts/apply-json-patch-content-type.js https://api.thebigpos.dev/swagger/v2.34.0/swagger.json
64
- yarn build
65
- ```
66
-
67
- ## Publishing
68
-
69
- 1. Update the `version` field in `package.json` before publishing.
70
- 2. Build the project:
71
-
72
- ```bash
73
- yarn build
74
- ```
75
-
76
- 3. Publish to npm:
77
-
78
- ```bash
79
- yarn publish
80
- ```
81
-
82
43
  ____
83
44
  © 2024 Mortgage Automation Technologies. All rights reserved
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export type VersionStatusType = "Draft" | "Published";
2
2
  export type UserRole = "Borrower" | "LoanOfficer" | "Admin" | "SuperAdmin" | "Realtor" | "SettlementAgent" | "LoanProcessor" | "LoanOfficerAssistant" | "SystemAdmin";
3
+ export type TaskType = "Document" | "Field" | "Signature" | "EDisclosure" | "EConsent" | "VerificationOfAssets" | "VerificationOfIncome" | "VerificationOfEmployment" | "VerificationOfCredit" | "Payment" | "VerificationOfIncomeAndEmployment" | "VerificationOfTaxes";
3
4
  export type TaskStatus = "Outstanding" | "Pending" | "Completed" | "Rejected" | "Unknown";
4
5
  export type TableKey = "Pipeline";
5
6
  export type SortDirection = "Asc" | "Desc";
@@ -19,6 +20,7 @@ export type LoanType = "Fha" | "Conventional" | "UsdaRd" | "Va" | "Other";
19
20
  export type LoanTrustType = "Living" | "Land" | "Testamentary" | "Other";
20
21
  export type LoanTitleHeld = "Sole" | "JointWithSpouse" | "JointWithOtherThanSpouse";
21
22
  export type LoanTaskActivityFilter = "Active" | "Inactive" | "All";
23
+ export type LoanRoleTaskSource = "Rule" | "Manual";
22
24
  export type LoanRole = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin";
23
25
  export type LoanRefinancePurpose = "CashOutDebtConsolidation" | "CashOutHomeImprovement" | "CashOutOther" | "NoCashOut" | "LimitedCashOut";
24
26
  export type LoanRealEstateStatus = "Keep" | "Rent" | "Sell" | "PendingSale";
@@ -39,7 +41,7 @@ export type LoanNameSuffix = "Jr" | "Sr" | "II" | "III" | "IV" | "V" | "VI" | "V
39
41
  export type LoanNamePrefix = "Mr" | "Mrs" | "Ms";
40
42
  export type LoanMilitaryServiceType = "Current" | "RetiredDischargedSeparated" | "NonActivatedNationalGuard" | "SurvivingSpouse";
41
43
  export type LoanMaritalStatus = "Married" | "Separated" | "Single";
42
- export type LoanLogType = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent" | "DocumentClassified" | "CoBorrowerEmailAutoFixed" | "LosFieldWriteBack" | "ReferrerChangeDiscarded";
44
+ export type LoanLogType = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent" | "DocumentClassified" | "CoBorrowerEmailAutoFixed" | "LosFieldWriteBack" | "ReferrerChangeDiscarded" | "TaskEdited";
43
45
  export type LoanLienPosition = "First" | "Subordinate";
44
46
  export type LoanLiabilityType = "Revolving" | "Installment" | "Open30Day" | "Lease" | "Other";
45
47
  export type LoanLanguagePreference = "English" | "Chinese" | "Korean" | "Spanish" | "Tagalog" | "Vietnamese" | "Other" | "DoNotWishToRespond";
@@ -98,7 +100,7 @@ export type AiPromptScope = "General" | "LoanSpecific";
98
100
  export type AiPromptCategory = "DocumentAnalysis" | "DataQuery" | "General" | "Action";
99
101
  export type AiGuardrailCategory = "ContentSafety" | "PromptInjection" | "Privacy" | "Legal";
100
102
  export type AiDisplayHint = "Table" | "SummaryCards" | "RankedList" | "Comparison" | "ExecutiveBrief";
101
- export type AiAuditEventType = "Error" | "GuardrailBlockedPre" | "GuardrailPassedPre" | "IntentClassified" | "LoanResolvedFromMessage" | "DocumentNotFound" | "GuardrailBlockedPost" | "GuardrailPassedPost" | "DocumentAnalyzed" | "DocumentList" | "DocumentResolutionAmbiguous" | "ResponseGenerated" | "ParametersExtracted" | "QueryExecuted" | "LoanContextNotFound" | "LoanContextLoaded" | "GuardrailBlockedBedrock" | "PromptMatched" | "QueryCondensed" | "IntentParseFailed" | "LoanSearchTermDiscarded" | "CanonicalFieldsSelected" | "LoanAccessDenied" | "AgentModelCall" | "AgentToolCallRequested" | "AgentToolCallCompleted" | "AgentToolCallFailed" | "AgentLoopLimitReached" | "RequestCancelled" | "KnowledgeBaseRetrieved" | "PromptResolutionFailed" | "PromptTriggerPublished" | "PromptTriggerSkipped" | "PromptRunCompleted" | "LoanUpdateProposed" | "LoanUpdateApplied" | "LoanUpdateRefused" | "PromptTriggerCoalesced";
103
+ export type AiAuditEventType = "Error" | "GuardrailBlockedPre" | "GuardrailPassedPre" | "IntentClassified" | "LoanResolvedFromMessage" | "DocumentNotFound" | "GuardrailBlockedPost" | "GuardrailPassedPost" | "DocumentAnalyzed" | "DocumentList" | "DocumentResolutionAmbiguous" | "ResponseGenerated" | "ParametersExtracted" | "QueryExecuted" | "LoanContextNotFound" | "LoanContextLoaded" | "GuardrailBlockedBedrock" | "PromptMatched" | "QueryCondensed" | "IntentParseFailed" | "LoanSearchTermDiscarded" | "CanonicalFieldsSelected" | "LoanAccessDenied" | "AgentModelCall" | "AgentToolCallRequested" | "AgentToolCallCompleted" | "AgentToolCallFailed" | "AgentLoopLimitReached" | "RequestCancelled" | "KnowledgeBaseRetrieved" | "PromptResolutionFailed" | "PromptTriggerPublished" | "PromptTriggerSkipped" | "PromptRunCompleted" | "LoanUpdateProposed" | "LoanUpdateApplied" | "LoanUpdateRefused" | "PromptTriggerCoalesced" | "RecommendationRunCompleted";
102
104
  export type AddressFamily = "Unspecified" | "Unix" | "InterNetwork" | "ImpLink" | "Pup" | "Chaos" | "NS" | "Ipx" | "Iso" | "Osi" | "Ecma" | "DataKit" | "Ccitt" | "Sna" | "DecNet" | "DataLink" | "Lat" | "HyperChannel" | "AppleTalk" | "NetBios" | "VoiceView" | "FireFox" | "Banyan" | "Atm" | "InterNetworkV6" | "Cluster" | "Ieee12844" | "Irda" | "NetworkDesigners" | "Max" | "Packet" | "ControllerAreaNetwork" | "Unknown";
103
105
  export interface ASOSettings {
104
106
  enabled: boolean;
@@ -1421,6 +1423,15 @@ export interface CreateLoanImportRequest {
1421
1423
  startDate: string;
1422
1424
  importMode: CreateLoanImportRequestImportModeEnum;
1423
1425
  }
1426
+ export interface CreateLoanRoleTaskRequest {
1427
+ /** @format uuid */
1428
+ taskId: string;
1429
+ role: CreateLoanRoleTaskRequestRoleEnum;
1430
+ /** @format int32 */
1431
+ borrowerPair: number;
1432
+ /** @format int32 */
1433
+ borrowerPosition: number;
1434
+ }
1424
1435
  export interface CreateSession {
1425
1436
  sessionId: string;
1426
1437
  sessionUrl: string;
@@ -1834,6 +1845,7 @@ export interface EnabledServices {
1834
1845
  ringCentral?: boolean | null;
1835
1846
  socialSurvey?: boolean | null;
1836
1847
  borrowerTasks?: boolean | null;
1848
+ preBorrowerTasks?: boolean | null;
1837
1849
  docusign?: boolean | null;
1838
1850
  emailNotifications?: boolean | null;
1839
1851
  autoTaskReminders?: boolean | null;
@@ -4066,6 +4078,24 @@ export interface LoanQueueWithData {
4066
4078
  siteConfiguration: SiteConfigurationReduced;
4067
4079
  data?: any | null;
4068
4080
  }
4081
+ export interface LoanRecommendation {
4082
+ /** @format uuid */
4083
+ id: string;
4084
+ canonicalName: string;
4085
+ displayName: string;
4086
+ extractedValue: string;
4087
+ currentLoanValue?: any | null;
4088
+ /** @format uuid */
4089
+ sourceDocumentId: string;
4090
+ sourceDocumentName?: string | null;
4091
+ /** @format float */
4092
+ confidence: number;
4093
+ /** @format uuid */
4094
+ borrowerId?: string | null;
4095
+ borrowerName?: string | null;
4096
+ /** @format date-time */
4097
+ detectedAt: string;
4098
+ }
4069
4099
  export interface LoanRecord {
4070
4100
  loanGuid: string;
4071
4101
  loanFields: Record<string, string>;
@@ -4114,6 +4144,52 @@ export interface LoanRefinanceRequest {
4114
4144
  purpose?: LoanRefinancePurpose | null;
4115
4145
  currentLoan?: LoanRefinanceCurrentLoanRequest | null;
4116
4146
  }
4147
+ export interface LoanRoleSlotTasks {
4148
+ role: LoanRoleSlotTasksRoleEnum;
4149
+ /** @format int32 */
4150
+ borrowerPair: number;
4151
+ /** @format int32 */
4152
+ borrowerPosition: number;
4153
+ tasks: LoanRoleTask[];
4154
+ }
4155
+ export interface LoanRoleTask {
4156
+ /** @format uuid */
4157
+ id: string;
4158
+ /** @format uuid */
4159
+ loanId: string;
4160
+ role: LoanRoleTaskRoleEnum;
4161
+ /** @format int32 */
4162
+ borrowerPair: number;
4163
+ /** @format int32 */
4164
+ borrowerPosition: number;
4165
+ /** @format uuid */
4166
+ definitionTaskId: string;
4167
+ /** @format uuid */
4168
+ taskId: string;
4169
+ name: string;
4170
+ description?: string | null;
4171
+ type: LoanRoleTaskTypeEnum;
4172
+ losTarget?: string | null;
4173
+ /** @format int32 */
4174
+ daysDueFromApplication?: number | null;
4175
+ /** @format int32 */
4176
+ weight: number;
4177
+ willAutocompleteAfterResponse: boolean;
4178
+ /** @format uuid */
4179
+ loanDocumentFolderId?: string | null;
4180
+ /** @format date */
4181
+ dueDate?: string | null;
4182
+ source: LoanRoleTaskSourceEnum;
4183
+ isAttached: boolean;
4184
+ /** @format uuid */
4185
+ attachedUserLoanTaskId?: string | null;
4186
+ /** @format date-time */
4187
+ attachedAt?: string | null;
4188
+ /** @format uuid */
4189
+ createdById?: string | null;
4190
+ /** @format date-time */
4191
+ createdAt: string;
4192
+ }
4117
4193
  export interface LoanSearchCriteria {
4118
4194
  searchText?: string | null;
4119
4195
  searchTerms?: string[] | null;
@@ -4142,6 +4218,7 @@ export interface LoanSearchCriteria {
4142
4218
  closingFrom?: string | null;
4143
4219
  /** @format date */
4144
4220
  closingTo?: string | null;
4221
+ milestoneConfigurationIds?: string[] | null;
4145
4222
  }
4146
4223
  export interface LoanSettings {
4147
4224
  excludeFromAutoTaskReminders: boolean;
@@ -4446,6 +4523,10 @@ export interface LosWebhookSigningKeySyncResult {
4446
4523
  export interface ManualDocumentClassificationRequest {
4447
4524
  documentType: ManualDocumentClassificationRequestDocumentTypeEnum;
4448
4525
  }
4526
+ export interface MaterializeLoanRoleTasks {
4527
+ /** @format int32 */
4528
+ rowsAdded: number;
4529
+ }
4449
4530
  export interface MdmUser {
4450
4531
  user_email?: string | null;
4451
4532
  user_id?: string | null;
@@ -5798,6 +5879,8 @@ export interface Task {
5798
5879
  isGlobal: boolean;
5799
5880
  /** @format uuid */
5800
5881
  id: string;
5882
+ /** @format uuid */
5883
+ sourceTaskID?: string | null;
5801
5884
  user?: User | null;
5802
5885
  isFromLegacySource: boolean;
5803
5886
  usedInBusinessRule: boolean;
@@ -6117,6 +6200,16 @@ export interface UpdateLoanDocumentFolderRequest {
6117
6200
  export interface UpdateLoanQueueRequest {
6118
6201
  data: any;
6119
6202
  }
6203
+ export interface UpdateLoanRoleTaskRequest {
6204
+ name?: string | null;
6205
+ description?: string | null;
6206
+ /** @format int32 */
6207
+ weight?: number | null;
6208
+ /** @format uuid */
6209
+ loanDocumentFolderId?: string | null;
6210
+ /** @format date */
6211
+ dueDate?: string | null;
6212
+ }
6120
6213
  export interface UpdateMeRequest {
6121
6214
  phone?: string | null;
6122
6215
  firstName: string;
@@ -6487,6 +6580,12 @@ export interface UserLoanTaskUpdateRequest {
6487
6580
  value?: string | null;
6488
6581
  /** @format date */
6489
6582
  dueDate?: string | null;
6583
+ name?: string | null;
6584
+ description?: string | null;
6585
+ /** @format int32 */
6586
+ weight?: number | null;
6587
+ /** @format uuid */
6588
+ loanDocumentFolderId?: string | null;
6490
6589
  }
6491
6590
  export interface UserMobilePhoneVerificationRequest {
6492
6591
  code: string;
@@ -6635,7 +6734,7 @@ export interface Workflow {
6635
6734
  icon: string;
6636
6735
  }
6637
6736
  export type AccountBillingRequestBillingTypeEnum = "ClosedLoan" | "LoanOfficer";
6638
- export type AiAuditLogEventTypeEnum = "Error" | "GuardrailBlockedPre" | "GuardrailPassedPre" | "IntentClassified" | "LoanResolvedFromMessage" | "DocumentNotFound" | "GuardrailBlockedPost" | "GuardrailPassedPost" | "DocumentAnalyzed" | "DocumentList" | "DocumentResolutionAmbiguous" | "ResponseGenerated" | "ParametersExtracted" | "QueryExecuted" | "LoanContextNotFound" | "LoanContextLoaded" | "GuardrailBlockedBedrock" | "PromptMatched" | "QueryCondensed" | "IntentParseFailed" | "LoanSearchTermDiscarded" | "CanonicalFieldsSelected" | "LoanAccessDenied" | "AgentModelCall" | "AgentToolCallRequested" | "AgentToolCallCompleted" | "AgentToolCallFailed" | "AgentLoopLimitReached" | "RequestCancelled" | "KnowledgeBaseRetrieved" | "PromptResolutionFailed" | "PromptTriggerPublished" | "PromptTriggerSkipped" | "PromptRunCompleted" | "LoanUpdateProposed" | "LoanUpdateApplied" | "LoanUpdateRefused" | "PromptTriggerCoalesced";
6737
+ export type AiAuditLogEventTypeEnum = "Error" | "GuardrailBlockedPre" | "GuardrailPassedPre" | "IntentClassified" | "LoanResolvedFromMessage" | "DocumentNotFound" | "GuardrailBlockedPost" | "GuardrailPassedPost" | "DocumentAnalyzed" | "DocumentList" | "DocumentResolutionAmbiguous" | "ResponseGenerated" | "ParametersExtracted" | "QueryExecuted" | "LoanContextNotFound" | "LoanContextLoaded" | "GuardrailBlockedBedrock" | "PromptMatched" | "QueryCondensed" | "IntentParseFailed" | "LoanSearchTermDiscarded" | "CanonicalFieldsSelected" | "LoanAccessDenied" | "AgentModelCall" | "AgentToolCallRequested" | "AgentToolCallCompleted" | "AgentToolCallFailed" | "AgentLoopLimitReached" | "RequestCancelled" | "KnowledgeBaseRetrieved" | "PromptResolutionFailed" | "PromptTriggerPublished" | "PromptTriggerSkipped" | "PromptRunCompleted" | "LoanUpdateProposed" | "LoanUpdateApplied" | "LoanUpdateRefused" | "PromptTriggerCoalesced" | "RecommendationRunCompleted";
6639
6738
  export type AiChatStructuredDataTypeEnum = "Table" | "DocumentAnalysis" | "DocumentList" | "GeneratedDocument" | "CitedPassages" | "PendingLoanUpdate";
6640
6739
  export type AiCitedDocumentSourceTypeEnum = "File" | "FreeText";
6641
6740
  export type AiGuardrailCategoryEnum = "ContentSafety" | "PromptInjection" | "Privacy" | "Legal";
@@ -6660,6 +6759,7 @@ export type CreateGroupMemberRequestLoanRoleEnum = "Borrower" | "CoBorrower" | "
6660
6759
  /** @deprecated */
6661
6760
  export type CreateInviteRequestRelationshipEnum = "NotApplicable" | "Spouse" | "NonSpouse";
6662
6761
  export type CreateLoanImportRequestImportModeEnum = "All" | "NewOnly" | "UpdateOnly";
6762
+ export type CreateLoanRoleTaskRequestRoleEnum = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin";
6663
6763
  export type CreateUserDraftLoanRoleEnum = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin";
6664
6764
  export type CustomFieldDefinitionDataTypeEnum = "String" | "Number" | "Decimal" | "Boolean" | "Date" | "SingleSelect" | "MultiSelect";
6665
6765
  export type CustomFieldDefinitionEntityTypeEnum = "Loan";
@@ -6695,9 +6795,13 @@ export type LoanImportStatusEnum = "WaitingProcess" | "InProgress" | "Completed"
6695
6795
  export type LoanImportImportModeEnum = "All" | "NewOnly" | "UpdateOnly";
6696
6796
  export type LoanImportLogLevelEnum = "None" | "Info" | "Warning" | "Error";
6697
6797
  export type LoanLogLevelEnum = "None" | "Info" | "Warning" | "Error";
6698
- export type LoanLogTypeEnum = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent" | "DocumentClassified" | "CoBorrowerEmailAutoFixed" | "LosFieldWriteBack" | "ReferrerChangeDiscarded";
6798
+ export type LoanLogTypeEnum = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent" | "DocumentClassified" | "CoBorrowerEmailAutoFixed" | "LosFieldWriteBack" | "ReferrerChangeDiscarded" | "TaskEdited";
6699
6799
  export type LoanLogDetailLevelEnum = "None" | "Info" | "Warning" | "Error";
6700
- export type LoanLogDetailTypeEnum = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent" | "DocumentClassified" | "CoBorrowerEmailAutoFixed" | "LosFieldWriteBack" | "ReferrerChangeDiscarded";
6800
+ export type LoanLogDetailTypeEnum = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent" | "DocumentClassified" | "CoBorrowerEmailAutoFixed" | "LosFieldWriteBack" | "ReferrerChangeDiscarded" | "TaskEdited";
6801
+ export type LoanRoleSlotTasksRoleEnum = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin";
6802
+ export type LoanRoleTaskRoleEnum = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin";
6803
+ export type LoanRoleTaskTypeEnum = "Document" | "Field" | "Signature" | "EDisclosure" | "EConsent" | "VerificationOfAssets" | "VerificationOfIncome" | "VerificationOfEmployment" | "VerificationOfCredit" | "Payment" | "VerificationOfIncomeAndEmployment" | "VerificationOfTaxes";
6804
+ export type LoanRoleTaskSourceEnum = "Rule" | "Manual";
6701
6805
  export type LoanTaskStatusSummaryStatusEnum = "Outstanding" | "Pending" | "Completed" | "Rejected" | "Unknown";
6702
6806
  export type LoanUserLoanRoleEnum = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin";
6703
6807
  export type LosCredentialHealthStatusEnum = "Unknown" | "Healthy" | "InvalidCredentials" | "Forbidden" | "TransportError" | "NotConfigured";
@@ -6783,7 +6887,7 @@ export declare class HttpClient<SecurityDataType = unknown> {
6783
6887
  }
6784
6888
  /**
6785
6889
  * @title The Big POS API
6786
- * @version v3.7.0
6890
+ * @version v3.8.0
6787
6891
  * @termsOfService https://www.thebigpos.com/terms-of-use/
6788
6892
  * @contact Mortgage Automation Technologies <support@thebigpos.com> (https://www.thebigpos.com/terms-of-use/)
6789
6893
  */
@@ -10889,6 +10993,111 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
10889
10993
  * @response `404` `ProblemDetails` Not Found
10890
10994
  */
10891
10995
  retryLoanQueue: (loanQueueId: string, params?: RequestParams) => Promise<AxiosResponse<void, any, {}>>;
10996
+ /**
10997
+ * No description
10998
+ *
10999
+ * @tags LoanRecommendations
11000
+ * @name GetLoanRecommendations
11001
+ * @summary Get a loan's open recommendations
11002
+ * @request GET:/api/loans/{loanId}/recommendations
11003
+ * @secure
11004
+ * @response `200` `(LoanRecommendation)[]` OK
11005
+ * @response `400` `ProblemDetails` Bad Request
11006
+ * @response `404` `ProblemDetails` Not Found
11007
+ */
11008
+ getLoanRecommendations: (loanId: string, params?: RequestParams) => Promise<AxiosResponse<LoanRecommendation[], any, {}>>;
11009
+ /**
11010
+ * No description
11011
+ *
11012
+ * @tags LoanRecommendations
11013
+ * @name DismissLoanRecommendation
11014
+ * @summary Dismiss a loan recommendation
11015
+ * @request POST:/api/loans/{loanId}/recommendations/{id}/dismiss
11016
+ * @secure
11017
+ * @response `204` `void` No Content
11018
+ * @response `400` `ProblemDetails` Bad Request
11019
+ * @response `404` `ProblemDetails` Not Found
11020
+ */
11021
+ dismissLoanRecommendation: (loanId: string, id: string, params?: RequestParams) => Promise<AxiosResponse<void, any, {}>>;
11022
+ /**
11023
+ * No description
11024
+ *
11025
+ * @tags LoanRoleTasks
11026
+ * @name GetLoanRoleTasks
11027
+ * @summary Get queued tasks grouped by borrower slot
11028
+ * @request GET:/api/loans/{loanId}/role-tasks
11029
+ * @secure
11030
+ * @response `200` `(LoanRoleSlotTasks)[]` OK
11031
+ * @response `404` `ProblemDetails` Not Found
11032
+ */
11033
+ getLoanRoleTasks: (loanId: string, params?: RequestParams) => Promise<AxiosResponse<LoanRoleSlotTasks[], any, {}>>;
11034
+ /**
11035
+ * @description Queues an account template against a borrower slot that has no registered user yet. The row owns a per-loan copy of the template, so editing it never changes the account's catalogue.
11036
+ *
11037
+ * @tags LoanRoleTasks
11038
+ * @name CreateLoanRoleTask
11039
+ * @summary Queue a task for a borrower slot
11040
+ * @request POST:/api/loans/{loanId}/role-tasks
11041
+ * @secure
11042
+ * @response `201` `LoanRoleTask` Created
11043
+ * @response `400` `ProblemDetails` Bad Request
11044
+ * @response `404` `ProblemDetails` Not Found
11045
+ * @response `409` `ProblemDetails` Conflict
11046
+ * @response `422` `ProblemDetails` Unprocessable Content
11047
+ */
11048
+ createLoanRoleTask: (loanId: string, data: CreateLoanRoleTaskRequest, params?: RequestParams) => Promise<AxiosResponse<LoanRoleTask, any, {}>>;
11049
+ /**
11050
+ * No description
11051
+ *
11052
+ * @tags LoanRoleTasks
11053
+ * @name GetLoanRoleTask
11054
+ * @summary Get a queued task
11055
+ * @request GET:/api/loans/{loanId}/role-tasks/{id}
11056
+ * @secure
11057
+ * @response `200` `LoanRoleTask` OK
11058
+ * @response `404` `ProblemDetails` Not Found
11059
+ */
11060
+ getLoanRoleTask: (loanId: string, id: string, params?: RequestParams) => Promise<AxiosResponse<LoanRoleTask, any, {}>>;
11061
+ /**
11062
+ * @description Edits the loan's own copy of the template. The account's catalogue entry is untouched, so the change applies to this borrower only. Omitted fields are left as they are.
11063
+ *
11064
+ * @tags LoanRoleTasks
11065
+ * @name UpdateLoanRoleTask
11066
+ * @summary Edit a queued task
11067
+ * @request PUT:/api/loans/{loanId}/role-tasks/{id}
11068
+ * @secure
11069
+ * @response `200` `LoanRoleTask` OK
11070
+ * @response `400` `ProblemDetails` Bad Request
11071
+ * @response `404` `ProblemDetails` Not Found
11072
+ * @response `409` `ProblemDetails` Conflict
11073
+ * @response `422` `ProblemDetails` Unprocessable Content
11074
+ */
11075
+ updateLoanRoleTask: (loanId: string, id: string, data: UpdateLoanRoleTaskRequest, params?: RequestParams) => Promise<AxiosResponse<LoanRoleTask, any, {}>>;
11076
+ /**
11077
+ * @description Removes a queued task from a borrower slot. The removal is remembered, so a later run of the rules does not queue the same template again.
11078
+ *
11079
+ * @tags LoanRoleTasks
11080
+ * @name DeleteLoanRoleTask
11081
+ * @summary Remove a queued task
11082
+ * @request DELETE:/api/loans/{loanId}/role-tasks/{id}
11083
+ * @secure
11084
+ * @response `204` `void` No Content
11085
+ * @response `404` `ProblemDetails` Not Found
11086
+ * @response `409` `ProblemDetails` Conflict
11087
+ */
11088
+ deleteLoanRoleTask: (loanId: string, id: string, params?: RequestParams) => Promise<AxiosResponse<void, any, {}>>;
11089
+ /**
11090
+ * @description Runs the account's business rules against the loan and queues what is missing. Templates already queued, and ones removed by staff, are left alone.
11091
+ *
11092
+ * @tags LoanRoleTasks
11093
+ * @name MaterializeLoanRoleTasks
11094
+ * @summary Queue the business rule defaults
11095
+ * @request POST:/api/loans/{loanId}/role-tasks/materialize
11096
+ * @secure
11097
+ * @response `200` `MaterializeLoanRoleTasks` OK
11098
+ * @response `404` `ProblemDetails` Not Found
11099
+ */
11100
+ materializeLoanRoleTasks: (loanId: string, params?: RequestParams) => Promise<AxiosResponse<MaterializeLoanRoleTasks, any, {}>>;
10892
11101
  /**
10893
11102
  * No description
10894
11103
  *
@@ -11323,6 +11532,7 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
11323
11532
  * @request POST:/api/loans/{loanId}/users/{userId}
11324
11533
  * @secure
11325
11534
  * @response `201` `LoanUser` Created
11535
+ * @response `404` `ProblemDetails` Not Found
11326
11536
  */
11327
11537
  addLoanUser: (loanId: string, userId: string, data: CreateUserLoan, params?: RequestParams) => Promise<AxiosResponse<LoanUser, any, {}>>;
11328
11538
  /**
package/dist/index.js CHANGED
@@ -86,13 +86,7 @@ export class HttpClient {
86
86
  const property = input[key];
87
87
  const propertyContent = property instanceof Array ? property : [property];
88
88
  for (const formItem of propertyContent) {
89
- // React Native files are plain { uri, name, type } objects, not Blob/File.
90
- const isReactNativeFile = !!formItem &&
91
- typeof formItem === "object" &&
92
- "uri" in formItem &&
93
- "name" in formItem &&
94
- "type" in formItem;
95
- const isFileType = isReactNativeFile || formItem instanceof Blob || formItem instanceof File;
89
+ const isFileType = formItem instanceof Blob || formItem instanceof File;
96
90
  formData.append(key, isFileType ? formItem : this.stringifyFormItem(formItem));
97
91
  }
98
92
  return formData;
@@ -101,7 +95,7 @@ export class HttpClient {
101
95
  }
102
96
  /**
103
97
  * @title The Big POS API
104
- * @version v3.7.0
98
+ * @version v3.8.0
105
99
  * @termsOfService https://www.thebigpos.com/terms-of-use/
106
100
  * @contact Mortgage Automation Technologies <support@thebigpos.com> (https://www.thebigpos.com/terms-of-use/)
107
101
  */
@@ -3773,6 +3767,111 @@ export class Api extends HttpClient {
3773
3767
  * @response `404` `ProblemDetails` Not Found
3774
3768
  */
3775
3769
  retryLoanQueue: (loanQueueId, params = {}) => this.request(Object.assign({ path: `/api/loans/queue/${loanQueueId}/retry`, method: "POST", secure: true }, params)),
3770
+ /**
3771
+ * No description
3772
+ *
3773
+ * @tags LoanRecommendations
3774
+ * @name GetLoanRecommendations
3775
+ * @summary Get a loan's open recommendations
3776
+ * @request GET:/api/loans/{loanId}/recommendations
3777
+ * @secure
3778
+ * @response `200` `(LoanRecommendation)[]` OK
3779
+ * @response `400` `ProblemDetails` Bad Request
3780
+ * @response `404` `ProblemDetails` Not Found
3781
+ */
3782
+ getLoanRecommendations: (loanId, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/recommendations`, method: "GET", secure: true, format: "json" }, params)),
3783
+ /**
3784
+ * No description
3785
+ *
3786
+ * @tags LoanRecommendations
3787
+ * @name DismissLoanRecommendation
3788
+ * @summary Dismiss a loan recommendation
3789
+ * @request POST:/api/loans/{loanId}/recommendations/{id}/dismiss
3790
+ * @secure
3791
+ * @response `204` `void` No Content
3792
+ * @response `400` `ProblemDetails` Bad Request
3793
+ * @response `404` `ProblemDetails` Not Found
3794
+ */
3795
+ dismissLoanRecommendation: (loanId, id, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/recommendations/${id}/dismiss`, method: "POST", secure: true }, params)),
3796
+ /**
3797
+ * No description
3798
+ *
3799
+ * @tags LoanRoleTasks
3800
+ * @name GetLoanRoleTasks
3801
+ * @summary Get queued tasks grouped by borrower slot
3802
+ * @request GET:/api/loans/{loanId}/role-tasks
3803
+ * @secure
3804
+ * @response `200` `(LoanRoleSlotTasks)[]` OK
3805
+ * @response `404` `ProblemDetails` Not Found
3806
+ */
3807
+ getLoanRoleTasks: (loanId, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/role-tasks`, method: "GET", secure: true, format: "json" }, params)),
3808
+ /**
3809
+ * @description Queues an account template against a borrower slot that has no registered user yet. The row owns a per-loan copy of the template, so editing it never changes the account's catalogue.
3810
+ *
3811
+ * @tags LoanRoleTasks
3812
+ * @name CreateLoanRoleTask
3813
+ * @summary Queue a task for a borrower slot
3814
+ * @request POST:/api/loans/{loanId}/role-tasks
3815
+ * @secure
3816
+ * @response `201` `LoanRoleTask` Created
3817
+ * @response `400` `ProblemDetails` Bad Request
3818
+ * @response `404` `ProblemDetails` Not Found
3819
+ * @response `409` `ProblemDetails` Conflict
3820
+ * @response `422` `ProblemDetails` Unprocessable Content
3821
+ */
3822
+ createLoanRoleTask: (loanId, data, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/role-tasks`, method: "POST", body: data, secure: true, type: "application/json", format: "json" }, params)),
3823
+ /**
3824
+ * No description
3825
+ *
3826
+ * @tags LoanRoleTasks
3827
+ * @name GetLoanRoleTask
3828
+ * @summary Get a queued task
3829
+ * @request GET:/api/loans/{loanId}/role-tasks/{id}
3830
+ * @secure
3831
+ * @response `200` `LoanRoleTask` OK
3832
+ * @response `404` `ProblemDetails` Not Found
3833
+ */
3834
+ getLoanRoleTask: (loanId, id, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/role-tasks/${id}`, method: "GET", secure: true, format: "json" }, params)),
3835
+ /**
3836
+ * @description Edits the loan's own copy of the template. The account's catalogue entry is untouched, so the change applies to this borrower only. Omitted fields are left as they are.
3837
+ *
3838
+ * @tags LoanRoleTasks
3839
+ * @name UpdateLoanRoleTask
3840
+ * @summary Edit a queued task
3841
+ * @request PUT:/api/loans/{loanId}/role-tasks/{id}
3842
+ * @secure
3843
+ * @response `200` `LoanRoleTask` OK
3844
+ * @response `400` `ProblemDetails` Bad Request
3845
+ * @response `404` `ProblemDetails` Not Found
3846
+ * @response `409` `ProblemDetails` Conflict
3847
+ * @response `422` `ProblemDetails` Unprocessable Content
3848
+ */
3849
+ updateLoanRoleTask: (loanId, id, data, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/role-tasks/${id}`, method: "PUT", body: data, secure: true, type: "application/json", format: "json" }, params)),
3850
+ /**
3851
+ * @description Removes a queued task from a borrower slot. The removal is remembered, so a later run of the rules does not queue the same template again.
3852
+ *
3853
+ * @tags LoanRoleTasks
3854
+ * @name DeleteLoanRoleTask
3855
+ * @summary Remove a queued task
3856
+ * @request DELETE:/api/loans/{loanId}/role-tasks/{id}
3857
+ * @secure
3858
+ * @response `204` `void` No Content
3859
+ * @response `404` `ProblemDetails` Not Found
3860
+ * @response `409` `ProblemDetails` Conflict
3861
+ */
3862
+ deleteLoanRoleTask: (loanId, id, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/role-tasks/${id}`, method: "DELETE", secure: true }, params)),
3863
+ /**
3864
+ * @description Runs the account's business rules against the loan and queues what is missing. Templates already queued, and ones removed by staff, are left alone.
3865
+ *
3866
+ * @tags LoanRoleTasks
3867
+ * @name MaterializeLoanRoleTasks
3868
+ * @summary Queue the business rule defaults
3869
+ * @request POST:/api/loans/{loanId}/role-tasks/materialize
3870
+ * @secure
3871
+ * @response `200` `MaterializeLoanRoleTasks` OK
3872
+ * @response `404` `ProblemDetails` Not Found
3873
+ */
3874
+ materializeLoanRoleTasks: (loanId, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/role-tasks/materialize`, method: "POST", secure: true, format: "json" }, params)),
3776
3875
  /**
3777
3876
  * No description
3778
3877
  *
@@ -4178,6 +4277,7 @@ export class Api extends HttpClient {
4178
4277
  * @request POST:/api/loans/{loanId}/users/{userId}
4179
4278
  * @secure
4180
4279
  * @response `201` `LoanUser` Created
4280
+ * @response `404` `ProblemDetails` Not Found
4181
4281
  */
4182
4282
  addLoanUser: (loanId, userId, data, params = {}) => this.request(Object.assign({ path: `/api/loans/${loanId}/users/${userId}`, method: "POST", body: data, secure: true, type: "application/json", format: "json" }, params)),
4183
4283
  /**