UNPKG

@matech/thebigpos-sdk

Version:
1,686 lines 347 kB
export type VersionStatusType = "Draft" | "Published"; export type UserRole = "Borrower" | "LoanOfficer" | "Admin" | "SuperAdmin" | "Realtor" | "SettlementAgent" | "LoanProcessor" | "LoanOfficerAssistant" | "SystemAdmin"; export type TaskStatus = "Outstanding" | "Pending" | "Completed" | "Rejected" | "Unknown"; export type SiteConfigurationType = "None" | "Account" | "Corporate" | "Branch" | "LoanOfficer" | "Partner"; export type SigningMethod = "ConsumerConnect" | "POSF"; export type SSOIntegrationType = "ConsumerConnect" | "TheBigPOS" | "POSF"; export type LosSyncStepSeverity = "Success" | "Info" | "Warning" | "Error"; export type LosOperationStatus = "Pending" | "Success" | "Failed" | "ConfigurationError" | "PermanentFailure" | "Locked"; export type LogLevel = "None" | "Info" | "Warning" | "Error"; export type LoanType = "Fha" | "Conventional" | "UsdaRd" | "Va" | "Other"; export type LoanTrustType = "Living" | "Land" | "Testamentary" | "Other"; export type LoanTitleHeld = "Sole" | "JointWithSpouse" | "JointWithOtherThanSpouse"; export type LoanTaskActivityFilter = "Active" | "Inactive" | "All"; export type LoanRole = "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin"; export type LoanRealEstateStatus = "Keep" | "Rent" | "Sell"; export type LoanQueueType = "Unknown" | "New" | "Append" | "Update" | "FieldUpdates" | "Document" | "Buckets"; export type LoanQueueReason = "Unknown" | "Locked" | "LOSError" | "Exception"; export type LoanPurpose = "Purchase" | "Refinance"; export type LoanPropertyType = "SingleFamily" | "MultiFamily" | "Condominium" | "Townhouse" | "ManufacturedHome" | "PlannedUnitDevelopment" | "ModularHome" | "Other"; export type LoanPhoneNumberType = "Home" | "Cell" | "Work" | "Fax" | "Other"; export type LoanPacificIslanderRace = "NativeHawaiian" | "GuamanianOrChamorro" | "Samoan" | "Other"; export type LoanOwnershipInterestPropertyType = "PrimaryResidence" | "FHASecondaryResidence" | "SecondaryResidence" | "Investment"; export type LoanOtherLiabilityType = "Alimony" | "ChildSupport" | "SeparateMaintenance" | "JobRelatedExpense" | "Other"; export type LoanOtherIncomeType = "AccessoryUnitIncome" | "Alimony" | "AutomobileAllowance" | "BoarderIncome" | "CapitalGains" | "ChildSupport" | "DefinedContributionPlan" | "Disability" | "DividendsInterest" | "EmploymentRelatedAccount" | "FosterCare" | "HousingAllowance" | "HousingChoiceVoucherProgram" | "MortgageCreditCertificate" | "MortgageDifferential" | "NonBorrowerHouseholdIncome" | "NotesReceivableInstallment" | "Pension" | "PublicAssistance" | "Royalties" | "SeparateMaintenance" | "SocialSecurity" | "TemporaryLeave" | "TipIncome" | "Trust" | "VABenefitsNonEducational" | "Other"; export type LoanOtherAssetType = "ProceedsRealEstate" | "ProceedsNonRealEstate" | "SecuredBorrowerFunds" | "UnsecuredBorrowerFunds" | "EarnestMoney" | "EmployerAssistance" | "LotEquity" | "ReAddressFunds" | "RentCredit" | "SweatEquity" | "TradeEquity" | "Other"; export type LoanOccupancyType = "PrimaryHome" | "SecondHome" | "InvestmentProperty" | "Other"; export type LoanNameSuffix = "Jr" | "Sr" | "II" | "III" | "IV" | "V" | "VI" | "VII"; export type LoanNamePrefix = "Mr" | "Mrs" | "Ms"; export type LoanMilitaryServiceType = "Current" | "RetiredDischargedSeparated" | "NonActivatedNationalGuard" | "SurvivingSpouse"; export type LoanMaritalStatus = "Married" | "Separated" | "Unmarried"; export type LoanLogType = "Loan" | "Queue" | "POSFlagChanged" | "Verification" | "DocumentUploaded" | "LoanCreated" | "WorkflowSubmitted" | "UserInvitationSent" | "CoBorrowerAdded" | "TaskCompleted" | "LoanStatusChanged" | "Consent" | "SensitiveDataPurge" | "ClosingDateUpdated" | "ConsumerConnectAssociation" | "TaskReminderSent"; export type LoanLienPosition = "First" | "Subordinate"; export type LoanLiabilityType = "Revolving" | "Installment" | "Open30Day" | "Lease" | "Other"; export type LoanLanguagePreference = "English" | "Chinese" | "Korean" | "Spanish" | "Tagalog" | "Vietnamese" | "Other"; export type LoanImportStatus = "WaitingProcess" | "InProgress" | "Completed" | "Failed" | "Cancelled"; export type LoanImportMode = "All" | "NewOnly" | "UpdateOnly"; export type LoanHousingType = "NoExpense" | "Own" | "Rent"; export type LoanHomeOwnershipType = "Counseling" | "Education" | "Other"; export type LoanHomeOwnershipFormat = "InPerson" | "Online" | "Telephone"; export type LoanHispanicEthnicity = "Mexican" | "PuertoRican" | "Cuban" | "Other"; export type LoanGiftSource = "CommunityNonProfit" | "Employer" | "FederalAgency" | "LocalAgency" | "Relative" | "ReligiousNonProfit" | "StateAgency" | "UnmarriedPartner" | "Lender" | "Other"; export type LoanGiftAssetType = "Cash" | "Asset" | "Equity"; export type LoanGenderType = "Male" | "Female"; export type LoanDocumentFolderPermissionLevel = "None" | "Read" | "Write" | "Manage"; export type LoanCitizenship = "USCitizen" | "PermanentResidentAlien" | "NonPermanentResidentAlien"; export type LoanBankruptcyType = "Chapter7" | "Chapter11" | "Chapter12" | "Chapter13"; export type LoanAsianRace = "AsianIndian" | "Chinese" | "Filipino" | "Japanese" | "Korean" | "Vietnamese" | "Other"; export type LoanAccountAssetType = "Checking" | "Savings" | "MoneyMarket" | "CertificateOfDeposit" | "MutualFund" | "Stocks" | "Bonds" | "Retirement" | "BridgeLoanProceeds" | "IndividualDevelopmentAccount" | "TrustAccount" | "CashValueOfLifeInsurance" | "Other"; export type LoanAccessScopeType = "User" | "Branch"; export type LOSStatus = "Unknown" | "Pending" | "Retrying" | "Successful" | "Failed" | "FailedPermanently" | "Uploaded" | "PendingSync"; export type FilterType = "DateGreaterThanOrEqualTo" | "DateGreaterThan" | "DateLessThan" | "DateLessThanOrEqualTo" | "DateEquals" | "DateDoesntEqual" | "DateNonEmpty" | "DateEmpty" | "StringContains" | "StringEquals" | "StringNotEmpty" | "StringNotEquals" | "StringNotContains"; export type Environment = "Development" | "Staging" | "UAT" | "Production"; export type EntityType = "Account" | "Corporate" | "Branch" | "LoanOfficer" | "Realtor"; export type EncompassLogOutcome = "Success" | "Failure" | "PartialSuccess"; export type EncompassLogOperationType = "FieldUpdate" | "ConsentUpdate" | "DocumentSync" | "MilestoneUpdate" | "DocumentAttachment" | "General" | "FieldReader"; export type EncompassEnvironment = "Production" | "UAT"; export type DraftType = "NewLoan" | "EditLoan"; export type CustomFieldEntityType = "Loan"; export type CustomFieldDataType = "String" | "Number" | "Decimal" | "Boolean" | "Date" | "SingleSelect" | "MultiSelect"; export type CustomFieldAccessLevel = "NoAccess" | "ReadOnly" | "ReadWrite"; export type ConsentType = "Econsent" | "CreditAuthorization" | "Tcpa"; export type ConsentSource = "TheBigPOS" | "ConsumerConnect"; export type ConsentLosSyncStatus = "NotStarted" | "Failed" | "Success"; export type BranchType = "Mortgage" | "RealEstate"; export type BorrowerType = "Borrower" | "CoBorrower" | "Unknown"; export type BorrowerRelationship = "NotApplicable" | "Spouse" | "NonSpouse"; export type BorrowerApplicationStatus = "Draft" | "Complete"; export type BillingType = "ClosedLoan" | "LoanOfficer"; export type AuditChangeType = "Created" | "Modified" | "SoftDeleted" | "HardDeleted" | "Restored" | "Deactivated" | "Reactivated"; 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"; export interface ASOSettings { enabled: boolean; softPull: boolean; triMerge: boolean; closingCosts: boolean; du: boolean; lp: boolean; iceIncomeAnalyzer: boolean; iceCreditAnalyzer: boolean; voa: boolean; voi: boolean; voie: boolean; voe: boolean; flood: boolean; avm: boolean; disclosures: boolean; preApproval: boolean; preQualification: boolean; mi: boolean; miRadian: boolean; miEssent: boolean; miNational: boolean; miEnact: boolean; mimgic: boolean; miArch: boolean; } export interface Account { /** @format uuid */ id: string; name: string; fusionCustomerID: string; mfaPreference: string; /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format int32 */ allowedLoginsWithoutMFA: number; losSettings: LOSSettings; asoSettings?: ASOSettings | null; settings: AccountSettings; billingSettings?: AccountBilling | null; } export interface AccountBilling { billingType: string; /** @format double */ contractedRate: number; } export interface AccountBillingRequest { billingType: "ClosedLoan" | "LoanOfficer"; /** * @format double * @min 0 * @exclusiveMin true */ contractedRate: number; } export interface AccountDeactivated { accountDeactivated: boolean; email: string; } export interface AccountReactivationCompleteRequest { /** @format uuid */ token: string; /** @minLength 8 */ newPassword: string; } export interface AccountReactivationRequest { /** * @format email * @minLength 1 */ email: string; /** @format uuid */ siteConfigurationId: string; } export interface AccountSettings { isSmsEnabled: boolean; isLoanEditEnabled: boolean; smsNumber?: string | null; ssoHostOverride?: string | null; isEarlyAdopter: boolean; } export interface AccountSettingsRequest { isSmsEnabled: boolean; smsNumber?: string | null; isEarlyAdopter: boolean; } export interface Action { /** @format uuid */ id: string; name: string; comments?: string | null; /** @format uuid */ siteConfigurationID: string; applicationSettings?: any; surveysToken?: string | null; } export interface Address { /** @format uuid */ id: string; street?: string | null; unit?: string | null; city?: string | null; state?: string | null; county?: string | null; postalCode?: string | null; } export interface AddressRequest { /** * @minLength 1 * @maxLength 255 */ street: string; /** @maxLength 50 */ unit?: string | null; /** @maxLength 50 */ unitType?: string | null; /** * @minLength 1 * @maxLength 100 */ city: string; /** @minLength 1 */ state: string; /** @maxLength 100 */ county?: string | null; /** @minLength 1 */ postalCode: string; } export interface AddressV3 { /** @format uuid */ id?: string | null; street?: string | null; unit?: string | null; unitType?: string | null; city?: string | null; state?: string | null; county?: string | null; postalCode?: string | null; } export interface AdminAccessGetForms { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; /** @format int32 */ type: number; target: string; name: string; isDefault: boolean; description?: string | null; slug?: string | null; status: string; language?: string | null; borrowerType?: BorrowerType | null; showProgressBar: boolean; } export interface AdminAccessUser { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; role: string; firstName: string; lastName: string; email: string; phone?: string | null; title?: string | null; forcePasswordReset: boolean; mfaEnabled: boolean; phoneVerified: boolean; /** @format int32 */ loginsWithoutMFACount: number; canImpersonate: boolean; isInternal: boolean; preferredLoanOfficer?: PreferredLoanOfficer | null; loanIDs: string[]; drafts: Draft[]; notificationSettings?: UserNotificationSettings | null; /** @format uuid */ accountID?: string | null; loans: UserLoan[]; } export interface AdminUser { firstName: string; lastName: string; email: string; password: string; } export interface AffordabilityCalculator { /** @format double */ monthlyPrincipalAndInterest: number; /** @format double */ monthlyTaxes: number; /** @format double */ monthlyInsurance: number; /** @format double */ monthlyPmi: number; /** @format double */ monthlyTotal: number; /** @format double */ actualFrontRatio: number; /** @format double */ actualBackRatio: number; /** @format double */ loanAmount: number; /** @format double */ downPayment: number; /** @format double */ homeValue: number; amortization: Amortization; } export interface AffordabilityCalculatorRequest { /** * @format double * @min 0 * @max 200000 */ totalMonthlyIncome: number; /** * @format double * @min 0 */ totalMonthlyExpenses: number; /** * @format double * @min 0 * @max 95 */ downPayment: number; /** * @format double * @min 1 * @max 25 */ interestRate: number; /** * @format int32 * @min 1 * @max 40 */ term: number; /** * @format double * @min 0 * @max 10 */ pmi: number; /** * @format double * @min 5 * @max 60 */ frontRatio: number; /** * @format double * @min 5 * @max 80 */ backRatio: number; /** * @format double * @min 0 * @max 200000 */ annualTaxes: number; /** * @format double * @min 200 * @max 50000 */ annualInsurance: number; } export interface AllowImpersonationRequest { /** * @format email * @minLength 1 */ email: string; } export interface Amortization { /** @format double */ balance: number; /** @format double */ periodicInterest: number; /** @format int32 */ periods: number; /** @format double */ periodicPayment: number; /** @format double */ totalInterest: number; /** @format double */ totalPayment: number; /** @format date-time */ startDate: string; /** @format date-time */ endDate?: string | null; schedule: AmortizationSchedule[]; /** @format int32 */ monthsWithPmi: number; } export interface AmortizationSchedule { /** @format double */ interest: number; /** @format double */ principal: number; /** @format double */ balance: number; /** @format date-time */ date: string; /** @format double */ pmi: number; } export interface ApplicationRowData { borrowerEmail?: string | null; borrowerFirstName?: string | null; borrowerLastName?: string | null; /** @deprecated */ firstName?: string | null; /** @deprecated */ lastName?: string | null; coBorrowerEmail?: string | null; coBorrowerFirstName?: string | null; coBorrowerLastName?: string | null; loanOfficer?: string | null; loanOfficerEmail?: string | null; /** @format uuid */ id: string; loanID: string; /** @format date-time */ applicationDate?: string | null; loanReferenceID: string; /** @format float */ loanAmount?: number | null; loanNumber?: string | null; /** @deprecated */ role?: string | null; /** @format date */ initialDisclosureDate?: string | null; /** @format date */ closingDisclosureDate?: string | null; /** @format date */ underwritingApprovalDate?: string | null; /** @format date-time */ closedDate?: string | null; /** @format date-time */ fundingDate?: string | null; /** @format date */ currentStatusDate?: string | null; channel?: string | null; currentMilestone?: string | null; lastMilestone?: string | null; loanStatus?: string | null; loanTerm?: string | null; subjectPropertyStreet?: string | null; subjectPropertyUnitType?: string | null; subjectPropertyUnitNumber?: string | null; subjectPropertyCity?: string | null; subjectPropertyState?: string | null; subjectPropertyZip?: string | null; loanPurpose?: string | null; buyerAgent?: EncompassContact | null; sellerAgent?: EncompassContact | null; settlementAgent?: EncompassContact | null; escrowAgent?: EncompassContact | null; titleInsuranceAgent?: EncompassContact | null; } export interface Attachment { fileName: string; base64Data: string; } export interface AuditEntityType { entityType: string; rootEntityType?: string | null; } export interface AuditLogEntry { /** @format uuid */ id: string; entityType: string; changeType: "Created" | "Modified" | "SoftDeleted" | "HardDeleted" | "Restored" | "Deactivated" | "Reactivated"; /** @format uuid */ entityId: string; performedBy?: AuditLogUser | null; rootEntityType?: string | null; /** @format uuid */ rootEntityId?: string | null; changes?: any; /** @format date-time */ createdAt: string; } export interface AuditLogEntryPaginated { rows: AuditLogEntry[]; pagination: Pagination; /** @format int64 */ count: number; } export interface AuditLogSearchCriteria { entityType?: string | null; changeType?: AuditChangeType | null; /** @format uuid */ entityId?: string | null; /** @format uuid */ performedById?: string | null; /** @format date-time */ startDate?: string | null; /** @format date-time */ endDate?: string | null; } export interface AuditLogUser { /** @format uuid */ id: string; firstName: string; lastName: string; email: string; } export interface AutomatedService { triggered: string[]; skipped: string[]; rateLimited: string[]; } export interface BranchBase { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; name: string; type: string; } export interface BranchReduced { /** @format uuid */ id: string; name: string; type: string; siteConfigurations: SiteConfigurationReduced[]; } export interface BranchSearchCriteria { searchText?: string | null; isActive?: boolean | null; brands?: string[] | null; type?: string | null; } export interface BranchSummary { /** @format uuid */ id: string; name: string; type: string; } export interface BranchUser { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; role: string; firstName: string; lastName: string; email: string; phone?: string | null; title?: string | null; forcePasswordReset: boolean; mfaEnabled: boolean; phoneVerified: boolean; /** @format int32 */ loginsWithoutMFACount: number; canImpersonate: boolean; isInternal: boolean; preferredLoanOfficer?: PreferredLoanOfficer | null; loanIDs: string[]; drafts: Draft[]; notificationSettings?: UserNotificationSettings | null; /** @format uuid */ branchID: string; branchName: string; /** @format uuid */ corporateID: string; corporateName: string; siteConfigurations: SiteConfigurationReduced[]; } export interface BranchUserPaginated { rows: BranchUser[]; pagination: Pagination; /** @format int64 */ count: number; } export interface BusinessRule { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; name: string; description?: string | null; tasks: Task[]; filter: BusinessRuleCondition[]; applyToAllBorrowerPairs: boolean; } export interface BusinessRuleCondition { /** @format int32 */ conditionType: number; targetFieldID: string; targetFieldValue: string; } export interface BusinessRuleRequest { /** * @minLength 1 * @maxLength 250 */ name: string; description?: string | null; tasks: TaskUpdateRequest[]; filter: BusinessRuleCondition[]; applyToAllBorrowerPairs: boolean; } export interface ChangePasswordRequest { /** @minLength 1 */ oldPassword: string; /** @minLength 8 */ newPassword: string; } export interface ClosedLoansReport { /** @format int32 */ totalClosedPosLoans: number; /** @format int32 */ totalClosedNonPosLoans: number; /** @format double */ totalUtilization: number; accounts: ClosedLoansReportAccount[]; } export interface ClosedLoansReportAccount { /** @format uuid */ id: string; name: string; /** @format int32 */ closedPosLoans: number; /** @format int32 */ closedNonPosLoans: number; /** @format double */ utilization: number; } export interface ClosedLoansReportRequest { /** * @format date * @minLength 1 */ startDate: string; /** * @format date * @minLength 1 */ endDate: string; } export interface CommentUserInformation { entityId: string; entityType: string; entityName?: string | null; entityUri?: string | null; } export interface Company { name?: string | null; siteUrl?: string | null; address?: string | null; address2?: string | null; city?: string | null; state?: string | null; zip?: string | null; phone?: string | null; fax?: string | null; nmlsid?: string | null; } export interface CompanyAddress { address: string; address2?: string | null; city: string; state: string; zip: string; } export interface ConditionComment { commentId: string; comments: string; /** @format int32 */ forRoleId: number; forRole: CommentUserInformation; /** @format date-time */ dateCreated: string; createdBy: string; createdByName: string; } export interface ConsumerConnectRetry { correlationKey: string; email: string; status?: LosOperationStatus | null; success: boolean; } export interface ConsumerConnectStatus { correlationKey: string; email: string; status?: LosOperationStatus | null; /** @format int32 */ attemptCount: number; /** @format date-time */ lastAttemptAt?: string | null; /** @format date-time */ nextRetryAt?: string | null; lastTriggerSource?: string | null; } export interface ContactInfo { phone: string; tollFreePhone?: string | null; fax?: string | null; } export interface Corporate { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; name: string; /** @uniqueItems true */ branchIDs: string[]; siteConfigurations: SiteConfigurationReduced[]; } export interface CorporateBase { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; name: string; } export interface CorporatePaginated { rows: Corporate[]; pagination: Pagination; /** @format int64 */ count: number; } export interface CorporateRequest { /** * @minLength 1 * @maxLength 250 */ name: string; } export interface CorporateSearchCriteria { searchText?: string | null; isActive?: boolean | null; } export interface CreateAccessScopeRequest { scopeType: "User" | "Branch"; /** @format uuid */ userId?: string | null; /** @format uuid */ branchId?: string | null; } export interface CreateAccountRequest { /** @minLength 1 */ name: string; /** @minLength 1 */ domain: string; eConsentBucket?: string | null; ignoreCoBorrowerRelationship: boolean; user: AdminUser; companyAddress: CompanyAddress; contactInfo: ContactInfo; theme: Theme; /** * @format int64 * @min 0 */ nlmsid: number; settings: AccountSettingsRequest; environment: "Development" | "Staging" | "UAT" | "Production"; losIntegration: LOSIntegration; billingSettings: AccountBillingRequest; } export interface CreateBranchRequest { /** * @minLength 1 * @maxLength 250 */ name: string; /** @format uuid */ corporateID: string; type: string; } export interface CreateCustomFieldDefinitionRequest { isRequired: boolean; /** * @format int32 * @min 0 */ displayOrder: number; /** @format int32 */ minLength?: number | null; /** @format int32 */ maxLength?: number | null; /** @format double */ minValue?: number | null; /** @format double */ maxValue?: number | null; /** * @minLength 1 * @maxLength 250 */ name: string; defaultValue?: string | null; regexPattern?: string | null; dataType: "String" | "Number" | "Decimal" | "Boolean" | "Date" | "SingleSelect" | "MultiSelect"; entityType: "Loan"; options?: CustomFieldOptionRequest[] | null; permissions?: CustomFieldPermissionRequest[] | null; } export interface CreateDocumentTemplateRequest { /** @minLength 1 */ htmlBody: string; /** * @minLength 1 * @maxLength 255 */ name: string; type: string; description?: string | null; destinationBucket?: string | null; status: string; } export interface CreateGroupMemberRequest { /** @format uuid */ userId: string; loanRole: "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin"; } export interface CreateInviteRequest { /** @minLength 1 */ firstName: string; /** @minLength 1 */ lastName: string; /** @format email */ emailAddress: string; phoneNumber?: string | null; /** @deprecated */ relationship: "NotApplicable" | "Spouse" | "NonSpouse"; loanID: string; route?: string | null; /** @format uuid */ siteConfigurationID: string; /** @deprecated */ userRole?: UserRole | null; loanRole?: LoanRole | null; } export interface CreateLoanDocumentFolderRequest { /** * @minLength 1 * @maxLength 250 */ name: string; permissions: LoanDocumentFolderPermissionRequest[]; } export interface CreateLoanImportRequest { /** @format uuid */ accountID: string; /** * @format date-time * @minLength 1 */ endDate: string; /** * @format date-time * @minLength 1 */ startDate: string; importMode: "All" | "NewOnly" | "UpdateOnly"; } export interface CreateSession { sessionId: string; sessionUrl: string; /** @format date-time */ createdAt: string; /** @format date-time */ expiresAt?: string | null; } export interface CreateSessionRequest { packageId: string; recipientId: string; } export interface CreateUserDeviceRequest { token: string; } export interface CreateUserDraft { loanRole: "Borrower" | "CoBorrower" | "NonBorrower" | "LoanOfficer" | "LoanProcessor" | "LoanOfficerAssistant" | "SupportingLoanOfficer" | "BuyerAgent" | "SellerAgent" | "TitleInsuranceAgent" | "EscrowAgent" | "SettlementAgent" | "Admin"; } export interface CreateUserGroupRequest { /** * @minLength 1 * @maxLength 200 */ name: string; /** @maxLength 1000 */ description?: string | null; } export interface CreateUserLoan { loanRole?: LoanRole | null; } export interface CreateUserRelationRequest { /** * @format uuid * @minLength 1 */ userId1: string; /** * @format uuid * @minLength 1 */ userId2: string; /** @minLength 1 */ relationType: string; } export interface CreateUserRequest { /** * @format email * @minLength 1 */ email: string; phone?: string | null; /** * @minLength 1 * @maxLength 255 */ firstName: string; /** * @minLength 1 * @maxLength 255 */ lastName: string; title?: string | null; /** @format uuid */ branchId?: string | null; /** @minLength 1 */ userRole: string; isInternal?: boolean | null; } export interface CreateWebhookRequest { webhookPath: string; } export interface CustomFieldDefinition { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; /** @format uuid */ accountID: string; isActive: boolean; isRequired: boolean; /** @format int32 */ displayOrder: number; /** @format int32 */ minLength?: number | null; /** @format int32 */ maxLength?: number | null; /** @format double */ minValue?: number | null; /** @format double */ maxValue?: number | null; name: string; defaultValue?: string | null; regexPattern?: string | null; dataType: "String" | "Number" | "Decimal" | "Boolean" | "Date" | "SingleSelect" | "MultiSelect"; entityType: "Loan"; options: CustomFieldOption[]; permissions: CustomFieldPermission[]; encompassMapping?: EncompassMapping | null; } export interface CustomFieldEntry { /** @format uuid */ definitionId: string; isActive: boolean; isReadOnly: boolean; /** @format int32 */ displayOrder: number; name: string; value: string; dataType: "String" | "Number" | "Decimal" | "Boolean" | "Date" | "SingleSelect" | "MultiSelect"; } export interface CustomFieldOption { /** @format uuid */ id: string; /** @format int32 */ displayOrder: number; value: string; } export interface CustomFieldOptionRequest { /** @format int32 */ displayOrder: number; value: string; } export interface CustomFieldPermission { /** @format uuid */ id: string; role: "Borrower" | "LoanOfficer" | "Admin" | "SuperAdmin" | "Realtor" | "SettlementAgent" | "LoanProcessor" | "LoanOfficerAssistant" | "SystemAdmin"; accessLevel: "NoAccess" | "ReadOnly" | "ReadWrite"; } export interface CustomFieldPermissionRequest { role: "Borrower" | "LoanOfficer" | "Admin" | "SuperAdmin" | "Realtor" | "SettlementAgent" | "LoanProcessor" | "LoanOfficerAssistant" | "SystemAdmin"; accessLevel: "NoAccess" | "ReadOnly" | "ReadWrite"; } export interface CustomFieldValue { /** @format uuid */ id: string; /** @format uuid */ entityID: string; /** @format uuid */ customFieldDefinitionID: string; value: string; definitionName: string; dataType: "String" | "Number" | "Decimal" | "Boolean" | "Date" | "SingleSelect" | "MultiSelect"; } export interface DetailedUser { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; role: string; firstName: string; lastName: string; email: string; phone?: string | null; title?: string | null; forcePasswordReset: boolean; mfaEnabled: boolean; phoneVerified: boolean; /** @format int32 */ loginsWithoutMFACount: number; canImpersonate: boolean; isInternal: boolean; preferredLoanOfficer?: PreferredLoanOfficer | null; loanIDs: string[]; drafts: Draft[]; notificationSettings?: UserNotificationSettings | null; } export interface Device { /** @format uuid */ id: string; /** @format uuid */ accountID: string; serialNumber: string; apps: any; /** @format uuid */ createdBy: string; /** @format uuid */ updatedBy?: string | null; /** @format uuid */ managedBy?: string | null; name?: string | null; type?: string | null; status?: string | null; comments?: string | null; } export interface DeviceAction { is_enabled: boolean; localized_name?: string | null; name?: string | null; remarks?: string | null; localized_action_info?: string | null; status_code?: string | null; action_info?: string | null; localized_status_description?: string | null; status_description?: string | null; } export interface DeviceMDM { managed_status?: string | null; device_id?: string | null; is_supervised: boolean; os_version?: string | null; is_lost_mode_enabled: boolean; owned_by?: string | null; is_removed?: string | null; product_name?: string | null; device_name?: string | null; device_type?: string | null; platform_type?: string | null; wifi_mac?: string | null; udid?: string | null; serial_number?: string | null; customer_name?: string | null; customer_id?: string | null; model?: string | null; last_contact_time?: string | null; platform_type_id?: string | null; device_capacity?: string | null; imei: string[]; user?: MdmUser | null; actions?: DeviceAction[] | null; } export interface DevicePaginated { rows: Device[]; pagination: Pagination; /** @format int64 */ count: number; } export interface DeviceRequest { apps: any; name?: string | null; comments?: string | null; } export interface DocumentData { documentID: string; /** @format uuid */ eSignRecordID: string; documentBucketTitle?: string | null; documentName?: string | null; /** @format date-time */ createdAt: string; extension?: string | null; password: string; systemGenerated: boolean; } export interface DocumentDataRequest { documentID?: string | null; /** @format uuid */ eSignRecordID: string; documentBucketTitle?: string | null; documentName?: string | null; /** @format date-time */ createdAt: string; base64Data?: string | null; extension?: string | null; password?: string | null; systemGenerated: boolean; } export interface DocumentFile { /** @format uuid */ id: string; name: string; losStatus: string; } export interface DocumentFolder { folderName: string; /** @format int32 */ count: number; files: DocumentFile[]; } export interface DocumentFoldersRequest { searchText?: string | null; losStatuses?: LOSStatus[] | null; sortBy?: string | null; sortDirection?: string | null; } export interface DocumentSync { /** @format int32 */ syncedCount: number; /** @format date-time */ lastLosDocumentsSyncDate?: string | null; } export interface DocumentTemplate { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; htmlBody: string; name: string; multipleCustomTemplates: boolean; isDefault: boolean; type: string; description?: string | null; destinationBucket?: string | null; isDestinationBucketConfigurable: boolean; status: string; versions: DocumentTemplateVersionBase[]; } export interface DocumentTemplateBase { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; htmlBody: string; name: string; multipleCustomTemplates: boolean; isDefault: boolean; type: string; description?: string | null; destinationBucket?: string | null; isDestinationBucketConfigurable: boolean; status: string; } export interface DocumentTemplateVersion { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; /** @format int32 */ version: number; name: string; isActive: boolean; htmlBody: string; documentTemplate: DocumentTemplateBase; } export interface DocumentTemplateVersionBase { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; /** @format int32 */ version: number; name?: string | null; isActive: boolean; htmlBody: string; } export interface DocumentTemplateVersionRequest { /** @maxLength 255 */ name?: string | null; isActive: boolean; htmlBody: string; } export interface DocumentTemplateVersionUpdateRequest { /** @maxLength 255 */ name: string; isActive: boolean; /** @minLength 1 */ htmlBody: string; } export interface Draft { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; customData: any; user: UserBase; loanOfficer: UserBase; siteConfiguration: SiteConfigurationReduced; /** @format uuid */ loanID?: string | null; type: "NewLoan" | "EditLoan"; isCoBorrower: boolean; } export interface DraftContent { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; customData: any; user: UserBase; loanOfficer: UserBase; siteConfiguration: SiteConfigurationReduced; /** @format uuid */ loanID?: string | null; type: "NewLoan" | "EditLoan"; isCoBorrower: boolean; applicationPayload: any; } export interface DraftContentPaginated { rows: DraftContent[]; pagination: Pagination; /** @format int64 */ count: number; } export interface DraftLoanOfficerReassignRequest { /** @format uuid */ loanOfficerID: string; } export interface DraftRequest { applicationPayload: any; customData?: any; isCoBorrower: boolean; } export interface EnabledServices { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; mobilePrequal?: boolean | null; fullApp?: boolean | null; mobileApp?: boolean | null; ringCentral?: boolean | null; socialSurvey?: boolean | null; borrowerTasks?: boolean | null; docusign?: boolean | null; emailNotifications?: boolean | null; autoTaskReminders?: boolean | null; voc?: boolean | null; spanishPrequal?: boolean | null; spanishFullApp?: boolean | null; prequalLetter?: boolean | null; payments?: boolean | null; leadApp?: boolean | null; documents?: boolean | null; loanCalculator?: boolean | null; disclosures?: boolean | null; buyerClient?: boolean | null; sellerClient?: boolean | null; clientLifestyle?: boolean | null; loanDetails?: boolean | null; loanStatus?: boolean | null; loanStatusNotifications?: boolean | null; loanAndProperty?: boolean | null; personalInformation?: boolean | null; employment?: boolean | null; assets?: boolean | null; realEstate?: boolean | null; encompassWeb?: boolean | null; support?: boolean | null; leads?: boolean | null; openHouseForm?: boolean | null; listingOfferForm?: boolean | null; listings?: boolean | null; addCoBorrower?: boolean | null; autoNameTaskDocuments?: boolean | null; genericCalculatorsEnabled?: boolean | null; } export interface EncompassContact { name?: string | null; email?: string | null; phone?: string | null; company?: string | null; } export interface EncompassCredentialsDetail { /** @format uuid */ id: string; /** @format uuid */ accountID: string; instanceID: string; loanAssignmentRole?: string | null; loanTemplate?: string | null; defaultLoanOfficerUserName?: string | null; clearStateIfUnlicensed: boolean; /** @deprecated */ baseUrl?: string | null; encompassEnvironment: "Production" | "UAT"; consumerConnectWidgetHost?: string | null; signingMethod: "ConsumerConnect" | "POSF"; subscriptionId?: string | null; environment?: string | null; } export interface EncompassCredentialsRequest { /** @format uuid */ id: string; /** @format uuid */ accountID: string; instanceID: string; loanAssignmentRole?: string | null; loanTemplate?: string | null; defaultLoanOfficerUserName?: string | null; clearStateIfUnlicensed: boolean; /** @deprecated */ baseUrl?: string | null; encompassEnvironment: "Production" | "UAT"; consumerConnectWidgetHost?: string | null; signingMethod: "ConsumerConnect" | "POSF"; subscriptionId?: string | null; environment?: string | null; clientID?: string | null; clientSecret?: string | null; signingKeyId?: string | null; signingKey?: string | null; } export interface EncompassCustomFieldMapping { /** @format uuid */ id: string; /** @format uuid */ customFieldDefinitionId: string; encompassFieldId: string; encompassFieldType: string; isActive: boolean; /** @format date-time */ createdAt: string; } export interface EncompassCustomFieldMappingRequest { encompassFieldId: string; encompassFieldType: string; } export interface EncompassError { errorCode: string; message: string; details?: string[] | null; } export interface EncompassFieldListItem { fieldId: string; description: string; fieldType: string; inUse: boolean; } export interface EncompassIntegrationSettings { consumerConnectWidgetHost?: string | null; } export interface EncompassLogSearchCriteria { searchText?: string | null; operationTypes?: EncompassLogOperationType[] | null; outcomes?: EncompassLogOutcome[] | null; /** @format date-time */ createdFrom?: string | null; /** @format date-time */ createdTo?: string | null; /** @format int32 */ httpStatusCode?: number | null; } export interface EncompassMapping { /** @format uuid */ id: string; encompassFieldId: string; status: string; } export interface EncompassPackageDocumentStatus { documentId: string; title: string; type?: string | null; signatureType?: string | null; isSigned: boolean; /** @format date-time */ viewedAt?: string | null; /** @format date-time */ completedAt?: string | null; } export interface EncompassPackageItem { packageId: string; status: string; /** @format date-time */ createdAt: string; recipientId: string; title?: string | null; /** @format date-time */ issuedAt?: string | null; /** @format date-time */ expiresAt?: string | null; /** @format int32 */ totalDocuments: number; /** @format int32 */ signedDocuments: number; documents: EncompassPackageDocumentStatus[]; } export interface EncompassPackageList { packages: EncompassPackageItem[]; /** @format int32 */ totalCount: number; /** @format int32 */ page: number; /** @format int32 */ pageSize: number; /** @format int32 */ totalPages: number; } export interface EncompassRecipientItem { /** @format uuid */ id: string; /** @format uuid */ packageId: string; recipientId: string; status: string; /** @format date-time */ createdAt: string; } export interface EncompassRequestLog { /** @format uuid */ id: string; losId?: string | null; /** @format uuid */ accountId: string; operationType: "FieldUpdate" | "ConsentUpdate" | "DocumentSync" | "MilestoneUpdate" | "DocumentAttachment" | "General" | "FieldReader"; outcome: "Success" | "Failure" | "PartialSuccess"; message: string; endpoint?: string | null; httpMethod?: string | null; /** @format int32 */ httpStatusCode?: number | null; /** @format int64 */ durationMs?: number | null; context?: any; /** @format date-time */ createdAt: string; } export interface EncompassRequestLogPaginated { rows: EncompassRequestLog[]; pagination: Pagination; /** @format int64 */ count: number; } export interface Error { message: string; } export interface File { /** @format uuid */ id: string; fileName: string; name: string; s3FilePath: string; user?: User | null; account?: Account | null; url: string; } export interface FilePaginated { rows: File[]; pagination: Pagination; /** @format int64 */ count: number; } export interface FileRequest { /** * @minLength 1 * @maxLength 250 */ name: string; } export interface FileSearchCriteria { searchText?: string | null; isPublic?: boolean | null; } export interface FileWithBytes { name: string; /** @format byte */ data: string; fileName: string; mimeType?: string | null; extension?: string | null; } export interface Form { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; formJSON: any; /** @format int32 */ type: number; target: string; authType: string; name: string; isDefault: boolean; description?: string | null; slug?: string | null; status: string; language?: string | null; showProgressBar: boolean; borrowerType?: BorrowerType | null; versions: FormVersion[]; } export interface FormRequest { formJSON: any; /** @format int32 */ type: number; target: string; authType: string; inviteUser: boolean; name: string; description?: string | null; slug?: string | null; status: string; language?: string | null; borrowerType?: BorrowerType | null; showProgressBar: boolean; } export interface FormSubmission { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; /** @format uuid */ formID?: string | null; formName?: string | null; firstName?: string | null; lastName?: string | null; email?: string | null; contactPhone?: string | null; /** @format uuid */ siteConfigurationID: string; siteConfiguration: SiteConfiguration; loanOfficerEmail?: string | null; /** @format uuid */ loanOfficerID?: string | null; loanOfficer?: User | null; /** @format uuid */ branchID?: string | null; branch?: GetBranch | null; status: string; subjectPropertyAddressStreet?: string | null; subjectPropertyAddressCity?: string | null; subjectPropertyAddressCounty?: string | null; subjectPropertyAddressState?: string | null; subjectPropertyAddressZip?: string | null; data?: any; /** @format uuid */ listingID?: string | null; listing?: Listing | null; files: FormSubmissionFile[]; } export interface FormSubmissionFile { /** @format uuid */ id: string; file: File; } export interface FormSubmissionPaginated { rows: FormSubmission[]; pagination: Pagination; /** @format int64 */ count: number; } export interface FormSubmissionRequest { formID?: string | null; formName?: string | null; firstName?: string | null; lastName?: string | null; email?: string | null; contactPhone?: string | null; loanOfficerEmail?: string | null; /** @format uuid */ loanOfficerID?: string | null; /** @format uuid */ branchID?: string | null; status?: string | null; subjectPropertyAddressStreet?: string | null; subjectPropertyAddressCity?: string | null; subjectPropertyAddressCounty?: string | null; subjectPropertyAddressState?: string | null; subjectPropertyAddressZip?: string | null; data?: any; /** @format uuid */ listingID?: string | null; } export interface FormSubmissionSearchCriteria { searchText?: string | null; /** @format uuid */ loanOfficerID?: string | null; /** @format uuid */ branchID?: string | null; formName?: string | null; formNames?: string[] | null; email?: string | null; status?: string | null; /** @format uuid */ listingID?: string | null; } export interface FormVersion { /** @format date-time */ createdAt: string; /** @format date-time */ updatedAt?: string | null; /** @format date-time */ deletedAt?: string | null; /** @format uuid */ id: string; /** @format int32 */ version: number; name?: string | null; isActive: boolean; formJSON: any; form: GetForm; } export interface FormVersionRequest { /** @maxLength 255 */ name?: string | null; isActive: boolean; formJSON: any; } export interface FormVersionUpda