@simplyhomes/sos-client
Version:
Client SDK for SimplyHomes SOS API
77 lines (76 loc) • 3.25 kB
TypeScript
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;
}