UNPKG

@simplyhomes/sos-client

Version:

Client SDK for SimplyHomes SOS API

77 lines (76 loc) 3.25 kB
import { SDK_Base } from 'sdk/client/base'; import { SDK_Execution } from 'sdk/interfaces/sdk-execution'; import { SDK_UpdateMarket_Body_Dto, SDK_UpdateMarket_Body_MarketOwner, SDK_UpdateMarket_Response } from './types'; import { SDK_Context } from 'sdk/client/client'; export declare class SDK_Market_Update extends SDK_Base implements SDK_Execution { private marketId; private payload; constructor(ctx: SDK_Context, marketId: number, payload?: SDK_UpdateMarket_Body_Dto); /** * Sets the default owner ID for the market. * @param defaultOwnerId - The default owner ID. * @returns The current instance for chaining. */ withDefaultOwnerId(defaultOwnerId: number): this; /** * Sets the market owner details. * @param marketOwner - The market owner details. * @returns The current instance for chaining. */ withMarketOwner(marketOwner: SDK_UpdateMarket_Body_MarketOwner): this; /** * Sets the NOI cap rate threshold for the market. * @param thresholdNoiCapRate - The NOI cap rate threshold. * @returns The current instance for chaining. */ withThresholdNoiCapRate(thresholdNoiCapRate: number): this; /** * Sets the ARV uplift threshold for the market. * @param thresholdArvUplift - The ARV uplift threshold. * @returns The current instance for chaining. */ withThresholdArvUplift(thresholdArvUplift: number): this; /** * Sets the title insurance percentage for the market. * @param titleInsurancePercentage - The title insurance percentage. * @returns The current instance for chaining. */ withTitleInsurancePercentage(titleInsurancePercentage: number): this; /** * Sets the default term template ID for the market. * @param defaultTermTemplateId - The term template ID. * @returns The current instance for chaining. */ withDefaultTermTemplateId(defaultTermTemplateId: number): this; /** * Sets the vacancy percentage for the market. * @param vacancyPercentage - The vacancy percentage. * @returns The current instance for chaining. */ withVacancyPercentage(vacancyPercentage: number): this; /** * Sets the repair and maintenance percentage for the market. * @param repairAndMaintenancePercentage - The repair and maintenance percentage. * @returns The current instance for chaining. */ withRepairAndMaintenancePercentage(repairAndMaintenancePercentage: number): this; /** * Sets the replacement cost per square foot for the market. * @param replacementCostPerFeet - The replacement cost per square foot. * @returns The current instance for chaining. */ withReplacementCostPerFeet(replacementCostPerFeet: number): this; /** * Sets the default county ID for the market. * @param defaultCountyId - The default county ID. * @returns The current instance for chaining. */ withDefaultCountyId(defaultCountyId: string): this; /** * Executes the market update with all configured values * @returns Promise resolving to the update response */ execute(): Promise<SDK_UpdateMarket_Response>; private clonePayload; private resetPayload; }