/* Options: Date: 2025-05-04 22:21:06 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: PatchCustomer.* //ExcludeTypes: //DefaultImports: */ export class NodeParameterMap { [key:string] : NodeParameter; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IReturn { createResponse(): T; } export interface IPatch { } export class BillingItem { public baseCost: number; public rawUnitMultiplier: number; public unitCost: number; public allowance: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BillingSettings { public base: BillingItem; public localNumbers: BillingItem; public tollFreeNumbers: BillingItem; public inboundVoiceCalls: BillingItem; public outboundVoiceCalls: BillingItem; public inboundFaxes: BillingItem; public outboundFaxes: BillingItem; public inboundSmsMessages: BillingItem; public outboundSmsMessages: BillingItem; public aiInsights: BillingItem; public aiLiveMinutes: BillingItem; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Struct { public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Value { public boolValue?: boolean; public stringValue: string; public numberValue?: number; public listValue: Struct[]; public structValue: Struct; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AppSettings { public enablePhoneNumberManagement: boolean; public enableDeviceManagement: boolean; public enableDialer: boolean; public enableCallHistory: boolean; public enableAssistants: boolean; public showFileNameInMessageCenter: boolean; public chakraTheme: string; public customCss: string; public pageTitle: string; public stringMappings: string; public logoutUrl: string; public portMyNumberUrl: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum TagColors { Magenta = 'Magenta', Red = 'Red', Volcano = 'Volcano', Orange = 'Orange', Gold = 'Gold', Lime = 'Lime', Green = 'Green', Cyan = 'Cyan', Blue = 'Blue', GeekBlue = 'GeekBlue', Purple = 'Purple', } export class Tag { public id: string; public name: string; public color: TagColors; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class EntityInfo { /** @description The ID of the object */ // @ApiMember(Description="The ID of the object") public id: string; /** @description The date the object was created */ // @ApiMember(Description="The date the object was created") public dateCreated: string; /** @description The date the object was last modified */ // @ApiMember(Description="The date the object was last modified") public dateLastModified: string; /** @description The user that created this object */ // @ApiMember(Description="The user that created this object") public createdBy: string; /** @description The user that last modified this object */ // @ApiMember(Description="The user that last modified this object") public lastModifiedBy: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CustomerBreadcrumb { public id: string; public name: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class IntegrationData { public thirdPartyId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Dictionary { [Key: string]: T; } export class EntityIntegrationData extends Dictionary { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } export class Schedule { public timeZoneId: string; public inherit: boolean; public forceClosed: boolean; public rules: SchedulingRule[]; public defaultState: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CustomerInfo extends EntityInfo { /** @description The ID of the account associated with this customer */ // @ApiMember(Description="The ID of the account associated with this customer") public accountId: string; /** @description The parent customer ID for this customer */ // @ApiMember(Description="The parent customer ID for this customer") public parentCustomerId: string; /** @description The breadcrumb to this customer */ // @ApiMember(Description="The breadcrumb to this customer") public breadcrumb: CustomerBreadcrumb[]; /** @description The name of the account associated with this customer */ // @ApiMember(Description="The name of the account associated with this customer") public accountName: string; /** @description Is this customer staging or production? */ // @ApiMember(Description="Is this customer staging or production?") public isStaging: boolean; /** @description The name of the company */ // @ApiMember(Description="The name of the company") public name: string; /** @description The reference ID for this company */ // @ApiMember(Description="The reference ID for this company") public referenceId: string; /** @description This customer's data values */ // @ApiMember(Description="This customer's data values") public data: Struct; /** @description The list of tags for this customer */ // @ApiMember(Description="The list of tags for this customer") public tags: Tag[]; /** @description This customer's schedule */ // @ApiMember(Description="This customer's schedule") public schedule: Schedule; /** @description Integration data for this customer */ // @ApiMember(Description="Integration data for this customer") public integrationData: EntityIntegrationData; /** @description Override this customer's billing settings? Otherwise inherits from parent */ // @ApiMember(Description="Override this customer's billing settings? Otherwise inherits from parent") public overrideBillingSettings: boolean; /** @description Billing settings for this customer */ // @ApiMember(Description="Billing settings for this customer") public billingSettings: BillingSettings; /** @description Should this customer override the parent customer's app settings */ // @ApiMember(Description="Should this customer override the parent customer's app settings") public overrideAppSettings: boolean; /** @description App / Portal settings for this customer */ // @ApiMember(Description="App / Portal settings for this customer") public appSettings: AppSettings; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description Update a specific customer */ // @Route("/customers/{customerId}", "PATCH") // @Api(Description="Update a specific customer") export class PatchCustomer implements IReturn, IPatch { /** @description The ID of the customer you want to update */ // @ApiMember(Description="The ID of the customer you want to update") public customerId: string; /** @description The name for the customer */ // @ApiMember(Description="The name for the customer") public name: string; /** @description The parent customer for this customer */ // @ApiMember(Description="The parent customer for this customer") public parentCustomerId: string; /** @description The reference ID for this customer (e.g. in a third party system) */ // @ApiMember(Description="The reference ID for this customer (e.g. in a third party system)") public referenceId: string; /** @description Data values for this customer */ // @ApiMember(Description="Data values for this customer") public data: Struct; /** @description The list of tag IDs for this customer */ // @ApiMember(Description="The list of tag IDs for this customer") public tagIds: string[]; /** @description This customer's schedule */ // @ApiMember(Description="This customer's schedule") public schedule: Schedule; /** @description Override this customer's billing settings? Otherwise inherits from parent */ // @ApiMember(Description="Override this customer's billing settings? Otherwise inherits from parent") public overrideBillingSettings?: boolean; /** @description Updated billing settings for this customer */ // @ApiMember(Description="Updated billing settings for this customer") public billingSettings: BillingSettings; /** @description Should this customer override the parent customer's app settings */ // @ApiMember(Description="Should this customer override the parent customer's app settings") public overrideAppSettings?: boolean; /** @description App / Portal settings for this customer */ // @ApiMember(Description="App / Portal settings for this customer") public appSettings: AppSettings; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'PatchCustomer'; } public getMethod() { return 'PATCH'; } public createResponse() { return new CustomerInfo(); } }