{ "version": 3, "sources": ["../../../packages/apps/caseflow/api.dtos.ts"], "sourcesContent": ["import { immerable } from \"immer\";\n\nexport interface IReturn<T>\n{\n createResponse(): T;\n}\n\nexport interface IReturnVoid\n{\n createResponse(): void;\n}\n\nexport interface IHasSessionId\n{\n sessionId: string|null;\n}\n\nexport interface IHasBearerToken\n{\n bearerToken: string|null;\n}\n\nexport interface IGet\n{\n}\n\nexport interface IPost\n{\n}\n\nexport interface IPut\n{\n}\n\nexport interface IDelete\n{\n}\n\nexport class SquareCard\n{\n public id: string|null;\n public card_brand: string|null;\n public exp_month: number|null;\n public exp_year: number|null;\n public last_4: string|null;\n public customer_id: string|null;\n public cardholder_name: string|null;\n\n public constructor(init?: Partial<SquareCard>) { (Object as any).assign(this, init); }\n}\n(SquareCard as unknown)[immerable] = true;\n\nexport class SquareMoneyAmount\n{\n public amount: number|null;\n public currency: string|null;\n\n public constructor(init?: Partial<SquareMoneyAmount>) { (Object as any).assign(this, init); }\n}\n(SquareMoneyAmount as unknown)[immerable] = true;\n\nexport class SquareRefund\n{\n public id: string|null;\n public created_at: string|null;\n public updated_at: string|null;\n public status: string|null;\n public amount_money: SquareMoneyAmount|null;\n public location_id: string|null;\n public payment_id: string|null;\n\n public constructor(init?: Partial<SquareRefund>) { (Object as any).assign(this, init); }\n}\n(SquareRefund as unknown)[immerable] = true;\n\nexport class SquareDeviceCode\n{\n public code: string|null;\n public created_at: string|null;\n public device_id: string|null;\n public id: string|null;\n public location_id: string|null;\n public name: string|null;\n public paired_at: string|null;\n public product_type: string|null;\n public status: string|null;\n public status_changed_at: string|null;\n\n public constructor(init?: Partial<SquareDeviceCode>) { (Object as any).assign(this, init); }\n}\n(SquareDeviceCode as unknown)[immerable] = true;\n\nexport class SquareDeviceOptions\n{\n public device_id: string|null;\n public skip_receipt_screen: boolean|null;\n\n public constructor(init?: Partial<SquareDeviceOptions>) { (Object as any).assign(this, init); }\n}\n(SquareDeviceOptions as unknown)[immerable] = true;\n\nexport class SquareTerminalCheckout\n{\n public amount_money: SquareMoneyAmount|null;\n public created_at: string|null;\n public deadline_duration: string|null;\n public id: string|null;\n public note: string|null;\n public reference_id: string|null;\n public status: string|null;\n public updated_at: string|null;\n public payment_ids: string[]|null;\n public device_options: SquareDeviceOptions|null;\n\n public constructor(init?: Partial<SquareTerminalCheckout>) { (Object as any).assign(this, init); }\n}\n(SquareTerminalCheckout as unknown)[immerable] = true;\n\nexport class SquareData\n{\n public card: SquareCard|null;\n public refund: SquareRefund|null;\n public device_code: SquareDeviceCode|null;\n public checkout: SquareTerminalCheckout|null;\n\n public constructor(init?: Partial<SquareData>) { (Object as any).assign(this, init); }\n}\n(SquareData as unknown)[immerable] = true;\n\nexport class SquareWebhookData\n{\n public type: string|null;\n public id: string|null;\n public object: SquareData|null;\n\n public constructor(init?: Partial<SquareWebhookData>) { (Object as any).assign(this, init); }\n}\n(SquareWebhookData as unknown)[immerable] = true;\n\nexport class BillingItem implements IHasId, ILocationId\n{\n public accountId: number|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public appointmentId: number|null;\n public locationId: number|null;\n public invoiceId: number|null;\n public stockId: number|null;\n public date: string|null;\n public description: string|null;\n public total: number|null;\n public isPaid: boolean|null;\n public isMigrated: boolean|null;\n public totalExVat: number|null;\n public quantity: number|null;\n public price: number|null;\n public vatRate: number|null;\n public totalVat: number|null;\n public id: number|null;\n public category: string|null;\n public ledgerCode: string|null;\n public accountsExportId: number|null;\n public prontoServiceId: string|null;\n public parentId: number|null;\n public subscriptionId: number|null;\n public discountCodeId: string|null;\n\n public constructor(init?: Partial<BillingItem>) { (Object as any).assign(this, init); }\n}\n(BillingItem as unknown)[immerable] = true;\n\nexport enum DiscountType\n{\n Amount = 'Amount',\n Percentage = 'Percentage',\n}\n\nexport enum DiscountStatus\n{\n Inactive = 'Inactive',\n Active = 'Active',\n}\n\nexport interface ILocationId\n{\n locationId: number|null;\n}\n\nexport enum AlphaNumericFilterConditions\n{\n Equals = 'Equals',\n DoesNotEqual = 'DoesNotEqual',\n StartsWith = 'StartsWith',\n EndsWith = 'EndsWith',\n DoesNotStartWith = 'DoesNotStartWith',\n DoesNotEndWith = 'DoesNotEndWith',\n Contains = 'Contains',\n DoesNotContain = 'DoesNotContain',\n IsSet = 'IsSet',\n IsNotSet = 'IsNotSet',\n}\n\nexport class AlphaNumericSearch\n{\n public selectedFilterOption: AlphaNumericFilterConditions|null;\n public alphaNumericSearchValue: string|null;\n public removeSpaces: boolean|null;\n\n public constructor(init?: Partial<AlphaNumericSearch>) { (Object as any).assign(this, init); }\n}\n(AlphaNumericSearch as unknown)[immerable] = true;\n\nexport enum LookUpFilterConditions\n{\n Is = 'Is',\n IsNot = 'IsNot',\n IsOneOf = 'IsOneOf',\n IsNotOneOf = 'IsNotOneOf',\n}\n\nexport enum LookUpSearchType\n{\n Practitioners = 'Practitioners',\n PatientTags = 'PatientTags',\n Locations = 'Locations',\n Groups = 'Groups',\n PaymentMethod = 'PaymentMethod',\n PaymentStatus = 'PaymentStatus',\n InvoiceStatus = 'InvoiceStatus',\n InvoiceBatch = 'InvoiceBatch',\n StockCategory = 'StockCategory',\n StockTags = 'StockTags',\n LocationStatus = 'LocationStatus',\n BillingItemStatus = 'BillingItemStatus',\n InvoicePeriod = 'InvoicePeriod',\n CaseStatus = 'CaseStatus',\n BodySite = 'BodySite',\n Diagnosis = 'Diagnosis',\n Suppliers = 'Suppliers',\n ExpenditureCategory = 'ExpenditureCategory',\n GroupClassification = 'GroupClassification',\n PractitionerType = 'PractitionerType',\n AuditObjectTypes = 'AuditObjectTypes',\n AuditActions = 'AuditActions',\n AccountType = 'AccountType',\n DebtInvoiceStatus = 'DebtInvoiceStatus',\n DebtAge = 'DebtAge',\n CustomerStatus = 'CustomerStatus',\n Gender = 'Gender',\n Stock = 'Stock',\n AppointmentStatus = 'AppointmentStatus',\n AppointmentType = 'AppointmentType',\n RpUserType = 'RpUserType',\n Tags = 'Tags',\n Skills = 'Skills',\n GdsWorkSheetStatus = 'GdsWorkSheetStatus',\n TimelineType = 'TimelineType',\n Vehicle = 'Vehicle',\n}\n\nexport class LookUpSearch\n{\n public selectedFilterOption: LookUpFilterConditions|null;\n public lookUpSearchType: LookUpSearchType|null;\n public isJsonSearch: boolean|null;\n public lookUpDataType: string|null;\n public lookUpSearchValues: Object[]|null;\n\n public constructor(init?: Partial<LookUpSearch>) { (Object as any).assign(this, init); }\n}\n(LookUpSearch as unknown)[immerable] = true;\n\nexport enum DateTimeFilterConditions\n{\n IsOn = 'IsOn',\n IsNotOn = 'IsNotOn',\n IsBetween = 'IsBetween',\n IsNotBetween = 'IsNotBetween',\n IsBefore = 'IsBefore',\n IsOnOrBefore = 'IsOnOrBefore',\n IsAfter = 'IsAfter',\n IsOnOrAfter = 'IsOnOrAfter',\n}\n\nexport class DateRange\n{\n public from: string|null;\n public to: string|null;\n\n public constructor(init?: Partial<DateRange>) { (Object as any).assign(this, init); }\n}\n(DateRange as unknown)[immerable] = true;\n\nexport class DateTimeSearch\n{\n public selectedFilterOption: DateTimeFilterConditions|null;\n public dateRangeValue: DateRange|null;\n\n public constructor(init?: Partial<DateTimeSearch>) { (Object as any).assign(this, init); }\n}\n(DateTimeSearch as unknown)[immerable] = true;\n\nexport enum BooleanFilterConditions\n{\n IsSet = 'IsSet',\n IsNotSet = 'IsNotSet',\n}\n\nexport class BooleanSearch\n{\n public selectedFilterOption: BooleanFilterConditions|null;\n public booleanSearchValue: boolean|null;\n\n public constructor(init?: Partial<BooleanSearch>) { (Object as any).assign(this, init); }\n}\n(BooleanSearch as unknown)[immerable] = true;\n\nexport class SearchFilterConditionItem\n{\n public alphaNumericSearchFieldCondition: AlphaNumericSearch|null;\n public lookUpSearchFieldCondition: LookUpSearch|null;\n public dateTimeSearchFieldCondition: DateTimeSearch|null;\n public booleanSearchFieldCondition: BooleanSearch|null;\n public integerSearchFieldCondition: NumericSearch<number>|null;\n public decimalSearchFieldCondition: NumericSearch<number>|null;\n\n public constructor(init?: Partial<SearchFilterConditionItem>) { (Object as any).assign(this, init); }\n}\n(SearchFilterConditionItem as unknown)[immerable] = true;\n\nexport enum SearchFieldDataType\n{\n StringField = 'StringField',\n AlphaNumericField = 'AlphaNumericField',\n LookUpField = 'LookUpField',\n BooleanField = 'BooleanField',\n DateTimeField = 'DateTimeField',\n JsonField = 'JsonField',\n IntegerField = 'IntegerField',\n DecimalField = 'DecimalField',\n}\n\nexport enum Delimiters\n{\n None = 'None',\n Space = 'Space',\n Comma = 'Comma',\n}\n\nexport class SearchFilterCondition\n{\n public conditions: SearchFilterConditionItem[]|null;\n public fieldName: string|null;\n public displayName: string|null;\n public fieldType: SearchFieldDataType|null;\n public displayOnGrid: boolean|null;\n public isFilterApplied: boolean|null;\n public isCustom: boolean|null;\n public delimiters: Delimiters|null;\n public customIsSetText: string|null;\n public customIsNotSetText: string|null;\n public module: string|null;\n\n public constructor(init?: Partial<SearchFilterCondition>) { (Object as any).assign(this, init); }\n}\n(SearchFilterCondition as unknown)[immerable] = true;\n\nexport class QueryField\n{\n // @ApiMember(ExcludeInSchema=true)\n public customFieldNames: string[]|null;\n\n /** @description Field Name to sort by */\n // @ApiMember(Description=\"Field Name to sort by\")\n public field: string|null;\n\n /** @description Sort order - `asc` or `desc` */\n // @ApiMember(Description=\"Sort order - `asc` or `desc`\")\n public dir: string|null;\n\n public constructor(init?: Partial<QueryField>) { (Object as any).assign(this, init); }\n}\n(QueryField as unknown)[immerable] = true;\n\nexport class BaseAdvancedSearchRequest implements ILocationIds, IFilterServiceTypeManually\n{\n public filterConditions: SearchFilterCondition[]|null;\n public appliedFilters: SearchFilterCondition[]|null;\n public appliedCustomFilters: SearchFilterCondition[]|null;\n public skip: number|null;\n public take: number|null;\n public groups: QueryField[]|null;\n public sort: QueryField[]|null;\n public term: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<BaseAdvancedSearchRequest>) { (Object as any).assign(this, init); }\n}\n(BaseAdvancedSearchRequest as unknown)[immerable] = true;\n\nexport interface ILocationIds\n{\n locationIds: number[]|null;\n requestLocationIds: number[]|null;\n}\n\nexport interface IFilterServiceTypeManually\n{\n}\n\nexport interface ISecurityId\n{\n securityId: number|null;\n}\n\nexport enum ResetMode\n{\n None = 'None',\n PassKey = 'PassKey',\n MFA = 'MFA',\n Password = 'Password',\n}\n\nexport class UserRoleLocationDto\n{\n public id: number|null;\n public locationId: number|null;\n public userId: number|null;\n public roleId: number|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<UserRoleLocationDto>) { (Object as any).assign(this, init); }\n}\n(UserRoleLocationDto as unknown)[immerable] = true;\n\nexport interface IHasPath\n{\n path: string|null;\n safeRoot: string|null;\n}\n\nexport class CommandBarRequest implements ILocationIds\n{\n public term: string|null;\n public limit: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CommandBarRequest>) { (Object as any).assign(this, init); }\n}\n(CommandBarRequest as unknown)[immerable] = true;\n\nexport enum MergeFieldType\n{\n Workflow = 'Workflow',\n SubWorkflow = 'SubWorkflow',\n Network = 'Network',\n NetworkClinician = 'NetworkClinician',\n NetworkLocation = 'NetworkLocation',\n}\n\nexport enum MergeFieldDataType\n{\n Text = 'Text',\n Date = 'Date',\n DateTime = 'DateTime',\n}\n\nexport class MergeFieldMappingDto\n{\n public id: string|null;\n public type: MergeFieldType|null;\n public name: string|null;\n public field: string|null;\n public dataType: MergeFieldDataType|null;\n\n public constructor(init?: Partial<MergeFieldMappingDto>) { (Object as any).assign(this, init); }\n}\n(MergeFieldMappingDto as unknown)[immerable] = true;\n\nexport class BatchInvoiceMergeDataRequestObject\n{\n public id: number|null;\n public template: string|null;\n\n public constructor(init?: Partial<BatchInvoiceMergeDataRequestObject>) { (Object as any).assign(this, init); }\n}\n(BatchInvoiceMergeDataRequestObject as unknown)[immerable] = true;\n\nexport interface ISecurityIds\n{\n securityIds: number[]|null;\n}\n\nexport class BatchMergeDataRequestObject\n{\n public id: number|null;\n public template: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<BatchMergeDataRequestObject>) { (Object as any).assign(this, init); }\n}\n(BatchMergeDataRequestObject as unknown)[immerable] = true;\n\nexport interface ISecurityType\n{\n securityType: string|null;\n}\n\nexport interface IDepartmentIds\n{\n departmentIds: number[]|null;\n}\n\nexport interface IAllowedDepartmentIds\n{\n allowedDepartmentIds: number[]|null;\n}\n\nexport interface ICustomerId\n{\n customerId: number|null;\n}\n\nexport enum PackageBundleItemType\n{\n Consultancy = 'Consultancy',\n Stock = 'Stock',\n Course = 'Course',\n Class = 'Class',\n}\n\nexport interface IInvoiceId\n{\n invoiceId: number|null;\n}\n\nexport class CustomerCSVHeaderOverrides\n{\n public status: string|null;\n public reference: string|null;\n public name: string|null;\n public address: string|null;\n public postCode: string|null;\n public dateOfBirth: string|null;\n public number: string|null;\n public email: string|null;\n public registrationDate: string|null;\n public balanceInvoiced: string|null;\n public locationName: string|null;\n public groupName: string|null;\n public practitionerName: string|null;\n\n public constructor(init?: Partial<CustomerCSVHeaderOverrides>) { (Object as any).assign(this, init); }\n}\n(CustomerCSVHeaderOverrides as unknown)[immerable] = true;\n\nexport class MedicalContactsCSVHeaderOverrides\n{\n public status: string|null;\n public reference: string|null;\n public forename: string|null;\n public surname: string|null;\n public businessName: string|null;\n public address: string|null;\n public telephone: string|null;\n public email: string|null;\n public web: string|null;\n public locationName: string|null;\n\n public constructor(init?: Partial<MedicalContactsCSVHeaderOverrides>) { (Object as any).assign(this, init); }\n}\n(MedicalContactsCSVHeaderOverrides as unknown)[immerable] = true;\n\nexport interface IServiceTypeId\n{\n serviceTypeId: number|null;\n}\n\nexport class DiaryListBase extends BaseAdvancedSearchRequest\n{\n public date: string|null;\n public isWeek: boolean|null;\n public practitionerIds: number[]|null;\n public locationId: number|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<DiaryListBase>) { super(init); (Object as any).assign(this, init); }\n}\n(DiaryListBase as unknown)[immerable] = true;\n\nexport interface IHasAutoRefresh\n{\n autoRefresh: boolean|null;\n}\n\nexport enum ResourceMode\n{\n Room = 'Room',\n Practitioner = 'Practitioner',\n}\n\nexport enum RecurrenceType\n{\n None = 'None',\n Day = 'Day',\n Week = 'Week',\n Fortnight = 'Fortnight',\n Month = 'Month',\n Quarter = 'Quarter',\n Year = 'Year',\n Custom = 'Custom',\n WorkingDay = 'WorkingDay',\n}\n\nexport enum InvoicePeriod\n{\n All = 'All',\n Monthly = 'Monthly',\n AfterEachAppointment = 'AfterEachAppointment',\n AdHoc = 'AdHoc',\n Manual = 'Manual',\n Discharge = 'Discharge',\n}\n\nexport enum ChargeSearchMode\n{\n All = 'All',\n PrivateOnly = 'PrivateOnly',\n AllGroups = 'AllGroups',\n SelectedGroups = 'SelectedGroups',\n HealthcodeGroups = 'HealthcodeGroups',\n}\n\nexport enum InvoicedStatusToInclude\n{\n All = 'All',\n Uninvoiced = 'Uninvoiced',\n Invoiced = 'Invoiced',\n}\n\nexport class CurrencyRange\n{\n public min: number|null;\n public max: number|null;\n\n public constructor(init?: Partial<CurrencyRange>) { (Object as any).assign(this, init); }\n}\n(CurrencyRange as unknown)[immerable] = true;\n\nexport interface IChargeSearchRequest extends ILocationIds\n{\n sort: QueryField[]|null;\n invoicePeriod: InvoicePeriod|null;\n mode: ChargeSearchMode|null;\n invoicedStatus: InvoicedStatusToInclude|null;\n groupIds: number[]|null;\n date: DateRange|null;\n addressTo: string|null;\n description: string|null;\n amount: CurrencyRange|null;\n term: string|null;\n locked: boolean|null;\n displayDiscountCodes: boolean|null;\n}\n\nexport class ChargeGroup\n{\n public accountId: number|null;\n public type: string|null;\n public charges: number[]|null;\n\n public constructor(init?: Partial<ChargeGroup>) { (Object as any).assign(this, init); }\n}\n(ChargeGroup as unknown)[immerable] = true;\n\nexport class InvoiceBatch implements IHasId\n{\n public id: number|null;\n public date: string|null;\n\n public constructor(init?: Partial<InvoiceBatch>) { (Object as any).assign(this, init); }\n}\n(InvoiceBatch as unknown)[immerable] = true;\n\nexport class Charge\n{\n public locationId: number|null;\n public accountId: number|null;\n public customerId: number|null;\n public appointmentId: number|null;\n public practitionerId: number|null;\n public invoiceId: number|null;\n public stockId: number|null;\n public paid: number|null;\n public migrated: number|null;\n public transferred: number|null;\n public roomId: number|null;\n public accountsExportId: number|null;\n public createdByUserId: number|null;\n public description: string|null;\n public category: string|null;\n public ledgerCode: string|null;\n public discriminatorType: string|null;\n public totalExVat: number|null;\n public quantity: number|null;\n public price: number|null;\n public vatRate: number|null;\n public totalVat: number|null;\n public total: number|null;\n public date: string|null;\n public parentId: number|null;\n\n public constructor(init?: Partial<Charge>) { (Object as any).assign(this, init); }\n}\n(Charge as unknown)[immerable] = true;\n\nexport class Invoice implements ILocationId, IHasReference, IHasDocuments\n{\n public id: number|null;\n public status: string|null;\n public reference: string|null;\n public date: string|null;\n public dueDate: string|null;\n public fullyPaidDate: string|null;\n public grandTotal: number|null;\n public amountPaid: number|null;\n public customerId: number|null;\n public locationId: number|null;\n public accountId: number|null;\n public addressTo: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public reminder: string|null;\n public secondReminder: string|null;\n public totalExcludingVat: number|null;\n public vatAmount: number|null;\n public batchId: number|null;\n public notes: string|null;\n public globalId: string|null;\n public globalType: number|null;\n public paymentStatus: string|null;\n public medipassTransactionId: string|null;\n public medipassStatus: string|null;\n public purchaseOrderNumber: string|null;\n public medicalContactId: number|null;\n public referralDate: string|null;\n public documentsLoaded: boolean|null;\n public isSquarePrepayment: boolean|null;\n // @Ignore()\n public documentsSubDirectory: string|null;\n\n public constructor(init?: Partial<Invoice>) { (Object as any).assign(this, init); }\n}\n(Invoice as unknown)[immerable] = true;\n\nexport class Income implements ILocationId, IHasReference\n{\n public id: number|null;\n public amount: number|null;\n public paymentMethod: string|null;\n public otherPaymentMethod: string|null;\n public customerId: number|null;\n public status: string|null;\n public date: string|null;\n public reference: string|null;\n public lodgementRef: string|null;\n public accountId: number|null;\n public accountsExportId: number|null;\n public locationId: number|null;\n public receivedAtLocationId: number|null;\n public notes: string|null;\n public cardType: string|null;\n public cardNumber: string|null;\n public expiry: string|null;\n public chequeNumber: string|null;\n public migrated: boolean|null;\n public transferred: boolean|null;\n public paidBy: string|null;\n public refundReason: string|null;\n public paymentIntentId: string|null;\n public electronicPaymentDate: string|null;\n public importDate: string|null;\n public importBatchId: string|null;\n public merchantReference: string|null;\n public authorisationCode: string|null;\n public squarePaymentId: string|null;\n // @Ignore()\n public meta: { [index:string]: Object; }|null;\n\n public data: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<Income>) { (Object as any).assign(this, init); }\n}\n(Income as unknown)[immerable] = true;\n\nexport interface IHasId extends IHasIdMarker\n{\n id: number|null;\n}\n\nexport interface IHasIdMarker\n{\n}\n\nexport interface IHasReference extends IHasId\n{\n reference: string|null;\n}\n\nexport class ReconciliationResponse\n{\n public id: number|null;\n public status: string|null;\n public date: string|null;\n public paymentId: number|null;\n public reference: string|null;\n public name: string|null;\n public total: number|null;\n public paid: number|null;\n public reconciled: number|null;\n public customerName: string|null;\n\n public constructor(init?: Partial<ReconciliationResponse>) { (Object as any).assign(this, init); }\n}\n(ReconciliationResponse as unknown)[immerable] = true;\n\nexport enum QuickBillMode\n{\n Patient = 'Patient',\n Appointment = 'Appointment',\n MyClinics = 'MyClinics',\n}\n\nexport enum QuickPayType\n{\n Customer = 'Customer',\n Group = 'Group',\n Medipass = 'Medipass',\n}\n\nexport enum QuickPayMode\n{\n PayLater = 'PayLater',\n DoNotBill = 'DoNotBill',\n InvoiceAndDoMore = 'InvoiceAndDoMore',\n Cash = 'Cash',\n Cheque = 'Cheque',\n Card = 'Card',\n Chase = 'Chase',\n Token = 'Token',\n Medipass = 'Medipass',\n Terminal = 'Terminal',\n Prepayment = 'Prepayment',\n}\n\nexport enum PaymentProviderName\n{\n None = 'None',\n Stripe = 'Stripe',\n Worldpay = 'Worldpay',\n Square = 'Square',\n ClearAccept = 'ClearAccept',\n}\n\nexport enum TerminalPaymentProviderPaymentStatus\n{\n None = 'None',\n InProgress = 'InProgress',\n Complete = 'Complete',\n Error = 'Error',\n Cancelled = 'Cancelled',\n}\n\nexport enum PaymentProviderPaymentStatus\n{\n None = 'None',\n NotFound = 'NotFound',\n Pending = 'Pending',\n Success = 'Success',\n Error = 'Error',\n Cancelled = 'Cancelled',\n Refunded = 'Refunded',\n Voided = 'Voided',\n}\n\nexport class TerminalPaymentDto\n{\n public provider: PaymentProviderName|null;\n public data: { [index:string]: string; }|null;\n public merchantReference: string|null;\n public terminalStatus: TerminalPaymentProviderPaymentStatus|null;\n public status: PaymentProviderPaymentStatus|null;\n public message: string|null;\n public invoiceId: number|null;\n public terminalId: string|null;\n public cardType: string|null;\n public transactionId: string|null;\n public incomeId: number|null;\n\n public constructor(init?: Partial<TerminalPaymentDto>) { (Object as any).assign(this, init); }\n}\n(TerminalPaymentDto as unknown)[immerable] = true;\n\nexport class QuickPayment\n{\n public type: QuickPayType|null;\n public mode: QuickPayMode|null;\n public amount: number|null;\n public locationId: number|null;\n public receivedAtLocationId: number|null;\n public invoicePeriod: string|null;\n public accountId: number|null;\n public chequeNo: string|null;\n public token: string|null;\n public customerId: number|null;\n public isNewCard: boolean|null;\n public terminalPayment: TerminalPaymentDto|null;\n public meta: { [index:string]: Object; }|null;\n\n public constructor(init?: Partial<QuickPayment>) { (Object as any).assign(this, init); }\n}\n(QuickPayment as unknown)[immerable] = true;\n\nexport interface IHasNewPath\n{\n newName: string|null;\n safeRoot: string|null;\n}\n\nexport interface ICookies\n{\n collection: Cookie[]|null;\n}\n\nexport interface IHttpResponse\n{\n cookies: ICookies|null;\n}\n\nexport interface IHttpRequest\n{\n httpResponse: IHttpResponse|null;\n httpMethod: string|null;\n xForwardedFor: string|null;\n xForwardedPort: number|null;\n xForwardedProtocol: string|null;\n xRealIp: string|null;\n accept: string|null;\n}\n\n// @DataContract\nexport class ResponseError\n{\n // @DataMember(Order=1)\n public errorCode: string|null;\n\n // @DataMember(Order=2)\n public fieldName: string|null;\n\n // @DataMember(Order=3)\n public message: string|null;\n\n // @DataMember(Order=4)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<ResponseError>) { (Object as any).assign(this, init); }\n}\n(ResponseError as unknown)[immerable] = true;\n\n// @DataContract\nexport class ResponseStatus\n{\n // @DataMember(Order=1)\n public errorCode: string|null;\n\n // @DataMember(Order=2)\n public message: string|null;\n\n // @DataMember(Order=3)\n public stackTrace: string|null;\n\n // @DataMember(Order=4)\n public errors: ResponseError[]|null;\n\n // @DataMember(Order=5)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<ResponseStatus>) { (Object as any).assign(this, init); }\n}\n(ResponseStatus as unknown)[immerable] = true;\n\nexport class DownloadBatchRequestObject\n{\n public path: string|null;\n public fileName: string|null;\n\n public constructor(init?: Partial<DownloadBatchRequestObject>) { (Object as any).assign(this, init); }\n}\n(DownloadBatchRequestObject as unknown)[immerable] = true;\n\nexport interface IHasPaths\n{\n securityPaths: string[]|null;\n}\n\nexport enum DocumentType\n{\n Letter = 'Letter',\n SMS = 'SMS',\n Email = 'Email',\n}\n\nexport class GroupsCSVHeaderOverrides\n{\n public status: string|null;\n public reference: string|null;\n public name: string|null;\n public contact: string|null;\n public address: string|null;\n public telephone: string|null;\n public email: string|null;\n public web: string|null;\n public balanceInvoiced: string|null;\n public locations: string|null;\n\n public constructor(init?: Partial<GroupsCSVHeaderOverrides>) { (Object as any).assign(this, init); }\n}\n(GroupsCSVHeaderOverrides as unknown)[immerable] = true;\n\nexport class StockLocationItem\n{\n public locId: number|null;\n public stockId: number|null;\n\n public constructor(init?: Partial<StockLocationItem>) { (Object as any).assign(this, init); }\n}\n(StockLocationItem as unknown)[immerable] = true;\n\nexport class GroupProfileDto implements IHasId\n{\n public id: number|null;\n public profileField1: boolean|null;\n public profileField2: boolean|null;\n public profileField3: boolean|null;\n public profileField4: boolean|null;\n public profileField5: boolean|null;\n public profileField6: boolean|null;\n public profileField7: boolean|null;\n public profileField8: boolean|null;\n\n public constructor(init?: Partial<GroupProfileDto>) { (Object as any).assign(this, init); }\n}\n(GroupProfileDto as unknown)[immerable] = true;\n\nexport class NotificationSubscription implements IHasId\n{\n public id: number|null;\n public type: string|null;\n public typeId: number|null;\n public handlerId: string|null;\n\n public constructor(init?: Partial<NotificationSubscription>) { (Object as any).assign(this, init); }\n}\n(NotificationSubscription as unknown)[immerable] = true;\n\nexport class GroupStockResponse\n{\n public id: number|null;\n public stockId: number|null;\n public reference: string|null;\n public totalPrice: number|null;\n public description: string|null;\n public appointmentLength: number|null;\n public groupLocationLocationId: number|null;\n public serviceTypeId: number|null;\n public stockIsCancel: boolean|null;\n public stockIsFirst: boolean|null;\n public stockIsFollowUp: boolean|null;\n public stockIsDNA: boolean|null;\n public category: string|null;\n public onlineGuid: string|null;\n public isMultiLocation: boolean|null;\n\n public constructor(init?: Partial<GroupStockResponse>) { (Object as any).assign(this, init); }\n}\n(GroupStockResponse as unknown)[immerable] = true;\n\nexport class LocResponse\n{\n public id: number|null;\n public groupLocationId: number|null;\n public groupId: number|null;\n public locationId: number|null;\n public firstAppointmentStockId: number|null;\n public nextAppointmentStockId: number|null;\n public providerNo: string|null;\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public address: string|null;\n public postCode: string|null;\n public fax: string|null;\n public web: string|null;\n public telephone: string|null;\n public email: string|null;\n public stock: GroupStockResponse[]|null;\n public specificStock: GroupStockResponse[]|null;\n\n public constructor(init?: Partial<LocResponse>) { (Object as any).assign(this, init); }\n}\n(LocResponse as unknown)[immerable] = true;\n\nexport class AddBusinessModel\n{\n public id: number|null;\n public name: string|null;\n public isActive: boolean|null;\n\n public constructor(init?: Partial<AddBusinessModel>) { (Object as any).assign(this, init); }\n}\n(AddBusinessModel as unknown)[immerable] = true;\n\nexport class PractitionerLocationPair\n{\n public locationId: number|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<PractitionerLocationPair>) { (Object as any).assign(this, init); }\n}\n(PractitionerLocationPair as unknown)[immerable] = true;\n\nexport enum PractitionerStatus\n{\n Inactive = 'Inactive',\n Active = 'Active',\n PayAsYouGo = 'PayAsYouGo',\n}\n\nexport class PractitionerStatusUpdate\n{\n public id: number|null;\n public status: PractitionerStatus|null;\n\n public constructor(init?: Partial<PractitionerStatusUpdate>) { (Object as any).assign(this, init); }\n}\n(PractitionerStatusUpdate as unknown)[immerable] = true;\n\nexport class PractitionerSkillBaseRequest\n{\n public practitionerGuid: string|null;\n public specialismId: string|null;\n\n public constructor(init?: Partial<PractitionerSkillBaseRequest>) { (Object as any).assign(this, init); }\n}\n(PractitionerSkillBaseRequest as unknown)[immerable] = true;\n\nexport class BulkUpdateField\n{\n public name: string|null;\n public propertyName: string|null;\n public type: string|null;\n public searchType: LookUpSearchType|null;\n public isCustom: boolean|null;\n public includeNone: boolean|null;\n\n public constructor(init?: Partial<BulkUpdateField>) { (Object as any).assign(this, init); }\n}\n(BulkUpdateField as unknown)[immerable] = true;\n\nexport enum BulkActionRecordType\n{\n Patient = 'Patient',\n Diary = 'Diary',\n Stock = 'Stock',\n Practitioner = 'Practitioner',\n Record = 'Record',\n}\n\nexport class BulkActionBaseRequest<T> implements ILocationIds, IBulkAction\n{\n public recordType: BulkActionRecordType|null;\n public selectedIds: number[]|null;\n public selectAll: boolean|null;\n public searchRequest: T|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<BulkActionBaseRequest<T>>) { (Object as any).assign(this, init); }\n}\n\nexport class AlertResponse implements IHasId\n{\n public title: string|null;\n public notes: string|null;\n public objectId: number|null;\n public userId: number|null;\n public future: boolean|null;\n public startDateTime: string|null;\n public flagType: number|null;\n public id: number|null;\n public discriminatorType: string|null;\n public complete: boolean|null;\n public requiresAcknowledgement: boolean|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<AlertResponse>) { (Object as any).assign(this, init); }\n}\n(AlertResponse as unknown)[immerable] = true;\n\nexport class GeneralPractitionerResponse\n{\n public id: number|null;\n public fullName: string|null;\n public name: string|null;\n public defaultRoomId: number|null;\n public code: string|null;\n public fullAddress: string|null;\n public locationName: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public mobile: string|null;\n public homeTelephone: string|null;\n public email: string|null;\n public fax: string|null;\n public web: string|null;\n public online: boolean|null;\n public status: number|null;\n public type: string|null;\n public contractNumber: string|null;\n public onlineGuid: string|null;\n public physitrackToken: string|null;\n public defaultLocationId: number|null;\n public serviceTypeId: number|null;\n public regNumber: string|null;\n public commissionFlatRate: number|null;\n public commissionPercent: number|null;\n public employmentStatus: string|null;\n public timeSlot: number|null;\n public providerNo: string|null;\n public taxNo: string|null;\n public alerts: AlertResponse[]|null;\n public locationIds: number[]|null;\n public skills: string[]|null;\n public zoomUserId: string|null;\n public orderId: number|null;\n\n public constructor(init?: Partial<GeneralPractitionerResponse>) { (Object as any).assign(this, init); }\n}\n\n// @Route(\"/practitioners/all\")\nexport class AllPractitionersRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<GeneralPractitionerResponse>>\n{\n public fullname: string|null;\n public code: string|null;\n public status: number|null;\n public address: string|null;\n\n public constructor(init?: Partial<AllPractitionersRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AllPractitionersRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralPractitionerResponse>(); }\n}\n(AllPractitionersRequest as unknown)[immerable] = true;\n\nexport class PractitionerBulkActionBaseRequest extends BulkActionBaseRequest<AllPractitionersRequest>\n{\n\n public constructor(init?: Partial<PractitionerBulkActionBaseRequest>) { super(init); (Object as any).assign(this, init); }\n}\n(PractitionerBulkActionBaseRequest as unknown)[immerable] = true;\n\nexport interface IBulkAction\n{\n selectedIds: number[]|null;\n selectAll: boolean|null;\n}\n\nexport class RestrictedCustomerAlertDetails\n{\n public title: string|null;\n public notes: string|null;\n public objectId: number|null;\n public userId: number|null;\n public future: boolean|null;\n public startDateTime: string|null;\n public flagType: number|null;\n public id: number|null;\n public discriminatorType: string|null;\n public complete: boolean|null;\n public requiresAcknowledgement: boolean|null;\n\n public constructor(init?: Partial<RestrictedCustomerAlertDetails>) { (Object as any).assign(this, init); }\n}\n(RestrictedCustomerAlertDetails as unknown)[immerable] = true;\n\nexport class RestrictedCustomerDetails\n{\n public id: number|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public status: number|null;\n public locationId: number|null;\n public smsEnabled: boolean|null;\n public reference: string|null;\n public email: string|null;\n public mobileTelephone: string|null;\n public dateOfBirth: string|null;\n public alerts: RestrictedCustomerAlertDetails[]|null;\n\n public constructor(init?: Partial<RestrictedCustomerDetails>) { (Object as any).assign(this, init); }\n}\n(RestrictedCustomerDetails as unknown)[immerable] = true;\n\nexport class AppointmentResponse\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public name: string|null;\n public status: number|null;\n public type: string|null;\n public reference: string|null;\n public bookingMethod: string|null;\n public bookedByName: string|null;\n public bookingDateTime: string|null;\n public duration: number|null;\n public firstAppointment: boolean|null;\n public comment: string|null;\n public title: string|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public roomId: number|null;\n public stockId: number|null;\n public practitioner: string|null;\n public practitionerStatus: number|null;\n public location: string|null;\n public roomName: string|null;\n public stock: string|null;\n public inDebt: boolean|null;\n public colour: number|null;\n public stockColour: number|null;\n public description: string|null;\n public hexColour: string|null;\n public classMax: number|null;\n public classAttendees: number|null;\n public customerAlert: boolean|null;\n public customerLastAppointment: string|null;\n public reminderSentType: string|null;\n public reminderType: string|null;\n public payAtEachAppt: boolean|null;\n public authId: number|null;\n public groupId: number|null;\n public groupName: string|null;\n public groupAddressTo: string|null;\n public authCode: string|null;\n public caseId: number|null;\n public auditId: string|null;\n public prontoAuditId: string|null;\n public prontoAppointmentId: string|null;\n public prontoServiceId: string|null;\n public patient: RestrictedCustomerDetails|null;\n public meta: { [index:string]: Object; }|null;\n public serviceTypeId: number|null;\n public serviceType: string|null;\n public isVideo: boolean|null;\n public videoCode: string|null;\n public discountCodeId: string|null;\n public discountCodeAppliedDate: string|null;\n public discountCodeAdvance: boolean|null;\n public cancellationReason: string|null;\n public videoLink: string|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingPassword: string|null;\n\n public constructor(init?: Partial<AppointmentResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentResponse as unknown)[immerable] = true;\n\nexport enum NetworkServiceType\n{\n Appointment = 'Appointment',\n Cancellation = 'Cancellation',\n DNA = 'DNA',\n}\n\nexport class ServiceCharge\n{\n public exVat: number|null;\n public vatRate: number|null;\n public canBillCXX: boolean|null;\n public canBillDNA: boolean|null;\n public cancellationChargeServiceId: string|null;\n public dnaChargeServiceId: string|null;\n public id: string|null;\n public name: string|null;\n public stockOnlineGuid: string|null;\n public overrides: { [index:string]: string; }|null;\n public serviceType: NetworkServiceType|null;\n public serviceNextAppointmentType: string|null;\n\n public constructor(init?: Partial<ServiceCharge>) { (Object as any).assign(this, init); }\n}\n(ServiceCharge as unknown)[immerable] = true;\n\nexport class ReferralAppointment\n{\n public id: string|null;\n public date: string|null;\n public status: number|null;\n public invoiced: boolean|null;\n public serviceId: string|null;\n public locationId: string|null;\n public practitionerId: string|null;\n public appointmentId: string|null;\n public tm3AppointmentId: number|null;\n public authCode: string|null;\n public imported: boolean|null;\n public isLocked: boolean|null;\n public success: boolean|null;\n public errors: string[]|null;\n public warnings: string[]|null;\n\n public constructor(init?: Partial<ReferralAppointment>) { (Object as any).assign(this, init); }\n}\n(ReferralAppointment as unknown)[immerable] = true;\n\nexport class ReferralAppointmentResponse extends ReferralAppointment\n{\n public exVat: number|null;\n public vatRate: number|null;\n public description: string|null;\n\n public constructor(init?: Partial<ReferralAppointmentResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(ReferralAppointmentResponse as unknown)[immerable] = true;\n\nexport class ReferralAuthorisation\n{\n public id: string|null;\n public amount: number|null;\n public reportId: string|null;\n public timeStamp: string|null;\n public isNewAdditionalAuth: boolean|null;\n public isRevoked: boolean|null;\n public initialAmount: number|null;\n public revokedAmount: number|null;\n public revokedTimeStamp: string|null;\n\n public constructor(init?: Partial<ReferralAuthorisation>) { (Object as any).assign(this, init); }\n}\n(ReferralAuthorisation as unknown)[immerable] = true;\n\nexport class PractitionerDto\n{\n public id: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public mobile: string|null;\n public email: string|null;\n public fax: string|null;\n public web: string|null;\n public online: boolean|null;\n public status: boolean|null;\n public type: string|null;\n public contractNumber: string|null;\n public onlineGuid: string|null;\n public defaultLocation: string|null;\n public disciplines: string[]|null;\n public name: string|null;\n public shortName: string|null;\n\n public constructor(init?: Partial<PractitionerDto>) { (Object as any).assign(this, init); }\n}\n(PractitionerDto as unknown)[immerable] = true;\n\nexport class BookingAuditResponse\n{\n public id: string|null;\n public userId: number|null;\n public appointmentId: string|null;\n public appointmentStartDateTime: string|null;\n public appointmentBookingDateTime: string|null;\n public appointmentCustomerId: string|null;\n public customerReference: string|null;\n public bookingType: string|null;\n public serviceId: string|null;\n public clinicReference: string|null;\n public referrerReference: string|null;\n public targetId: string|null;\n public bookerId: string|null;\n public systemType: string|null;\n public referralStatus: number|null;\n public triageReport: string|null;\n public initialReport: string|null;\n public rfatReport: string|null;\n public dischargeReport: string|null;\n public triageReportName: string|null;\n public initialReportName: string|null;\n public rfatReportName: string|null;\n public dischargeReportName: string|null;\n public needsAction: boolean|null;\n public serviceCharges: { [index:string]: ServiceCharge; }|null;\n public appointments: ReferralAppointmentResponse[]|null;\n public authorisations: ReferralAuthorisation[]|null;\n public practitioners: PractitionerDto[]|null;\n public workflowId: number|null;\n public reminderSentType: number|null;\n public initialReportSubmissionDueDate: string|null;\n public firstReminderSentDate: string|null;\n public finalReminderSentDate: string|null;\n public expiredReminderSentDate: string|null;\n\n public constructor(init?: Partial<BookingAuditResponse>) { (Object as any).assign(this, init); }\n}\n(BookingAuditResponse as unknown)[immerable] = true;\n\nexport class Dictionary<T> { [Key: string]: T; }\n\nexport class JsonField extends Dictionary<Object>\n{\n\n public constructor(init?: Partial<JsonField>) { super(); (Object as any).assign(this, init); }\n}\n(JsonField as unknown)[immerable] = true;\n\nexport enum ReportTemplateType\n{\n D = 68,\n M = 77,\n}\n\nexport class ReferralReport\n{\n public id: string|null;\n public rootId: string|null;\n public templateId: string|null;\n public bookerId: string|null;\n public targetId: string|null;\n public data: JsonField|null;\n public timeStamp: string|null;\n public auditId: string|null;\n public status: number|null;\n public message: string|null;\n public title: string|null;\n public reportTemplateType: ReportTemplateType|null;\n\n public constructor(init?: Partial<ReferralReport>) { (Object as any).assign(this, init); }\n}\n(ReferralReport as unknown)[immerable] = true;\n\nexport enum VideoMeetingProvider\n{\n Twilio = 0,\n Zoom = 1,\n Other = 99,\n}\n\nexport class Appointment implements ILocationId, IHasReference\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public name: string|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public status: number|null;\n public type: string|null;\n public reference: string|null;\n public roomId: number|null;\n public stockId: number|null;\n public groupId: number|null;\n public bookedBy: number|null;\n public authId: number|null;\n public serviceTypeId: number|null;\n public firstAppointment: boolean|null;\n public bookingDateTime: string|null;\n public arrivalDateTime: string|null;\n public comment: string|null;\n public colour: number|null;\n public billingItemID: number|null;\n public location: string|null;\n public equipment: string|null;\n public reminderType: string|null;\n public reminderDate: string|null;\n // @Ignore()\n public title: string|null;\n\n public auditId: string|null;\n public prontoAppointmentId: string|null;\n public prontoServiceId: string|null;\n public discountCodeId: string|null;\n public discountCodeAppliedDate: string|null;\n public discountCodeAdvance: boolean|null;\n public prePaidId: number|null;\n public prePaymentIncomeId: number|null;\n public connectServiceId: string|null;\n public owesCredit: boolean|null;\n public isVideo: boolean|null;\n public videoCode: string|null;\n public videoMeetingHostJoinUrl: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n public videoMeetingPassword: string|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingId: string|null;\n public batchNo: number|null;\n // @Ignore()\n public videoLink: string|null;\n\n public cancelUsesAuth: boolean|null;\n public dnaUsesAuth: boolean|null;\n public prepaymentStatus: string|null;\n public cancelMethod: string|null;\n public recallStatus: string|null;\n\n public constructor(init?: Partial<Appointment>) { (Object as any).assign(this, init); }\n}\n(Appointment as unknown)[immerable] = true;\n\nexport class ProntoBillingItem\n{\n public apptGuid: string|null;\n public id: number|null;\n public date: string|null;\n public service: { [index:string]: string; }|null;\n public location: { [index:string]: string; }|null;\n public practitioner: { [index:string]: string; }|null;\n public vatRate: number|null;\n public amount: number|null;\n public amountExVat: number|null;\n public metadata: string|null;\n public appointment: Appointment|null;\n public isPreviouslyBilledFromTM3: boolean|null;\n public isBillingPartOfFailedInvoice: boolean|null;\n\n public constructor(init?: Partial<ProntoBillingItem>) { (Object as any).assign(this, init); }\n}\n(ProntoBillingItem as unknown)[immerable] = true;\n\nexport class ProntoInvoice\n{\n public id: string|null;\n public auditId: string|null;\n public bookerId: string|null;\n public targetId: string|null;\n public templateId: string|null;\n public timeStamp: string|null;\n public status: number|null;\n public message: string|null;\n public authCode: string|null;\n public admissionDate: string|null;\n public ref: string|null;\n public date: string|null;\n public locationId: string|null;\n public primaryPracitionerId: string|null;\n public patientMemberId: string|null;\n public patientPostcode: string|null;\n public patientForename: string|null;\n public patientSurname: string|null;\n public patientDateOfBirth: string|null;\n public totalAmount: number|null;\n public items: ProntoBillingItem[]|null;\n public metadata: string|null;\n public mappings: string|null;\n\n public constructor(init?: Partial<ProntoInvoice>) { (Object as any).assign(this, init); }\n}\n(ProntoInvoice as unknown)[immerable] = true;\n\nexport class LocationInfo\n{\n public id: string|null;\n public exclude: boolean|null;\n public cancellationPolicy: string|null;\n public generalInfo: string|null;\n\n public constructor(init?: Partial<LocationInfo>) { (Object as any).assign(this, init); }\n}\n(LocationInfo as unknown)[immerable] = true;\n\nexport class OnlineSettings implements IHasId\n{\n public id: number|null;\n public siteTitle: string|null;\n public showSiteTitle: boolean|null;\n public title: string|null;\n public logoUrl: string|null;\n public appIconUrl: string|null;\n public skin: string|null;\n public customColourPrimary: string|null;\n public customColourSecondary: string|null;\n public customColourNav: string|null;\n public customColourNavText: string|null;\n public message: string|null;\n public confirmSubject: string|null;\n public clinicFromEmail: string|null;\n public clinicNumber: string|null;\n public minBookingDays: number|null;\n public maxBookingDays: number|null;\n public isSiteLive: boolean|null;\n public registerProvisional: boolean|null;\n public maxBookings: number|null;\n public allowClassBooking: boolean|null;\n public allowRegister: boolean|null;\n public allowPayAtClinic: boolean|null;\n public locationInfo: LocationInfo[]|null;\n public googleTrackingId: string|null;\n public googleTagManagerContainerId: string|null;\n public useAllDeliveryMethodsForAccessCode: boolean|null;\n // @Ignore()\n public businessId: number|null;\n\n // @Ignore()\n public isCustom: boolean|null;\n\n public classes: boolean|null;\n public payments: boolean|null;\n public clinical: boolean|null;\n public generalInfo: string|null;\n public cancellationPolicy: string|null;\n public privacyPolicy: string|null;\n public termsAndConditions: string|null;\n public shareCancellationPolicy: boolean|null;\n public shareGeneralInfo: boolean|null;\n public url: string|null;\n public notifyOfAppointments: boolean|null;\n\n public constructor(init?: Partial<OnlineSettings>) { (Object as any).assign(this, init); }\n}\n(OnlineSettings as unknown)[immerable] = true;\n\nexport class ClinicSettings\n{\n public url: string|null;\n public shareCancellationPolicy: boolean|null;\n public shareGeneralInfo: boolean|null;\n public referrerName: string|null;\n public receptionName: string|null;\n public clinicEmail: string|null;\n public allowClinicProntoEmails: boolean|null;\n public clinicNumber: string|null;\n public onlineSettings: OnlineSettings|null;\n public onlineBookingMinimumDays: number|null;\n public onlineBookingMaximumDays: number|null;\n public classOrder: number[]|null;\n public serviceOrder: string[]|null;\n public cancellationPolicy: string|null;\n public generalInfo: string|null;\n public noAppointmentsFoundText: string|null;\n public locationInfo: LocationInfo[]|null;\n public excludeLocations: { [index:string]: string[]; }|null;\n public excludePractitioners: { [index:string]: string[]; }|null;\n public excludeSessionIds: { [index:string]: number[]; }|null;\n public excludeNormalSessionIds: { [index:string]: number[]; }|null;\n public defaultServices: { [index:string]: string; }|null;\n public clientId: string|null;\n public ppsId: string|null;\n public ppsUserName: string|null;\n public ppsKey: string|null;\n public ppsUrl: string|null;\n public remoteProxyUrl: string|null;\n public remoteSecret: string|null;\n public clinicCurrency: string|null;\n\n public constructor(init?: Partial<ClinicSettings>) { (Object as any).assign(this, init); }\n}\n(ClinicSettings as unknown)[immerable] = true;\n\nexport class GroupLinker\n{\n public globalId: string|null;\n public onlineGuid: string|null;\n\n public constructor(init?: Partial<GroupLinker>) { (Object as any).assign(this, init); }\n}\n(GroupLinker as unknown)[immerable] = true;\n\nexport class StockOverrideDto\n{\n public stockId: number|null;\n public locationId: string|null;\n public locId: number|null;\n public price: number|null;\n public priceExVat: number|null;\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<StockOverrideDto>) { (Object as any).assign(this, init); }\n}\n(StockOverrideDto as unknown)[immerable] = true;\n\nexport class ProntoStockDto\n{\n public id: string|null;\n public reference: string|null;\n public description: string|null;\n public locationGuid: string|null;\n public priceExVat: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public totalPrice: number|null;\n public price: number|null;\n public colourCss: string|null;\n public colour: number|null;\n public onlineGuid: string|null;\n public appointmentLength: number|null;\n public consultancyTime: number|null;\n public overrides: StockOverrideDto[]|null;\n public ledgerCode: string|null;\n // @Ignore()\n public objId: string|null;\n\n public category: string|null;\n\n public constructor(init?: Partial<ProntoStockDto>) { (Object as any).assign(this, init); }\n}\n(ProntoStockDto as unknown)[immerable] = true;\n\nexport class AvailabilitySummary\n{\n public next: string|null;\n public nextLocations: string[]|null;\n public otherLocations: string[]|null;\n public price: number|null;\n\n public constructor(init?: Partial<AvailabilitySummary>) { (Object as any).assign(this, init); }\n}\n(AvailabilitySummary as unknown)[immerable] = true;\n\nexport class ClinicService\n{\n public networkServiceId: string|null;\n public networkId: string|null;\n public name: string|null;\n public description: string|null;\n public discipline: string|null;\n public colour: string|null;\n public isOnline: boolean|null;\n public sortIndex: number|null;\n public availability: AvailabilitySummary|null;\n public meta: { [index:string]: string; }|null;\n public excludeGroups: string[]|null;\n public excludeLocations: string[]|null;\n public excludePractitioners: string[]|null;\n public overrides: { [index:string]: string; }|null;\n public stockId: string|null;\n public excludeSessionIds: number[]|null;\n public excludeNormalSessionIds: number[]|null;\n\n public constructor(init?: Partial<ClinicService>) { (Object as any).assign(this, init); }\n}\n(ClinicService as unknown)[immerable] = true;\n\nexport class StockResponse\n{\n public id: number|null;\n public reference: string|null;\n public totalPrice: number|null;\n public description: string|null;\n public appointmentLength: number|null;\n public groupLocationLocationId: number|null;\n public locationId: number|null;\n public colour: number|null;\n public online: boolean|null;\n public onlineGuid: string|null;\n public inUse: boolean|null;\n public priceExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public costAmount: number|null;\n public costVATRate: number|null;\n public costExVAT: number|null;\n public costVATAmount: number|null;\n public longDescription: string|null;\n public category: string|null;\n public ledgerCode: string|null;\n public level: number|null;\n public minimumLevel: number|null;\n public displayInPriceList: boolean|null;\n public totalWorth: number|null;\n public supplierId: number|null;\n public serviceTypeId: number|null;\n public isPrivateCharge: boolean|null;\n public stockIsCancel: boolean|null;\n public stockIsFirst: boolean|null;\n public stockIsFollowUp: boolean|null;\n public stockIsDNA: boolean|null;\n public isMultiple: boolean|null;\n public groupName: string|null;\n public isVideo: boolean|null;\n public managementFee: boolean|null;\n public cancellationCharge: number|null;\n public didNotAttendCharge: number|null;\n public cancellationStockId: number|null;\n public didNotAttendStockId: number|null;\n public notes: string|null;\n public colourCss: string|null;\n public ccsd: string|null;\n public iscCodeID: number|null;\n public classification: string|null;\n public tags: string[]|null;\n public specialismId: string|null;\n public credits: number|null;\n\n public constructor(init?: Partial<StockResponse>) { (Object as any).assign(this, init); }\n}\n(StockResponse as unknown)[immerable] = true;\n\nexport class LocationFacilities\n{\n public allFacilities: string[]|null;\n public selectedFacilities: string[]|null;\n\n public constructor(init?: Partial<LocationFacilities>) { (Object as any).assign(this, init); }\n}\n(LocationFacilities as unknown)[immerable] = true;\n\nexport class LocationResponse\n{\n public id: number|null;\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public fullAddressMultiLine: string|null;\n public telephone: string|null;\n public fax: string|null;\n public email: string|null;\n public web: string|null;\n public dnaStockId: number|null;\n public cancelStockId: number|null;\n public status: string|null;\n public directions: string|null;\n public reminderTemplateEmail_TM3: string|null;\n public reminderTemplateSMS_TM3: string|null;\n public onlineGuid: string|null;\n public facilities: LocationFacilities|null;\n public isMainLocation: boolean|null;\n public merchantReference: string|null;\n public locationLong: number|null;\n public locationLat: number|null;\n public trackingCategory: string|null;\n\n public constructor(init?: Partial<LocationResponse>) { (Object as any).assign(this, init); }\n}\n(LocationResponse as unknown)[immerable] = true;\n\nexport class StockOverrideResponse\n{\n public id: number|null;\n public locationId: number|null;\n public locationGuid: string|null;\n public stockId: number|null;\n public stockGuid: string|null;\n public priceExVAT: number|null;\n public totalPrice: number|null;\n public stockLevel: number|null;\n public stockMinimum: number|null;\n\n public constructor(init?: Partial<StockOverrideResponse>) { (Object as any).assign(this, init); }\n}\n(StockOverrideResponse as unknown)[immerable] = true;\n\nexport class PackageBundleItemWithQuantity\n{\n public quantity: number|null;\n public typeId: number|null;\n public packageId: string|null;\n\n public constructor(init?: Partial<PackageBundleItemWithQuantity>) { (Object as any).assign(this, init); }\n}\n(PackageBundleItemWithQuantity as unknown)[immerable] = true;\n\nexport enum AccountingSystemProviderName\n{\n None = 'None',\n Xero = 'Xero',\n Quickbooks = 'Quickbooks',\n Sage = 'Sage',\n}\n\nexport class AccountingStockLedgerLookup implements IHasId\n{\n public id: number|null;\n public stockId: number|null;\n public systemId: string|null;\n public systemName: AccountingSystemProviderName|null;\n public accountingSystemLedgerId: string|null;\n public accountingSystemLedgerCode: string|null;\n\n public constructor(init?: Partial<AccountingStockLedgerLookup>) { (Object as any).assign(this, init); }\n}\n(AccountingStockLedgerLookup as unknown)[immerable] = true;\n\nexport class StockWithLocationResponse extends StockResponse\n{\n public locationName: string|null;\n public groups: number[]|null;\n public locations: LocationResponse[]|null;\n public overrides: StockOverrideResponse[]|null;\n public packageItems: PackageBundleItemWithQuantity[]|null;\n public ledgerCodeOverrides: AccountingStockLedgerLookup[]|null;\n public legderCodeAccountId: string|null;\n public accountingSystemLedgerCode: string|null;\n\n public constructor(init?: Partial<StockWithLocationResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(StockWithLocationResponse as unknown)[immerable] = true;\n\n// @Route(\"/all/stock\")\nexport class AllStockRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<StockWithLocationResponse>>\n{\n public description: string|null;\n public reference: string|null;\n public category: string|null;\n public type: string|null;\n public private: boolean|null;\n public status: boolean|null;\n public amount: CurrencyRange|null;\n public includeTags: string[]|null;\n public excludeTags: string[]|null;\n\n public constructor(init?: Partial<AllStockRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AllStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockWithLocationResponse>(); }\n}\n(AllStockRequest as unknown)[immerable] = true;\n\nexport class StockBulkActionBaseRequest extends BulkActionBaseRequest<AllStockRequest>\n{\n\n public constructor(init?: Partial<StockBulkActionBaseRequest>) { super(init); (Object as any).assign(this, init); }\n}\n(StockBulkActionBaseRequest as unknown)[immerable] = true;\n\nexport class SingleCacheRequest\n{\n public version: string|null;\n\n public constructor(init?: Partial<SingleCacheRequest>) { (Object as any).assign(this, init); }\n}\n\nexport class LabelItem\n{\n public id: string|null;\n public text: string|null;\n\n public constructor(init?: Partial<LabelItem>) { (Object as any).assign(this, init); }\n}\n(LabelItem as unknown)[immerable] = true;\n\nexport interface IClientSpecificCacheService\n{\n}\n\nexport interface IClientDbAccess\n{\n cache: IClientSpecificCacheService|null;\n}\n\nexport class SecurityDto implements ISecurityId, ISecurityType, ISecurityGuid\n{\n public securityId: number|null;\n public securityType: string|null;\n public securityGuid: string|null;\n\n public constructor(init?: Partial<SecurityDto>) { (Object as any).assign(this, init); }\n}\n(SecurityDto as unknown)[immerable] = true;\n\nexport interface ISecurityLocator\n{\n securityLocator: Func<Object, IClientDbAccess, SecurityDto>|null;\n}\n\nexport enum TimelineContextObjectType\n{\n Default = 'Default',\n Vehicle = 'Vehicle',\n}\n\nexport enum TimelineLinkedObjectType\n{\n Default = 'Default',\n Payment = 'Payment',\n Invoice = 'Invoice',\n Charge = 'Charge',\n Appointment = 'Appointment',\n Class = 'Class',\n Document = 'Document',\n Form = 'Form',\n Download = 'Download',\n Worksheet = 'Worksheet',\n Vehicle = 'Vehicle',\n}\n\nexport interface ISecurityGuid\n{\n securityGuid: string|null;\n}\n\nexport class DynamicLabelRequest\n{\n\n public constructor(init?: Partial<DynamicLabelRequest>) { (Object as any).assign(this, init); }\n}\n(DynamicLabelRequest as unknown)[immerable] = true;\n\nexport class TaskForUser implements IHasId\n{\n public id: number|null;\n public createdDate: string|null;\n public dueDate: string|null;\n public description: string|null;\n public status: string|null;\n public userId: number|null;\n public reminder: boolean|null;\n public priority: boolean|null;\n public createdUserId: number|null;\n public dateCompleted: string|null;\n public patientId: number|null;\n public private: boolean|null;\n // @Ignore()\n public recur: boolean|null;\n\n // @Ignore()\n public recurFreq: string|null;\n\n // @Ignore()\n public recurDate: string|null;\n\n public tags: string[]|null;\n\n public constructor(init?: Partial<TaskForUser>) { (Object as any).assign(this, init); }\n}\n(TaskForUser as unknown)[immerable] = true;\n\nexport class ScoresGoalsSettingsRequest\n{\n public id: number|null;\n public type: string|null;\n public name: string|null;\n public max: number|null;\n public min: number|null;\n public enabled: boolean|null;\n public inUse: boolean|null;\n\n public constructor(init?: Partial<ScoresGoalsSettingsRequest>) { (Object as any).assign(this, init); }\n}\n(ScoresGoalsSettingsRequest as unknown)[immerable] = true;\n\nexport enum ReportPatientType\n{\n AllPatients = 1,\n GroupPatientsOnly = 2,\n SelfFunding = 3,\n}\n\nexport enum ReportLocationType\n{\n AllLocations = 'AllLocations',\n ActiveAndViewOnly = 'ActiveAndViewOnly',\n InactiveHidden = 'InactiveHidden',\n}\n\nexport enum ReportPractitionerType\n{\n Inactive = 'Inactive',\n ActiveAndPAYG = 'ActiveAndPAYG',\n AllPractitioners = 'AllPractitioners',\n}\n\nexport class BaseParamsForAllReports implements ILocationIds, ILocationId\n{\n public displayAll: boolean|null;\n public skip: number|null;\n public take: number|null;\n public requestLocationIds: number[]|null;\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public groupIds: number[]|null;\n public userId: number|null;\n public term: string|null;\n public name: string|null;\n public date: DateRange|null;\n public locationId: number|null;\n public patientType: ReportPatientType|null;\n public locationType: ReportLocationType|null;\n public practitionerType: ReportPractitionerType|null;\n\n public constructor(init?: Partial<BaseParamsForAllReports>) { (Object as any).assign(this, init); }\n}\n(BaseParamsForAllReports as unknown)[immerable] = true;\n\nexport enum InvoiceStatus\n{\n All = 1,\n Invoiced = 2,\n Uninvoiced = 3,\n}\n\nexport enum RemainingAuthorisationOption\n{\n Both = 'Both',\n Yes = 'Yes',\n No = 'No',\n}\n\nexport class DatePart\n{\n public date: number|null;\n public month: number|null;\n\n public constructor(init?: Partial<DatePart>) { (Object as any).assign(this, init); }\n}\n(DatePart as unknown)[immerable] = true;\n\nexport class DatePartRange\n{\n public from: DatePart|null;\n public to: DatePart|null;\n\n public constructor(init?: Partial<DatePartRange>) { (Object as any).assign(this, init); }\n}\n(DatePartRange as unknown)[immerable] = true;\n\nexport class RegistrationRequest\n{\n public subdomain: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public email: string|null;\n public businessName: string|null;\n public address: string|null;\n public town: string|null;\n public postCode: string|null;\n public locationId: number|null;\n public password: string|null;\n public marketingConsent: boolean|null;\n public enquirySource: string|null;\n\n public constructor(init?: Partial<RegistrationRequest>) { (Object as any).assign(this, init); }\n}\n(RegistrationRequest as unknown)[immerable] = true;\n\nexport enum EnquiryType\n{\n Healthcode = 'Healthcode',\n Reception = 'Reception',\n}\n\nexport class QuickStartWizardGroupStock\n{\n public stockId: number|null;\n public groupStockId: number|null;\n public hasChanged: boolean|null;\n\n public constructor(init?: Partial<QuickStartWizardGroupStock>) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardGroupStock as unknown)[immerable] = true;\n\nexport enum TemplatePackOptions\n{\n None = 'None',\n Physiotherapy = 'Physiotherapy',\n Osteopathy = 'Osteopathy',\n Chiropractic = 'Chiropractic',\n Podiatry = 'Podiatry',\n}\n\nexport class ClinicServiceSetupDto\n{\n public networkServiceId: string|null;\n public networkId: string|null;\n public name: string|null;\n public description: string|null;\n public discipline: string|null;\n public colour: string|null;\n public isOnline: boolean|null;\n // @Ignore()\n public sortIndex: number|null;\n\n public meta: { [index:string]: string; }|null;\n public excludeGroups: string[]|null;\n public excludeLocations: string[]|null;\n public excludePractitioners: string[]|null;\n public overrides: { [index:string]: string; }|null;\n public stockId: string|null;\n public stockName: string|null;\n public stockLength: number|null;\n public stockPrice: number|null;\n public existingCharge: number|null;\n public excludeSessionIds: number[]|null;\n public excludeNormalSessionIds: number[]|null;\n\n public constructor(init?: Partial<ClinicServiceSetupDto>) { (Object as any).assign(this, init); }\n}\n(ClinicServiceSetupDto as unknown)[immerable] = true;\n\nexport enum PrescriptionActions\n{\n draft = 'draft',\n issueForCollection = 'issueForCollection',\n issueToContact = 'issueToContact',\n issueForDelivery = 'issueForDelivery',\n issueOnly = 'issueOnly',\n printPrescription = 'printPrescription',\n}\n\nexport class Update\n{\n public type: string|null;\n public data: string|null;\n public local: string|null;\n\n public constructor(init?: Partial<Update>) { (Object as any).assign(this, init); }\n}\n(Update as unknown)[immerable] = true;\n\n// @Flags()\nexport enum FormStatus\n{\n Sent = 1,\n Draft = 2,\n Submitted = 3,\n Completed = 4,\n Cancelled = 5,\n Declined = 6,\n}\n\nexport enum FileAreaType\n{\n All = 'All',\n Customer = 'Customer',\n Group = 'Group',\n Case = 'Case',\n Invoice = 'Invoice',\n Practitioner = 'Practitioner',\n MedicalContact = 'MedicalContact',\n NM_Business = 'NM_Business',\n}\n\nexport enum TimelineType\n{\n Log = 'Log',\n Note = 'Note',\n Alert = 'Alert',\n}\n\nexport class OnlineConsent\n{\n public emailConsent: boolean|null;\n public smsConsent: boolean|null;\n public phoneConsent: boolean|null;\n public generalConsent: boolean|null;\n public smsEnabled: boolean|null;\n\n public constructor(init?: Partial<OnlineConsent>) { (Object as any).assign(this, init); }\n}\n(OnlineConsent as unknown)[immerable] = true;\n\nexport class BatchEmailRequestObject\n{\n public id: number|null;\n public template: string|null;\n\n public constructor(init?: Partial<BatchEmailRequestObject>) { (Object as any).assign(this, init); }\n}\n(BatchEmailRequestObject as unknown)[immerable] = true;\n\nexport class Attachment\n{\n public name: string|null;\n public path: string|null;\n public content: string|null;\n\n public constructor(init?: Partial<Attachment>) { (Object as any).assign(this, init); }\n}\n(Attachment as unknown)[immerable] = true;\n\nexport class AttachmentGroup\n{\n public files: Attachment[]|null;\n public templates: Attachment[]|null;\n public mergedTemplates: Attachment[]|null;\n\n public constructor(init?: Partial<AttachmentGroup>) { (Object as any).assign(this, init); }\n}\n(AttachmentGroup as unknown)[immerable] = true;\n\nexport enum BlockTemplateFormat\n{\n Draft = 'Draft',\n Block = 'Block',\n}\n\nexport class SystemConfig implements IHasId\n{\n public id: number|null;\n public description: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<SystemConfig>) { (Object as any).assign(this, init); }\n}\n(SystemConfig as unknown)[immerable] = true;\n\nexport enum FromMode\n{\n OurNumber = 'OurNumber',\n TheirNumber = 'TheirNumber',\n FromText = 'FromText',\n}\n\nexport class CasePrintingItem\n{\n public id: number|null;\n public type: string|null;\n\n public constructor(init?: Partial<CasePrintingItem>) { (Object as any).assign(this, init); }\n}\n(CasePrintingItem as unknown)[immerable] = true;\n\nexport class CaseReport\n{\n public id: string|null;\n public rootId: string|null;\n public templateId: string|null;\n public bookerId: string|null;\n public targetId: string|null;\n public data: string|null;\n public timeStamp: string|null;\n public auditId: string|null;\n public status: number|null;\n public message: string|null;\n\n public constructor(init?: Partial<CaseReport>) { (Object as any).assign(this, init); }\n}\n(CaseReport as unknown)[immerable] = true;\n\nexport interface IHasCaseId\n{\n caseId: number|null;\n}\n\nexport class AutoSaveUpdate\n{\n public id: number|null;\n public type: string|null;\n public local: string|null;\n public data: { [index:string]: Object; }|null;\n\n public constructor(init?: Partial<AutoSaveUpdate>) { (Object as any).assign(this, init); }\n}\n(AutoSaveUpdate as unknown)[immerable] = true;\n\nexport class Case implements ICascade, ILocationId, IHasReference, IHasDocuments\n{\n public id: number|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public createdByUserId: number|null;\n public dischargedByUserId: number|null;\n public medicalContactId: number|null;\n public admissionDate: string|null;\n public referralReason: string|null;\n public diagnosis: string|null;\n public diagnosisKey: string|null;\n public diagnosisCode: string|null;\n public dischargeDate: string|null;\n public patientOutcome: string|null;\n public practitionerOutcome: string|null;\n public dischargeStatus: string|null;\n public numberOfAppointments: number|null;\n public reference: string|null;\n public admissionCode: string|null;\n public reviewDate: string|null;\n public referralDate: string|null;\n public bodySite: string|null;\n public bodySide: string|null;\n public timePresent: number|null;\n public timePresentUnit: string|null;\n public injuryCause: string|null;\n public preExistingConditions: string|null;\n public admissionPainScale: number|null;\n public admissionLetterDate: string|null;\n public dischargePainScale: number|null;\n public dischargeLetterDate: string|null;\n public clinicNotes: string|null;\n public agreedFunctionalOutcome: string|null;\n public closed: boolean|null;\n public closedUser: string|null;\n public closedDateTime: string|null;\n public patientType: string|null;\n public auditUser: string|null;\n public auditNotes: string|null;\n public auditDate: string|null;\n public standardPathwayFollowed: boolean|null;\n public locationId: number|null;\n public ofInterest: boolean|null;\n public firstAppointmentId: number|null;\n public serviceTypeId: number|null;\n public linkedCaseId: number|null;\n public status: number|null;\n public autoSaved: boolean|null;\n public data: { [index:string]: Object; }|null;\n public admissionTemplateId: string|null;\n public dischargeTemplateId: string|null;\n public admissionHighlight: { [index:string]: number[]; }|null;\n public dischargeHighlight: { [index:string]: number[]; }|null;\n public type: string|null;\n public bookingAuditId: string|null;\n public goalOrder: number[]|null;\n public scoreOrder: number[]|null;\n public viewed: boolean|null;\n public documentsLoaded: boolean|null;\n public consent: boolean|null;\n // @Ignore()\n public documentsSubDirectory: string|null;\n\n public constructor(init?: Partial<Case>) { (Object as any).assign(this, init); }\n}\n(Case as unknown)[immerable] = true;\n\nexport class Psfs implements IHasId\n{\n public id: number|null;\n public caseId: number|null;\n public activity: string|null;\n public linkedGoalId: number|null;\n\n public constructor(init?: Partial<Psfs>) { (Object as any).assign(this, init); }\n}\n(Psfs as unknown)[immerable] = true;\n\nexport class CaseWithCustomerPractitionerLocationDetails extends Case\n{\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerTitle: string|null;\n public customerHomeTelephone: string|null;\n public customerWorkTelephone: string|null;\n public customerMobileTelephone: string|null;\n public customerEmail: string|null;\n public customerCategory: string|null;\n public customerDateOfBirth: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public location: string|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerEmail: string|null;\n public practitionerCode: string|null;\n public contractNumber: string|null;\n public regNumber: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n // @Ignore()\n public practitionerNameWithAwards: string|null;\n\n // @Ignore()\n public createdByName: string|null;\n\n // @Ignore()\n public dischargedByName: string|null;\n\n // @Ignore()\n public isAudited: boolean|null;\n\n // @Ignore()\n public auditUserName: string|null;\n\n public serviceType: string|null;\n // @Ignore()\n public psfs: Psfs[]|null;\n\n public constructor(init?: Partial<CaseWithCustomerPractitionerLocationDetails>) { super(init); (Object as any).assign(this, init); }\n}\n(CaseWithCustomerPractitionerLocationDetails as unknown)[immerable] = true;\n\nexport class GraphicResult\n{\n public id: number|null;\n public caseId: number|null;\n public date: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<GraphicResult>) { (Object as any).assign(this, init); }\n}\n(GraphicResult as unknown)[immerable] = true;\n\nexport class PainAnnotation\n{\n public id: number|null;\n public chartId: number|null;\n public annotation: string|null;\n public x: number|null;\n public y: number|null;\n public rectX: number|null;\n public rectY: number|null;\n public title: string|null;\n public treatmentId: number|null;\n public point: number|null;\n public caseId: number|null;\n public painType: string|null;\n public dateTime: string|null;\n\n public constructor(init?: Partial<PainAnnotation>) { (Object as any).assign(this, init); }\n}\n(PainAnnotation as unknown)[immerable] = true;\n\nexport class ImageResult\n{\n public id: number|null;\n public caseId: number|null;\n public date: string|null;\n public filename: string|null;\n public type: string|null;\n public closed: boolean|null;\n public closedUser: string|null;\n public closedDateTime: string|null;\n public annotations: PainAnnotation[]|null;\n\n public constructor(init?: Partial<ImageResult>) { (Object as any).assign(this, init); }\n}\n(ImageResult as unknown)[immerable] = true;\n\nexport class CaseSummaryResult\n{\n public id: number|null;\n public admissionDate: string|null;\n public reference: string|null;\n public diagnosis: string|null;\n public bodySite: string|null;\n public dischargeDate: string|null;\n public treatments: number|null;\n\n public constructor(init?: Partial<CaseSummaryResult>) { (Object as any).assign(this, init); }\n}\n(CaseSummaryResult as unknown)[immerable] = true;\n\nexport enum ConsultationItemType\n{\n Assessment = 'Assessment',\n Modality = 'Modality',\n Goal = 'Goal',\n Score = 'Score',\n Image = 'Image',\n}\n\nexport class ConsultationItem implements IHasId, ICascade\n{\n public id: number|null;\n public treatmentId: number|null;\n public type: ConsultationItemType|null;\n public title: string|null;\n public data: { [index:string]: Object; }|null;\n public date: string|null;\n public templateId: string|null;\n public highlights: { [index:string]: number[]; }|null;\n\n public constructor(init?: Partial<ConsultationItem>) { (Object as any).assign(this, init); }\n}\n(ConsultationItem as unknown)[immerable] = true;\n\nexport class PostCloseNotes implements IHasId\n{\n public id: number|null;\n public caseId: number|null;\n public treatmentId: number|null;\n public userId: number|null;\n public notes: string|null;\n public date: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<PostCloseNotes>) { (Object as any).assign(this, init); }\n}\n(PostCloseNotes as unknown)[immerable] = true;\n\nexport class PostCloseNotesWithUser extends PostCloseNotes\n{\n public userName: string|null;\n public userFullName: string|null;\n\n public constructor(init?: Partial<PostCloseNotesWithUser>) { super(init); (Object as any).assign(this, init); }\n}\n(PostCloseNotesWithUser as unknown)[immerable] = true;\n\nexport class CaseScoreGoalResponse\n{\n public id: number|null;\n public name: string|null;\n\n public constructor(init?: Partial<CaseScoreGoalResponse>) { (Object as any).assign(this, init); }\n}\n(CaseScoreGoalResponse as unknown)[immerable] = true;\n\nexport class NewPsfs\n{\n public id: number|null;\n public activity: string|null;\n public initialValue: number|null;\n public linkedGoalId: number|null;\n\n public constructor(init?: Partial<NewPsfs>) { (Object as any).assign(this, init); }\n}\n(NewPsfs as unknown)[immerable] = true;\n\nexport class TreatmentDetails\n{\n public id: number|null;\n public caseId: number|null;\n public appointmentId: number|null;\n public dateTime: string|null;\n public initials: string|null;\n public notes: string|null;\n public length: number|null;\n public assessLength: number|null;\n public cost: number|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public migrated: boolean|null;\n public closed: boolean|null;\n public closedUser: string|null;\n public closedDate: string|null;\n public scale: number|null;\n public measure: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<TreatmentDetails>) { (Object as any).assign(this, init); }\n}\n(TreatmentDetails as unknown)[immerable] = true;\n\nexport class DynamicUpdate\n{\n public id: number|null;\n public type: string|null;\n public json: string|null;\n\n public constructor(init?: Partial<DynamicUpdate>) { (Object as any).assign(this, init); }\n}\n(DynamicUpdate as unknown)[immerable] = true;\n\nexport class ScoreEntryRequest implements ILocationId, ISecurityId\n{\n public id: number|null;\n public dateAdded: string|null;\n public scoreId: number|null;\n public score: number|null;\n public locationId: number|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ScoreEntryRequest>) { (Object as any).assign(this, init); }\n}\n(ScoreEntryRequest as unknown)[immerable] = true;\n\nexport class ScoreRequest implements ILocationId, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public title: string|null;\n public dateAdded: string|null;\n public dateCompleted: string|null;\n public caseId: number|null;\n public settingId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ScoreRequest>) { (Object as any).assign(this, init); }\n}\n(ScoreRequest as unknown)[immerable] = true;\n\nexport class GoalEntryRequest implements ISecurityId\n{\n public title: string|null;\n public id: number|null;\n public notes: string|null;\n public caseId: number|null;\n public securityId: number|null;\n public goalId: number|null;\n public completionPercentage: number|null;\n public dateAdded: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GoalEntryRequest>) { (Object as any).assign(this, init); }\n}\n(GoalEntryRequest as unknown)[immerable] = true;\n\nexport class GoalRequest implements ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n public title: string|null;\n public averaged: boolean|null;\n public dateAdded: string|null;\n public dateCompleted: string|null;\n public settingId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GoalRequest>) { (Object as any).assign(this, init); }\n}\n(GoalRequest as unknown)[immerable] = true;\n\nexport class DiaryListResponse implements IHasId\n{\n public id: number|null;\n public name: string|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public type: string|null;\n public status: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public stockId: number|null;\n public comment: string|null;\n public customerId: number|null;\n public customerReference: string|null;\n public customerAltRef: string|null;\n public customerMobileTelephone: string|null;\n public customerEmail: string|null;\n public customerSMSEnabled: boolean|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerDateOfBirth: string|null;\n public customerGender: string|null;\n public insuranceNumber: string|null;\n public groupReference: string|null;\n public customerStatus: number|null;\n public customerRegistrationDate: string|null;\n public registrationNumber: string|null;\n\n public constructor(init?: Partial<DiaryListResponse>) { (Object as any).assign(this, init); }\n}\n(DiaryListResponse as unknown)[immerable] = true;\n\nexport class DiaryListRequest extends DiaryListBase implements IReturn<ResponseBase<DiaryListResponse>>\n{\n\n public constructor(init?: Partial<DiaryListRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DiaryListResponse>(); }\n}\n(DiaryListRequest as unknown)[immerable] = true;\n\nexport class DiaryBulkActionBaseRequest extends BulkActionBaseRequest<DiaryListRequest>\n{\n\n public constructor(init?: Partial<DiaryBulkActionBaseRequest>) { super(init); (Object as any).assign(this, init); }\n}\n(DiaryBulkActionBaseRequest as unknown)[immerable] = true;\n\n// @Flags()\nexport enum TagActionType\n{\n AddTag = 0,\n RemoveTag = 1,\n}\n\nexport class GuardDeleteResponse\n{\n public cases: number|null;\n public appointments: number|null;\n public invoices: number|null;\n public payments: number|null;\n public billingItems: number|null;\n public classes: number|null;\n\n public constructor(init?: Partial<GuardDeleteResponse>) { (Object as any).assign(this, init); }\n}\n(GuardDeleteResponse as unknown)[immerable] = true;\n\nexport class GeneralCustomerResponse\n{\n public id: number|null;\n public reference: string|null;\n public forename: string|null;\n public surname: string|null;\n public title: string|null;\n public name: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public invoiceAddressLine1: string|null;\n public invoiceAddressLine2: string|null;\n public invoiceAddressLine3: string|null;\n public invoiceAddressLine4: string|null;\n public invoiceAddressLine5: string|null;\n public invoicePostCode: string|null;\n public useInvoiceAddress: boolean|null;\n public address: string|null;\n public invoiceAddress: string|null;\n public groupAddressTo: string|null;\n public postCode: string|null;\n public registrationDate: string|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public email: string|null;\n public dateOfBirth: string|null;\n public locationId: number|null;\n public groupId: number|null;\n public locationName: string|null;\n public practitionerId: number|null;\n public practitionerEmail: string|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerStatus: number|null;\n public groupName: string|null;\n public patientGroup: string|null;\n public status: string|null;\n public provisional: boolean|null;\n public height: number|null;\n public weight: number|null;\n public employer: string|null;\n public niNumber: string|null;\n public hospitalNumber: string|null;\n public insuranceNumber: string|null;\n public alternativeRef1: string|null;\n public groupReference: string|null;\n public consent: string|null;\n public category: string|null;\n public enquiry: string|null;\n public invoicePeriod: string|null;\n public balanceInvoiced: number|null;\n public balanceOwed: number|null;\n public billTo: string|null;\n public online: boolean|null;\n public smsEnabled: boolean|null;\n public sarStatus: string|null;\n public alerts: AlertResponse[]|null;\n public guardDelete: GuardDeleteResponse[]|null;\n public givenConsent: boolean|null;\n public emailConsent: boolean|null;\n public smsConsent: boolean|null;\n public phoneConsent: boolean|null;\n public meta: { [index:string]: Object; }|null;\n public cardName: string|null;\n public lastFourDigits: string|null;\n public brand: string|null;\n public expiryMonth: number|null;\n public expiryYear: number|null;\n public flag: string|null;\n public irn: string|null;\n public medicareCardNo: string|null;\n public dvaNumber: string|null;\n public accountId: number|null;\n public accountType: string|null;\n public tags: string[]|null;\n public overridePayAtClinic: boolean|null;\n\n public constructor(init?: Partial<GeneralCustomerResponse>) { (Object as any).assign(this, init); }\n}\n\n// @Route(\"/customers/search\")\nexport class CustomerAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>\n{\n public name: string|null;\n public address: string|null;\n public email: string|null;\n public phoneNumbers: string|null;\n public reference: string|null;\n public status: number|null;\n public provisional: boolean|null;\n public gender: string[]|null;\n public dateOfBirth: DateRange|null;\n public registrationDate: DateRange|null;\n public lastAppointmentDate: DateRange|null;\n public practitionerIds: number[]|null;\n public includeTags: string[]|null;\n public excludeTags: string[]|null;\n\n public constructor(init?: Partial<CustomerAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(CustomerAdvancedSearchRequest as unknown)[immerable] = true;\n\nexport class CustomerBulkActionBaseRequest extends BulkActionBaseRequest<CustomerAdvancedSearchRequest>\n{\n\n public constructor(init?: Partial<CustomerBulkActionBaseRequest>) { super(init); (Object as any).assign(this, init); }\n}\n(CustomerBulkActionBaseRequest as unknown)[immerable] = true;\n\nexport enum AutomationEventEntityType\n{\n Appointment = 'Appointment',\n Patient = 'Patient',\n Invoice = 'Invoice',\n Case = 'Case',\n Task = 'Task',\n ClassAttendance = 'ClassAttendance',\n Charge = 'Charge',\n Form = 'Form',\n Stock = 'Stock',\n Authorisation = 'Authorisation',\n Vehicle = 'Vehicle',\n}\n\nexport enum AutomationEventName\n{\n Booked = 'Booked',\n Completed = 'Completed',\n Cancelled = 'Cancelled',\n DNAed = 'DNAed',\n Created = 'Created',\n Updated = 'Updated',\n Discharged = 'Discharged',\n Attended = 'Attended',\n Birthday = 'Birthday',\n PackageItemsExpiring = 'PackageItemsExpiring',\n BulkAction = 'BulkAction',\n Sent = 'Sent',\n AuthAdded = 'AuthAdded',\n ExpiringAuth = 'ExpiringAuth',\n FallsBelowAuthThreshold = 'FallsBelowAuthThreshold',\n FallsBelowTreatmentThreshold = 'FallsBelowTreatmentThreshold',\n HasReminder = 'HasReminder',\n}\n\nexport enum AppointmentConditions\n{\n IsFirstAppointment = 'IsFirstAppointment',\n IsFirstAppointmentAfterRegistration = 'IsFirstAppointmentAfterRegistration',\n HasCase = 'HasCase',\n LinkedToDischargedCase = 'LinkedToDischargedCase',\n LinkedToUndischargedCase = 'LinkedToUndischargedCase',\n HasFutureAuthorisations = 'HasFutureAuthorisations',\n IsLinkedToSpecificGroups = 'IsLinkedToSpecificGroups',\n IsLinkedToGroupWithClassifications = 'IsLinkedToGroupWithClassifications',\n IsLinkedToGroup = 'IsLinkedToGroup',\n AppointmentChargeHasAllTheTags = 'AppointmentChargeHasAllTheTags',\n AppointmentChargeHasNoneOfTheTags = 'AppointmentChargeHasNoneOfTheTags',\n AppointmentChargeHasAnyOfTheTags = 'AppointmentChargeHasAnyOfTheTags',\n HasNoFutureAppointments = 'HasNoFutureAppointments',\n HasFutureAppointments = 'HasFutureAppointments',\n IsNotLinkedToGroup = 'IsNotLinkedToGroup',\n HasBeenRecalled = 'HasBeenRecalled',\n HasNotBeenRecalled = 'HasNotBeenRecalled',\n IsAtLocation = 'IsAtLocation',\n}\n\nexport enum TaskConditions\n{\n HasAllTheTags = 'HasAllTheTags',\n HasAnyOfTheTags = 'HasAnyOfTheTags',\n HasNoneOfTheTags = 'HasNoneOfTheTags',\n}\n\nexport enum InvoiceConditions\n{\n InvoiceHasTheStatus = 'InvoiceHasTheStatus',\n IsAtLocation = 'IsAtLocation',\n}\n\nexport enum CaseConditions\n{\n IsDischarged = 'IsDischarged',\n IsNotDischarged = 'IsNotDischarged',\n}\n\nexport enum CustomerConditions\n{\n HasNoneOfTheTags = 'HasNoneOfTheTags',\n HasAnyOfTheTags = 'HasAnyOfTheTags',\n HasAllTheTags = 'HasAllTheTags',\n HasTheStatus = 'HasTheStatus',\n IsLinkedToGroup = 'IsLinkedToGroup',\n HasNoFutureAppointments = 'HasNoFutureAppointments',\n HasFutureAppointments = 'HasFutureAppointments',\n IsLinkedToSpecificGroups = 'IsLinkedToSpecificGroups',\n IsNotLinkedToGroup = 'IsNotLinkedToGroup',\n IsLinkedToGroupWithClassifications = 'IsLinkedToGroupWithClassifications',\n HasFutureAuthorisations = 'HasFutureAuthorisations',\n HasNoFutureAuthorisations = 'HasNoFutureAuthorisations',\n HasFutureClasses = 'HasFutureClasses',\n HasNoFutureClasses = 'HasNoFutureClasses',\n HasConsentedToEmails = 'HasConsentedToEmails',\n HasConsentedToTextMessages = 'HasConsentedToTextMessages',\n HasConsentedToPhoneCalls = 'HasConsentedToPhoneCalls',\n HasConsentedToTreatment = 'HasConsentedToTreatment',\n IsAtLocation = 'IsAtLocation',\n HasSomeCompletedAppointments = 'HasSomeCompletedAppointments',\n HasAttendedSomeClasses = 'HasAttendedSomeClasses',\n}\n\nexport enum ClassAttendanceConditions\n{\n HasAttended = 'HasAttended',\n HasNotAttended = 'HasNotAttended',\n HasCancelled = 'HasCancelled',\n HasNotCancelled = 'HasNotCancelled',\n HasNotBeenRecalled = 'HasNotBeenRecalled',\n HasBeenRecalled = 'HasBeenRecalled',\n IsAtLocation = 'IsAtLocation',\n}\n\nexport enum ChargeConditions\n{\n IsDiscount = 'IsDiscount',\n IsWriteOff = 'IsWriteOff',\n IsCredit = 'IsCredit',\n IsForPhysicalStock = 'IsForPhysicalStock',\n IsForConnectPackage = 'IsForConnectPackage',\n IsASubscription = 'IsASubscription',\n IsNotASubscription = 'IsNotASubscription',\n StockItemIs = 'StockItemIs',\n HasAllTheTags = 'HasAllTheTags',\n HasAnyOfTheTags = 'HasAnyOfTheTags',\n HasNoneOfTheTags = 'HasNoneOfTheTags',\n IsAtLocation = 'IsAtLocation',\n IsTransfer = 'IsTransfer',\n}\n\nexport enum FormConditions\n{\n IsComplete = 'IsComplete',\n IsIncomplete = 'IsIncomplete',\n}\n\nexport enum StockConditions\n{\n HasAllTheTags = 'HasAllTheTags',\n HasAnyOfTheTags = 'HasAnyOfTheTags',\n HasNoneOfTheTags = 'HasNoneOfTheTags',\n}\n\nexport class EventCondition\n{\n public type: AutomationEventEntityType|null;\n public appointmentFunction: AppointmentConditions|null;\n public taskFunction: TaskConditions|null;\n public invoiceFunction: InvoiceConditions|null;\n public caseFunction: CaseConditions|null;\n public patientFunction: CustomerConditions|null;\n public classattendanceFunction: ClassAttendanceConditions|null;\n public parameters: { [index:string]: Object; }|null;\n public chargeFunction: ChargeConditions|null;\n public formFunction: FormConditions|null;\n public stockFunction: StockConditions|null;\n\n public constructor(init?: Partial<EventCondition>) { (Object as any).assign(this, init); }\n}\n(EventCondition as unknown)[immerable] = true;\n\nexport enum EventActionType\n{\n Task = 'Task',\n AddTag = 'AddTag',\n RemoveTag = 'RemoveTag',\n Email = 'Email',\n SMS = 'SMS',\n Form = 'Form',\n AddTagsFromCharge = 'AddTagsFromCharge',\n UpdateField = 'UpdateField',\n Mailchimp = 'Mailchimp',\n}\n\nexport enum TimeUnit\n{\n Immediate = 'Immediate',\n Hours = 'Hours',\n Days = 'Days',\n Weeks = 'Weeks',\n Months = 'Months',\n}\n\nexport class FutureDateSpecifier\n{\n public value: number|null;\n public unit: TimeUnit|null;\n\n public constructor(init?: Partial<FutureDateSpecifier>) { (Object as any).assign(this, init); }\n}\n(FutureDateSpecifier as unknown)[immerable] = true;\n\nexport class FutureTimeSpecifier\n{\n public hour: number|null;\n public minutes: number|null;\n\n public constructor(init?: Partial<FutureTimeSpecifier>) { (Object as any).assign(this, init); }\n}\n(FutureTimeSpecifier as unknown)[immerable] = true;\n\nexport enum EEventActionTarget\n{\n EventLinkedPractitioner = 'EventLinkedPractitioner',\n Patient = 'Patient',\n PatientLinkedBusiness = 'PatientLinkedBusiness',\n PatientLinkedPractitioner = 'PatientLinkedPractitioner',\n Specified = 'Specified',\n}\n\nexport class EventAction\n{\n public eventType: AutomationEventEntityType|null;\n public actionType: EventActionType|null;\n public due: FutureDateSpecifier|null;\n public time: FutureTimeSpecifier|null;\n public conditions: EventCondition[]|null;\n public template: string|null;\n public taskDescription: string|null;\n public tags: string[]|null;\n public taskDue: FutureDateSpecifier|null;\n public taskFor: number|null;\n public taskPriority: boolean|null;\n public taskReminder: boolean|null;\n public taskStatus: string|null;\n public formTemplateId: string|null;\n public customMessage: string|null;\n public audienceId: string|null;\n public target: EEventActionTarget|null;\n public emailAddress: string|null;\n\n public constructor(init?: Partial<EventAction>) { (Object as any).assign(this, init); }\n}\n(EventAction as unknown)[immerable] = true;\n\nexport class AutomationEvent implements IHasGuidId\n{\n public id: string|null;\n public type: AutomationEventEntityType|null;\n public eventName: AutomationEventName|null;\n public name: string|null;\n public description: string|null;\n public isActive: boolean|null;\n public isArchived: boolean|null;\n public conditions: EventCondition[]|null;\n public actions: EventAction[]|null;\n public isBulkAction: boolean|null;\n public createdDate: string|null;\n public lookupValue: string|null;\n public beforeDays: number|null;\n\n public constructor(init?: Partial<AutomationEvent>) { (Object as any).assign(this, init); }\n}\n(AutomationEvent as unknown)[immerable] = true;\n\nexport interface IHasGuidId extends IHasIdMarker\n{\n id: string|null;\n}\n\nexport enum TagEntityType\n{\n General = 'General',\n Patient = 'Patient',\n Stock = 'Stock',\n}\n\nexport class Tag implements IHasGuidId\n{\n public id: string|null;\n public name: string|null;\n public type: TagEntityType|null;\n public colour: string|null;\n public isActive: boolean|null;\n public isInverted: boolean|null;\n public showInLists: boolean|null;\n\n public constructor(init?: Partial<Tag>) { (Object as any).assign(this, init); }\n}\n(Tag as unknown)[immerable] = true;\n\nexport class AssertionResponse\n{\n public authenticatorData: string|null;\n public signature: string|null;\n public clientDataJson: string|null;\n public userHandle: string|null;\n\n public constructor(init?: Partial<AssertionResponse>) { (Object as any).assign(this, init); }\n}\n\nexport enum PublicKeyCredentialType\n{\n PublicKey = 'public-key',\n}\n\nexport class AuthenticationExtensionsClientOutputs\n{\n public appID: boolean|null;\n public authenticatorSelection: boolean|null;\n\n public constructor(init?: Partial<AuthenticationExtensionsClientOutputs>) { (Object as any).assign(this, init); }\n}\n(AuthenticationExtensionsClientOutputs as unknown)[immerable] = true;\n\nexport class ResponseData\n{\n public attestationObject: string|null;\n public clientDataJson: string|null;\n\n public constructor(init?: Partial<ResponseData>) { (Object as any).assign(this, init); }\n}\n\nexport class AssignedCustomAttributeDto\n{\n public id: string|null;\n public objectId: number|null;\n public objectType: string|null;\n public customAttributeType: string|null;\n public customAttributeId: string|null;\n public objectGuid: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<AssignedCustomAttributeDto>) { (Object as any).assign(this, init); }\n}\n(AssignedCustomAttributeDto as unknown)[immerable] = true;\n\nexport enum AccessMode\n{\n Private = 'Private',\n ViewOnly = 'ViewOnly',\n FullAccess = 'FullAccess',\n}\n\nexport enum DefaultStockTypes\n{\n First = 'First',\n FollowUp = 'FollowUp',\n Dna = 'Dna',\n Cancel = 'Cancel',\n Unknown = 'Unknown',\n}\n\nexport class TreatmentAuthResponse\n{\n public id: number|null;\n public authCode: string|null;\n public expired: string|null;\n public isExpired: boolean|null;\n public maxTreatments: number|null;\n public maxValue: number|null;\n public expiryDate: string|null;\n public usedTreatments: number|null;\n public usedValue: number|null;\n public usedFor: string|null;\n public startDate: string|null;\n public groupId: number|null;\n public caseId: number|null;\n public customerId: number|null;\n public contactId: number|null;\n public valueRemaining: number|null;\n public appointmentsRemaining: number|null;\n public bodySite: string|null;\n public groupName: string|null;\n public serviceType: string|null;\n public serviceTypeId: number|null;\n public prontoBookingAuditId: string|null;\n public authCodeCustomerReference: string|null;\n\n public constructor(init?: Partial<TreatmentAuthResponse>) { (Object as any).assign(this, init); }\n}\n(TreatmentAuthResponse as unknown)[immerable] = true;\n\nexport enum PrepaymentType\n{\n PayLater = 'PayLater',\n Autopay = 'Autopay',\n}\n\nexport interface IAlertRequest\n{\n}\n\nexport class IdDescriminatorType\n{\n public objectId: number|null;\n public descriminatorType: string|null;\n\n public constructor(init?: Partial<IdDescriminatorType>) { (Object as any).assign(this, init); }\n}\n(IdDescriminatorType as unknown)[immerable] = true;\n\nexport enum SearchModuleEntityType\n{\n Audit = 'Audit',\n AutomationRules = 'AutomationRules',\n Business = 'Business',\n Case = 'Case',\n Charge = 'Charge',\n Debtor = 'Debtor',\n Diary = 'Diary',\n Expenditure = 'Expenditure',\n GdsEstimate = 'GdsEstimate',\n Invoice = 'Invoice',\n JobSheet = 'JobSheet',\n Patient = 'Patient',\n Location = 'Location',\n MedicalContact = 'MedicalContact',\n Payment = 'Payment',\n Practitioner = 'Practitioner',\n Room = 'Room',\n RpReferrals = 'RpReferrals',\n RpReferralsAction = 'RpReferralsAction',\n RpFiles = 'RpFiles',\n Supplier = 'Supplier',\n Subscription = 'Subscription',\n RpUser = 'RpUser',\n Stock = 'Stock',\n Timeline = 'Timeline',\n User = 'User',\n Vehicle = 'Vehicle',\n}\n\nexport class SearchFilter implements IHasGuidId\n{\n public id: string|null;\n public filterModule: SearchModuleEntityType|null;\n public filterName: string|null;\n public filterDescription: string|null;\n public isActive: boolean|null;\n public filterConditions: string|null;\n // @Ignore()\n public parsedFilterConditions: SearchFilterCondition[]|null;\n\n public constructor(init?: Partial<SearchFilter>) { (Object as any).assign(this, init); }\n}\n(SearchFilter as unknown)[immerable] = true;\n\nexport class LedgerAccountInfo\n{\n public id: string|null;\n public accountName: string|null;\n public code: string|null;\n public type: string|null;\n public override: boolean|null;\n\n public constructor(init?: Partial<LedgerAccountInfo>) { (Object as any).assign(this, init); }\n}\n(LedgerAccountInfo as unknown)[immerable] = true;\n\nexport enum LedgerCodeCategory\n{\n DefaultSales = 'DefaultSales',\n DefaultIncome = 'DefaultIncome',\n Stock = 'Stock',\n Consultation = 'Consultation',\n Class = 'Class',\n Package = 'Package',\n CreditNote = 'CreditNote',\n WriteOff = 'WriteOff',\n Discount = 'Discount',\n Transfer = 'Transfer',\n Cancellation = 'Cancellation',\n Dna = 'Dna',\n}\n\nexport class LedgerAccountInfoWithCategory extends LedgerAccountInfo\n{\n public ledgerCategory: LedgerCodeCategory|null;\n\n public constructor(init?: Partial<LedgerAccountInfoWithCategory>) { super(init); (Object as any).assign(this, init); }\n}\n(LedgerAccountInfoWithCategory as unknown)[immerable] = true;\n\nexport class TaxRateInfo\n{\n public id: string|null;\n public name: string|null;\n public code: string|null;\n public totalTaxRate: number|null;\n\n public constructor(init?: Partial<TaxRateInfo>) { (Object as any).assign(this, init); }\n}\n(TaxRateInfo as unknown)[immerable] = true;\n\nexport enum TaxRateCategory\n{\n Taxable = 'Taxable',\n NonTaxable = 'NonTaxable',\n}\n\nexport class TaxRateInfoWithCategory extends TaxRateInfo\n{\n public taxCategory: TaxRateCategory|null;\n\n public constructor(init?: Partial<TaxRateInfoWithCategory>) { super(init); (Object as any).assign(this, init); }\n}\n(TaxRateInfoWithCategory as unknown)[immerable] = true;\n\nexport class AccountingSettingInfo\n{\n public tenantId: string|null;\n public status: string|null;\n public systemName: AccountingSystemProviderName|null;\n public serviceId: string|null;\n public salesLedgerCodeId: string|null;\n public incomeLedgerCodeId: string|null;\n public nonTaxableRateId: string|null;\n public taxableRateId: string|null;\n public appointmentItemsLedgerCodeId: string|null;\n public classItemsLedgerCodeId: string|null;\n public packageItemsLedgerCodeId: string|null;\n public stockItemsLedgerCodeId: string|null;\n public discountItemsLedgerCodeId: string|null;\n public creditItemsLedgerCodeId: string|null;\n public transferItemsLedgerCodeId: string|null;\n public writeoffItemsLedgerCodeId: string|null;\n public cancellationItemsLedgerCodeId: string|null;\n public dnaItemsLedgerCodeId: string|null;\n public syncStartDate: string|null;\n public deactivationDate: string|null;\n public setupComplete: boolean|null;\n public deactivated: boolean|null;\n public ledgerAccountInfos: LedgerAccountInfoWithCategory[]|null;\n public taxRateInfos: TaxRateInfoWithCategory[]|null;\n public activationHistory: string[]|null;\n\n public constructor(init?: Partial<AccountingSettingInfo>) { (Object as any).assign(this, init); }\n}\n(AccountingSettingInfo as unknown)[immerable] = true;\n\nexport enum SubscriptionStatus\n{\n Active = 1,\n Cancelled = 2,\n Expired = 3,\n Removed = 4,\n}\n\nexport enum SubscriptionBillingMode\n{\n Now = 'Now',\n Later = 'Later',\n}\n\nexport enum SubscriptionPaymentMode\n{\n Now = 'Now',\n Later = 'Later',\n}\n\nexport enum SubscriptionPaymentMethod\n{\n Cash = 'Cash',\n ExistingCard = 'ExistingCard',\n Other = 'Other',\n SynchronousTempCardOnly = 'SynchronousTempCardOnly',\n SquareTerminal = 'SquareTerminal',\n}\n\nexport enum SubscriptionRecurrenceInterval\n{\n Day = 'Day',\n Week = 'Week',\n Fortnight = 'Fortnight',\n Month = 'Month',\n Quarter = 'Quarter',\n Year = 'Year',\n}\n\nexport class PackageBundleItemResponse\n{\n public id: string|null;\n public bundleId: string|null;\n public type: PackageBundleItemType|null;\n public typeId: number|null;\n public description: string|null;\n\n public constructor(init?: Partial<PackageBundleItemResponse>) { (Object as any).assign(this, init); }\n}\n(PackageBundleItemResponse as unknown)[immerable] = true;\n\nexport class PackageBundleResponse\n{\n public id: string|null;\n public quantity: number|null;\n public type: PackageBundleItemType|null;\n public items: PackageBundleItemResponse[]|null;\n public packageId: string|null;\n\n public constructor(init?: Partial<PackageBundleResponse>) { (Object as any).assign(this, init); }\n}\n(PackageBundleResponse as unknown)[immerable] = true;\n\n// @Flags()\nexport enum PackageType\n{\n ITEM = 0,\n CREDIT = 1,\n}\n\nexport enum WaitListGender\n{\n Unspecified = 'Unspecified',\n Male = 'Male',\n Female = 'Female',\n Specified = 'Specified',\n}\n\nexport enum TimeOfDay\n{\n AnyTime = 'AnyTime',\n Morning = 'Morning',\n Afternoon = 'Afternoon',\n Evening = 'Evening',\n Custom = 'Custom',\n}\n\nexport enum WaitingListType\n{\n Appointment = 'Appointment',\n Class = 'Class',\n Course = 'Course',\n}\n\nexport enum LocationType\n{\n Any = 'Any',\n Specific = 'Specific',\n}\n\nexport enum WaitingListUrgency\n{\n Normal = 'Normal',\n High = 'High',\n}\n\nexport enum WaitingListStatus\n{\n Waiting = 'Waiting',\n AwaitingConfirmation = 'AwaitingConfirmation',\n Booked = 'Booked',\n Declined = 'Declined',\n Expired = 'Expired',\n}\n\nexport enum WaitingListSubStatus\n{\n Awaiting = 'Awaiting',\n Confirmed = 'Confirmed',\n Declined = 'Declined',\n DidNotRespond = 'DidNotRespond',\n RespondedButNotBooked = 'RespondedButNotBooked',\n}\n\nexport enum WaitingListNotificationType\n{\n KeepNotifying = 'KeepNotifying',\n Pause = 'Pause',\n Remove = 'Remove',\n}\n\nexport enum WaitingListBookingType\n{\n TM3 = 'TM3',\n ONLINE = 'ONLINE',\n}\n\nexport class Qualification\n{\n public id: string|null;\n public isSet: boolean|null;\n public name: string|null;\n public body: string|null;\n public expiryDate: string|null;\n public startDate: string|null;\n\n public constructor(init?: Partial<Qualification>) { (Object as any).assign(this, init); }\n}\n(Qualification as unknown)[immerable] = true;\n\nexport class AppointmentPractitionerObject\n{\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public id: string|null;\n public practitionerId: number|null;\n public name: string|null;\n public shortName: string|null;\n public qualifications: Qualification[]|null;\n\n public constructor(init?: Partial<AppointmentPractitionerObject>) { (Object as any).assign(this, init); }\n}\n(AppointmentPractitionerObject as unknown)[immerable] = true;\n\nexport class AppointmentLocationObject\n{\n public name: string|null;\n public id: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<AppointmentLocationObject>) { (Object as any).assign(this, init); }\n}\n(AppointmentLocationObject as unknown)[immerable] = true;\n\nexport class AppointmentRoomObject\n{\n public id: number|null;\n\n public constructor(init?: Partial<AppointmentRoomObject>) { (Object as any).assign(this, init); }\n}\n(AppointmentRoomObject as unknown)[immerable] = true;\n\nexport enum AppointmentType\n{\n Pronto = 'Pronto',\n Internal = 'Internal',\n}\n\nexport class AppointmentSearchResult\n{\n public price: number|null;\n public priceExVat: number|null;\n public vatRate: number|null;\n public bookingMethod: string|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public practitioner: AppointmentPractitionerObject|null;\n public location: AppointmentLocationObject|null;\n public room: AppointmentRoomObject|null;\n public patientId: string|null;\n public stockId: string|null;\n public networkId: string|null;\n public serviceId: string|null;\n public serviceTypeId: number|null;\n public appointmentType: AppointmentType|null;\n public returnAppointmentTimesAsUnspecified: boolean|null;\n public isFollowUp: boolean|null;\n\n public constructor(init?: Partial<AppointmentSearchResult>) { (Object as any).assign(this, init); }\n}\n(AppointmentSearchResult as unknown)[immerable] = true;\n\nexport enum PaymentMode\n{\n Credit = 1,\n Card = 2,\n SubscriptionPackage = 3,\n Clinic = 4,\n PrePaid = 5,\n FutureCredit = 6,\n}\n\nexport class CustomerCardDemographics\n{\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n\n public constructor(init?: Partial<CustomerCardDemographics>) { (Object as any).assign(this, init); }\n}\n(CustomerCardDemographics as unknown)[immerable] = true;\n\nexport class TakePaymentRequest\n{\n public provider: PaymentProviderName|null;\n public data: { [index:string]: string; }|null;\n public saveCard: boolean|null;\n public useSavedCard: boolean|null;\n public customerDetails: CustomerCardDemographics|null;\n\n public constructor(init?: Partial<TakePaymentRequest>) { (Object as any).assign(this, init); }\n}\n(TakePaymentRequest as unknown)[immerable] = true;\n\nexport class OnlineGroupDto\n{\n public id: number|null;\n public name: string|null;\n\n public constructor(init?: Partial<OnlineGroupDto>) { (Object as any).assign(this, init); }\n}\n(OnlineGroupDto as unknown)[immerable] = true;\n\nexport class CardDetails\n{\n public brand: string|null;\n public elementType: string|null;\n public cardName: string|null;\n public expiryMonth: number|null;\n public expiryYear: number|null;\n public lastFourDigits: string|null;\n\n public constructor(init?: Partial<CardDetails>) { (Object as any).assign(this, init); }\n}\n(CardDetails as unknown)[immerable] = true;\n\nexport class MsContact\n{\n public name: string|null;\n public email: string|null;\n\n public constructor(init?: Partial<MsContact>) { (Object as any).assign(this, init); }\n}\n(MsContact as unknown)[immerable] = true;\n\nexport class StripeEntity implements IStripeEntity\n{\n\n public constructor(init?: Partial<StripeEntity>) { (Object as any).assign(this, init); }\n}\n\nexport class StripeEntity_1<T> extends StripeEntity\n{\n\n public constructor(init?: Partial<StripeEntity_1<T>>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class PaymentMethodAfterpayClearpay extends StripeEntity_1<PaymentMethodAfterpayClearpay>\n{\n\n public constructor(init?: Partial<PaymentMethodAfterpayClearpay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAfterpayClearpay as unknown)[immerable] = true;\n\nexport class PaymentMethodAlipay extends StripeEntity_1<PaymentMethodAlipay>\n{\n\n public constructor(init?: Partial<PaymentMethodAlipay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAlipay as unknown)[immerable] = true;\n\nexport class PaymentMethodAuBecsDebit extends StripeEntity_1<PaymentMethodAuBecsDebit>\n{\n public bsbNumber: string|null;\n public fingerprint: string|null;\n public last4: string|null;\n\n public constructor(init?: Partial<PaymentMethodAuBecsDebit>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAuBecsDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodBacsDebit extends StripeEntity_1<PaymentMethodBacsDebit>\n{\n public fingerprint: string|null;\n public last4: string|null;\n public sortCode: string|null;\n\n public constructor(init?: Partial<PaymentMethodBacsDebit>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBacsDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodBancontact extends StripeEntity_1<PaymentMethodBancontact>\n{\n\n public constructor(init?: Partial<PaymentMethodBancontact>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBancontact as unknown)[immerable] = true;\n\nexport class Address extends StripeEntity_1<Address>\n{\n public city: string|null;\n public country: string|null;\n public line1: string|null;\n public line2: string|null;\n public postalCode: string|null;\n public state: string|null;\n\n public constructor(init?: Partial<Address>) { super(init); (Object as any).assign(this, init); }\n}\n(Address as unknown)[immerable] = true;\n\nexport class PaymentMethodBillingDetails extends StripeEntity_1<PaymentMethodBillingDetails>\n{\n public address: Address|null;\n public email: string|null;\n public name: string|null;\n public phone: string|null;\n\n public constructor(init?: Partial<PaymentMethodBillingDetails>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBillingDetails as unknown)[immerable] = true;\n\nexport class PaymentMethodCardChecks extends StripeEntity_1<PaymentMethodCardChecks>\n{\n public addressLine1Check: string|null;\n public addressPostalCodeCheck: string|null;\n public cvcCheck: string|null;\n\n public constructor(init?: Partial<PaymentMethodCardChecks>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardChecks as unknown)[immerable] = true;\n\nexport class PaymentMethodCardNetworks extends StripeEntity_1<PaymentMethodCardNetworks>\n{\n public available: string[]|null;\n public preferred: string|null;\n\n public constructor(init?: Partial<PaymentMethodCardNetworks>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardNetworks as unknown)[immerable] = true;\n\nexport class PaymentMethodCardThreeDSecureUsage extends StripeEntity_1<PaymentMethodCardThreeDSecureUsage>\n{\n public supported: boolean|null;\n\n public constructor(init?: Partial<PaymentMethodCardThreeDSecureUsage>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardThreeDSecureUsage as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletAmexExpressCheckout extends StripeEntity_1<PaymentMethodCardWalletAmexExpressCheckout>\n{\n\n public constructor(init?: Partial<PaymentMethodCardWalletAmexExpressCheckout>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletAmexExpressCheckout as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletApplePay extends StripeEntity_1<PaymentMethodCardWalletApplePay>\n{\n\n public constructor(init?: Partial<PaymentMethodCardWalletApplePay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletApplePay as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletGooglePay extends StripeEntity_1<PaymentMethodCardWalletGooglePay>\n{\n\n public constructor(init?: Partial<PaymentMethodCardWalletGooglePay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletGooglePay as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletMasterpass extends StripeEntity_1<PaymentMethodCardWalletMasterpass>\n{\n public billingAddress: Address|null;\n public email: string|null;\n public name: string|null;\n public shippingAddress: Address|null;\n\n public constructor(init?: Partial<PaymentMethodCardWalletMasterpass>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletMasterpass as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletSamsungPay extends StripeEntity_1<PaymentMethodCardWalletSamsungPay>\n{\n\n public constructor(init?: Partial<PaymentMethodCardWalletSamsungPay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletSamsungPay as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletVisaCheckout extends StripeEntity_1<PaymentMethodCardWalletVisaCheckout>\n{\n public billingAddress: Address|null;\n public email: string|null;\n public name: string|null;\n public shippingAddress: Address|null;\n\n public constructor(init?: Partial<PaymentMethodCardWalletVisaCheckout>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletVisaCheckout as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWallet extends StripeEntity_1<PaymentMethodCardWallet>\n{\n public amexExpressCheckout: PaymentMethodCardWalletAmexExpressCheckout|null;\n public applePay: PaymentMethodCardWalletApplePay|null;\n public dynamicLast4: string|null;\n public googlePay: PaymentMethodCardWalletGooglePay|null;\n public masterpass: PaymentMethodCardWalletMasterpass|null;\n public samsungPay: PaymentMethodCardWalletSamsungPay|null;\n public type: string|null;\n public visaCheckout: PaymentMethodCardWalletVisaCheckout|null;\n\n public constructor(init?: Partial<PaymentMethodCardWallet>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWallet as unknown)[immerable] = true;\n\nexport class PaymentMethodCard extends StripeEntity_1<PaymentMethodCard>\n{\n public brand: string|null;\n public checks: PaymentMethodCardChecks|null;\n public country: string|null;\n public description: string|null;\n public expMonth: number|null;\n public expYear: number|null;\n public fingerprint: string|null;\n public funding: string|null;\n public iin: string|null;\n public issuer: string|null;\n public last4: string|null;\n public networks: PaymentMethodCardNetworks|null;\n public threeDSecureUsage: PaymentMethodCardThreeDSecureUsage|null;\n public wallet: PaymentMethodCardWallet|null;\n\n public constructor(init?: Partial<PaymentMethodCard>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCard as unknown)[immerable] = true;\n\nexport class PaymentMethodCardPresent extends StripeEntity_1<PaymentMethodCardPresent>\n{\n\n public constructor(init?: Partial<PaymentMethodCardPresent>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardPresent as unknown)[immerable] = true;\n\nexport class PaymentMethodEps extends StripeEntity_1<PaymentMethodEps>\n{\n public bank: string|null;\n\n public constructor(init?: Partial<PaymentMethodEps>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodEps as unknown)[immerable] = true;\n\nexport class PaymentMethodFpx extends StripeEntity_1<PaymentMethodFpx>\n{\n public accountHolderType: string|null;\n public bank: string|null;\n\n public constructor(init?: Partial<PaymentMethodFpx>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodFpx as unknown)[immerable] = true;\n\nexport class PaymentMethodGiropay extends StripeEntity_1<PaymentMethodGiropay>\n{\n\n public constructor(init?: Partial<PaymentMethodGiropay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodGiropay as unknown)[immerable] = true;\n\nexport class PaymentMethodGrabpay extends StripeEntity_1<PaymentMethodGrabpay>\n{\n\n public constructor(init?: Partial<PaymentMethodGrabpay>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodGrabpay as unknown)[immerable] = true;\n\nexport class PaymentMethodIdeal extends StripeEntity_1<PaymentMethodIdeal>\n{\n public bank: string|null;\n public bic: string|null;\n\n public constructor(init?: Partial<PaymentMethodIdeal>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodIdeal as unknown)[immerable] = true;\n\nexport class PaymentMethodInteracPresent extends StripeEntity_1<PaymentMethodInteracPresent>\n{\n\n public constructor(init?: Partial<PaymentMethodInteracPresent>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodInteracPresent as unknown)[immerable] = true;\n\nexport class PaymentMethodOxxo extends StripeEntity_1<PaymentMethodOxxo>\n{\n\n public constructor(init?: Partial<PaymentMethodOxxo>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodOxxo as unknown)[immerable] = true;\n\nexport class PaymentMethodP24 extends StripeEntity_1<PaymentMethodP24>\n{\n public bank: string|null;\n\n public constructor(init?: Partial<PaymentMethodP24>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodP24 as unknown)[immerable] = true;\n\nexport class PaymentMethodSepaDebitGeneratedFrom extends StripeEntity_1<PaymentMethodSepaDebitGeneratedFrom>\n{\n\n public constructor(init?: Partial<PaymentMethodSepaDebitGeneratedFrom>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSepaDebitGeneratedFrom as unknown)[immerable] = true;\n\nexport class PaymentMethodSepaDebit extends StripeEntity_1<PaymentMethodSepaDebit>\n{\n public bankCode: string|null;\n public branchCode: string|null;\n public country: string|null;\n public fingerprint: string|null;\n public generatedFrom: PaymentMethodSepaDebitGeneratedFrom|null;\n public last4: string|null;\n\n public constructor(init?: Partial<PaymentMethodSepaDebit>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSepaDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodSofort extends StripeEntity_1<PaymentMethodSofort>\n{\n public country: string|null;\n\n public constructor(init?: Partial<PaymentMethodSofort>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSofort as unknown)[immerable] = true;\n\nexport class PaymentMethod extends StripeEntity_1<PaymentMethod> implements IHasId, IHasMetadata, IHasObject\n{\n public id: string|null;\n public object: string|null;\n public afterpayClearpay: PaymentMethodAfterpayClearpay|null;\n public alipay: PaymentMethodAlipay|null;\n public auBecsDebit: PaymentMethodAuBecsDebit|null;\n public bacsDebit: PaymentMethodBacsDebit|null;\n public bancontact: PaymentMethodBancontact|null;\n public billingDetails: PaymentMethodBillingDetails|null;\n public card: PaymentMethodCard|null;\n public cardPresent: PaymentMethodCardPresent|null;\n public created: string|null;\n public eps: PaymentMethodEps|null;\n public fpx: PaymentMethodFpx|null;\n public giropay: PaymentMethodGiropay|null;\n public grabpay: PaymentMethodGrabpay|null;\n public ideal: PaymentMethodIdeal|null;\n public interacPresent: PaymentMethodInteracPresent|null;\n public livemode: boolean|null;\n public metadata: { [index:string]: string; }|null;\n public oxxo: PaymentMethodOxxo|null;\n public p24: PaymentMethodP24|null;\n public sepaDebit: PaymentMethodSepaDebit|null;\n public sofort: PaymentMethodSofort|null;\n public type: string|null;\n\n public constructor(init?: Partial<PaymentMethod>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethod as unknown)[immerable] = true;\n\nexport enum ItemType\n{\n ClassSessionDelete = 'ClassSessionDelete',\n AppointmentDelete = 'AppointmentDelete',\n Appointment = 'Appointment',\n ClassSession = 'ClassSession',\n StripeCommission = 'StripeCommission',\n OnlineAppointment = 'OnlineAppointment',\n OnlineClassSession = 'OnlineClassSession',\n VideoCall = 'VideoCall',\n ClickVideoCall = 'ClickVideoCall',\n AutomationAction = 'AutomationAction',\n FormSent = 'FormSent',\n ProntoReferral = 'ProntoReferral',\n SMS = 'SMS',\n AddressLookup = 'AddressLookup',\n ReferralPortalReferral = 'ReferralPortalReferral',\n PatientPortalReferral = 'PatientPortalReferral',\n ManualReferral = 'ManualReferral',\n APIReferral = 'APIReferral',\n ApiUsage = 'ApiUsage',\n SystemCredit = 'SystemCredit',\n}\n\nexport enum TrafficReportOrdering\n{\n All = 1,\n Appointments = 2,\n Classes = 3,\n}\n\nexport class OnlineClinicService implements IHasGuidId\n{\n public hidden: boolean|null;\n public networkServiceId: string|null;\n public networkId: string|null;\n public name: string|null;\n public description: string|null;\n public longDescription: string|null;\n public imageUrl: string|null;\n public discipline: string|null;\n public colour: string|null;\n public isOnline: boolean|null;\n public isClassService: boolean|null;\n public isCaseflowService: boolean|null;\n // @Ignore()\n public isCourse: boolean|null;\n\n public isMultiClass: boolean|null;\n public classTypeIds: number[]|null;\n public classTypeId: number|null;\n public excludeLocations: string[]|null;\n public excludePractitioners: string[]|null;\n public excludeDiscountCodes: string[]|null;\n public stockId: string|null;\n public excludeSessionIds: number[]|null;\n public excludeNormalSessionIds: number[]|null;\n public sortIndex: Object|null;\n public urlSlug: string|null;\n public canCancel: boolean|null;\n public isHidden: boolean|null;\n public businessId: number|null;\n public contractId: string|null;\n public productId: string|null;\n public productServiceId: string|null;\n public expiryDate: string|null;\n public accessCode: string|null;\n public cfBookingAction: string|null;\n // @Ignore()\n public hasAccessCode: boolean|null;\n\n // @Ignore()\n public accessCodeLength: number|null;\n\n // @Ignore()\n public isLocationBased: boolean|null;\n\n // @Ignore()\n public isDigitalTriage: boolean|null;\n\n // @Ignore()\n public serviceName: string|null;\n\n // @Ignore()\n public isPlaceholderService: boolean|null;\n\n public id: string|null;\n\n public constructor(init?: Partial<OnlineClinicService>) { (Object as any).assign(this, init); }\n}\n(OnlineClinicService as unknown)[immerable] = true;\n\nexport class OnlineServiceCategory implements IHasGuidId\n{\n public id: string|null;\n public parentId: string|null;\n public title: string|null;\n public urlSlug: string|null;\n public description: string|null;\n public longDescription: string|null;\n public imageUrl: string|null;\n public isOnline: boolean|null;\n public sortIndex: number|null;\n public orderedServices: string[]|null;\n public businessId: number|null;\n // @Ignore()\n public hasClasses: boolean|null;\n\n // @Ignore()\n public hasAppointments: boolean|null;\n\n // @Ignore()\n public rootSlug: string|null;\n\n public constructor(init?: Partial<OnlineServiceCategory>) { (Object as any).assign(this, init); }\n}\n(OnlineServiceCategory as unknown)[immerable] = true;\n\nexport enum OnlineSectionTypes\n{\n Header = 'Header',\n Search = 'Search',\n AppointmentSearch = 'AppointmentSearch',\n ClassSearch = 'ClassSearch',\n Categories = 'Categories',\n Services = 'Services',\n Offers = 'Offers',\n Packages = 'Packages',\n}\n\nexport class OnlineSection implements IHasId\n{\n public sortIndex: number|null;\n public type: OnlineSectionTypes|null;\n public params: { [index:string]: string; }|null;\n public mode: string|null;\n public id: number|null;\n\n public constructor(init?: Partial<OnlineSection>) { (Object as any).assign(this, init); }\n}\n(OnlineSection as unknown)[immerable] = true;\n\nexport class BookingClassResponse\n{\n public success: boolean|null;\n public isFull: boolean|null;\n public attendanceIds: number[]|null;\n public attendeeId: number|null;\n public backgroundJobId: string|null;\n\n public constructor(init?: Partial<BookingClassResponse>) { (Object as any).assign(this, init); }\n}\n(BookingClassResponse as unknown)[immerable] = true;\n\nexport class WaitingList implements IHasId\n{\n public id: number|null;\n public createdDate: string|null;\n public waitingListGlobalId: string|null;\n public customerId: number|null;\n public description: string|null;\n public nextAppointment: string|null;\n public expiryDate: string|null;\n public practitionerId: number|null;\n public practitionerGender: WaitListGender|null;\n public locationId: number|null;\n public timeOfDay: TimeOfDay|null;\n public listType: WaitingListType|null;\n public locationPreference: LocationType|null;\n public dayPreference: string|null;\n public stockId: number|null;\n public classTypeId: number|null;\n public classSessionId: number|null;\n public temporaryAppointmentId: number|null;\n public temporaryClassSessionId: number|null;\n public temporaryCourseId: number|null;\n public dateTimeBookingOffered: string|null;\n public urgency: WaitingListUrgency|null;\n public status: WaitingListStatus|null;\n public subStatus: WaitingListSubStatus|null;\n public notificationType: WaitingListNotificationType|null;\n public dateTimeOfferDeclined: string|null;\n public pauseUntilDateTime: string|null;\n public dateTimeNotResponded: string|null;\n public bookingType: WaitingListBookingType|null;\n public dateTimeBookingDone: string|null;\n public linkedToAppointmentId: number|null;\n public startDate: string|null;\n\n public constructor(init?: Partial<WaitingList>) { (Object as any).assign(this, init); }\n}\n(WaitingList as unknown)[immerable] = true;\n\nexport enum SentryApmAction\n{\n on = 'on',\n off = 'off',\n}\n\nexport enum AppointmentStatus\n{\n Booked = 0,\n Arrived = 1,\n Completed = 2,\n DNA = 3,\n Cancelled = 4,\n Temporary = 6,\n Provisional = 7,\n}\n\nexport class ClickInvoiceReqBase\n{\n public invoiceId: number|null;\n\n public constructor(init?: Partial<ClickInvoiceReqBase>) { (Object as any).assign(this, init); }\n}\n(ClickInvoiceReqBase as unknown)[immerable] = true;\n\nexport enum CommunicationMode\n{\n Email = 'Email',\n SMS = 'SMS',\n}\n\nexport enum ClassDateCreationMode\n{\n WeeklyRecurrence = 'WeeklyRecurrence',\n DateRange = 'DateRange',\n CustomDates = 'CustomDates',\n}\n\nexport enum ClashMode\n{\n UpdateOnlyIfNoClashes = 'UpdateOnlyIfNoClashes',\n UpdateNonClashing = 'UpdateNonClashing',\n UpdateAllAnyway = 'UpdateAllAnyway',\n NeverUpdate = 'NeverUpdate',\n CreateExcludingClashes = 'CreateExcludingClashes',\n}\n\nexport enum ClassBillingMode\n{\n Attendance = 'Attendance',\n BillNow = 'BillNow',\n NewPackage = 'NewPackage',\n ExistingPackage = 'ExistingPackage',\n NewSubscription = 'NewSubscription',\n Autopay = 'Autopay',\n}\n\nexport enum ClassPaymentMode\n{\n DoNotBill = 'DoNotBill',\n PayLater = 'PayLater',\n PayNowCash = 'PayNowCash',\n PayNowCard = 'PayNowCard',\n UsePrePayment = 'UsePrePayment',\n PayNowMerchant = 'PayNowMerchant',\n PayNowMerchantTerminal = 'PayNowMerchantTerminal',\n}\n\nexport enum SessionUpdateAppliesTo\n{\n ThisSessionOnly = 'ThisSessionOnly',\n SameTimeEachWeek = 'SameTimeEachWeek',\n Custom = 'Custom',\n}\n\nexport enum ClassEditType\n{\n Practitioner = 'Practitioner',\n Room = 'Room',\n EditSessionDate = 'EditSessionDate',\n EditSessionTime = 'EditSessionTime',\n Space = 'Space',\n}\n\nexport class ClassPackageResponse\n{\n public id: string|null;\n public name: string|null;\n public price: number|null;\n public classTypeId: number|null;\n public stockId: number|null;\n public validForDaysFromPurchase: number|null;\n public credits: number|null;\n public creditPackageStockExclusions: number[]|null;\n public creditPackageClassTypeExclusions: number[]|null;\n\n public constructor(init?: Partial<ClassPackageResponse>) { (Object as any).assign(this, init); }\n}\n(ClassPackageResponse as unknown)[immerable] = true;\n\nexport enum CourseBillingMode\n{\n FirstAttendance = 'FirstAttendance',\n BillNow = 'BillNow',\n NewPackage = 'NewPackage',\n ExistingPackage = 'ExistingPackage',\n NewSubscription = 'NewSubscription',\n}\n\nexport enum CourseEditAppliesTo\n{\n ThisSessionOnly = 'ThisSessionOnly',\n ThisAndAllSubsequentSessions = 'ThisAndAllSubsequentSessions',\n}\n\nexport enum DistanceType\n{\n StraightLine = 'StraightLine',\n FastestByRoad = 'FastestByRoad',\n ShortestByRoad = 'ShortestByRoad',\n}\n\nexport class CapturePointDto\n{\n public id: number|null;\n public serviceId: string|null;\n public subworkflowId: number|null;\n public workflowId: number|null;\n public outsideDateSlaReason: string|null;\n public dateOffered: string|null;\n public dateAccepted: string|null;\n public outsideDistanceSlaReason: string|null;\n public distanceOffered: number|null;\n public distanceAccepted: number|null;\n public bookingAuditId: string|null;\n public offerRejectedReason: string|null;\n public createdDate: string|null;\n public targetId: string|null;\n public networkManagementLocationId: string|null;\n public networkId: string|null;\n public subWorkflowName: string|null;\n public networkManagementBusinessId: string|null;\n public networkManagementBusinessName: string|null;\n public networkManagementLocationName: string|null;\n public clinicianId: string|null;\n public slaValid: boolean|null;\n public slaFailures: { [index:string]: string; }|null;\n public ignoreDistance: boolean|null;\n\n public constructor(init?: Partial<CapturePointDto>) { (Object as any).assign(this, init); }\n}\n(CapturePointDto as unknown)[immerable] = true;\n\nexport enum WorkflowContactType\n{\n Patient = 'Patient',\n Contact = 'Contact',\n GroupContact = 'GroupContact',\n NetworkLocation = 'NetworkLocation',\n NetworkClinician = 'NetworkClinician',\n Practitioner = 'Practitioner',\n Location = 'Location',\n Group = 'Group',\n}\n\nexport enum ContactOwner\n{\n Child = 'Child',\n Distributor = 'Distributor',\n}\n\nexport interface IWorkflowId\n{\n workflowId: number|null;\n}\n\nexport class Theme\n{\n public accent: string|null;\n public primary: string|null;\n public secondary: string|null;\n\n public constructor(init?: Partial<Theme>) { (Object as any).assign(this, init); }\n}\n(Theme as unknown)[immerable] = true;\n\nexport class ThemeResponse extends Theme\n{\n public themeId: number|null;\n\n public constructor(init?: Partial<ThemeResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(ThemeResponse as unknown)[immerable] = true;\n\nexport class KendoGridOptionsRequest implements IKendoGridOptionsRequest\n{\n public take: number|null;\n public skip: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<KendoGridOptionsRequest>) { (Object as any).assign(this, init); }\n}\n(KendoGridOptionsRequest as unknown)[immerable] = true;\n\nexport interface IKendoGridOptionsRequest\n{\n skip: number|null;\n sort: QueryField[]|null;\n take: number|null;\n}\n\nexport enum CommunicationType\n{\n Email = 'Email',\n Letter = 'Letter',\n SMS = 'SMS',\n}\n\nexport enum CustomerFlag\n{\n Green = 'Green',\n Amber = 'Amber',\n Red = 'Red',\n}\n\nexport class ProcessActionBehaviourDto\n{\n public id: string|null;\n public behaviourGuid: string|null;\n public order: number|null;\n public parameters: { [index:string]: string; }|null;\n public metadata: { [index:string]: string; }|null;\n public current: boolean|null;\n public parentActionID: string|null;\n\n public constructor(init?: Partial<ProcessActionBehaviourDto>) { (Object as any).assign(this, init); }\n}\n(ProcessActionBehaviourDto as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process/action\", \"POST\")\n// @Route(\"/caseflow/process/action/{Id}\", \"PUT\")\nexport class ProcessActionDto implements IReturn<ProcessActionDto>\n{\n public id: string|null;\n public name: string|null;\n public behaviours: ProcessActionBehaviourDto[]|null;\n public metadata: { [index:string]: string; }|null;\n public code: string|null;\n public path: string|null;\n public group: string|null;\n public historicDescription: string|null;\n public backColour: number|null;\n public foreColour: number|null;\n public textStyle: number|null;\n public allowCustomTitle: boolean|null;\n public nextActionIncrementType: number|null;\n public nextActionIncrementStartPoint: number|null;\n public nextActionHours: number|null;\n public nextActionDays: number|null;\n public nextActionFieldName: string|null;\n public reassignmentRequirementType: number|null;\n public reassignOwnerType: number|null;\n public newTeamCode: string|null;\n public description: string|null;\n public newUserID: string|null;\n public newStatusID: string|null;\n public supplementaryActionProcessID: string|null;\n public supplementaryActionType: number|null;\n public actionOrder: number|null;\n public appearInDiary: boolean|null;\n public isBillable: boolean|null;\n public userVisibility: number|null;\n public notesMandatory: boolean|null;\n public exitWorkflow: boolean|null;\n public createAudit: boolean|null;\n public current: boolean|null;\n public showFinalScreen: boolean|null;\n public parentStatusID: string|null;\n public restrictedToServiceCodes: string[]|null;\n public order: number|null;\n public serverSide: boolean|null;\n public fireOnOverdue: boolean|null;\n public overdueMaxRetries: number|null;\n public overdueRetriesExceededNextStatusId: string|null;\n public setOverdueDate: boolean|null;\n public overdueActionIncrementType: number|null;\n public overdueActionIncrementStartPoint: number|null;\n public overdueActionHours: number|null;\n public overdueActionDays: number|null;\n public overdueActionFieldName: string|null;\n public restrictedToTeams: string[]|null;\n\n public constructor(init?: Partial<ProcessActionDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProcessActionDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ProcessActionDto(); }\n}\n(ProcessActionDto as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process/status\", \"POST\")\n// @Route(\"/caseflow/process/status/{Id}\", \"PUT\")\nexport class ProcessStatusDto implements IReturn<ProcessStatusDto>\n{\n public id: string|null;\n public name: string|null;\n public actions: ProcessActionDto[]|null;\n public code: string|null;\n public instructions: string|null;\n public overdueInstructions: string|null;\n public alwaysVisibleToOwner: boolean|null;\n public hideGroupedActions: boolean|null;\n public nameForGroupAction: string|null;\n public textForeColour: number|null;\n public textBackColour: number|null;\n public textStyle: number|null;\n public queue: number|null;\n public stageID: string|null;\n public current: boolean|null;\n public metadata: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<ProcessStatusDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProcessStatusDto'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ProcessStatusDto(); }\n}\n(ProcessStatusDto as unknown)[immerable] = true;\n\nexport class ProcessStageDto\n{\n public id: string|null;\n public name: string|null;\n public statuses: ProcessStatusDto[]|null;\n public metadata: { [index:string]: string; }|null;\n public current: boolean|null;\n\n public constructor(init?: Partial<ProcessStageDto>) { (Object as any).assign(this, init); }\n}\n(ProcessStageDto as unknown)[immerable] = true;\n\nexport enum PortalBookingModes\n{\n NotReferred = 'NotReferred',\n ReferralNoBooking = 'ReferralNoBooking',\n ReferralWithOptionalBooking = 'ReferralWithOptionalBooking',\n ReferralWithMandatoryBooking = 'ReferralWithMandatoryBooking',\n}\n\nexport class ServiceNetworkMembershipDto\n{\n public id: string|null;\n public includeInResultsByDefault: boolean|null;\n public isPreferred: boolean|null;\n public name: string|null;\n public hideFromResults: boolean|null;\n public serviceId: string|null;\n public networkId: string|null;\n public contractId: string|null;\n public productId: string|null;\n public defaultProntoInitialAppointmentCharge: string|null;\n public defaultProntoFollowUpAppointmentCharge: string|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ServiceNetworkMembershipDto>) { (Object as any).assign(this, init); }\n}\n(ServiceNetworkMembershipDto as unknown)[immerable] = true;\n\nexport enum ProductServiceMode\n{\n Booking = 'Booking',\n Placeholder = 'Placeholder',\n DigitalTriage = 'DigitalTriage',\n}\n\nexport enum DateInterval\n{\n Years = 'Years',\n Months = 'Months',\n Weeks = 'Weeks',\n Days = 'Days',\n Hours = 'Hours',\n Minutes = 'Minutes',\n Seconds = 'Seconds',\n}\n\nexport enum DateIncrementType\n{\n Days = 'Days',\n WorkingDays_DeadlineStartOfWorkingHours = 'WorkingDays_DeadlineStartOfWorkingHours',\n Hours = 'Hours',\n WorkingHours = 'WorkingHours',\n None = 'None',\n ManualNonMandatory = 'ManualNonMandatory',\n Manual = 'Manual',\n WorkingDays_DeadlineCurrentTime = 'WorkingDays_DeadlineCurrentTime',\n}\n\nexport enum SlaRelativeTo\n{\n CurrentServiceMostRecentAppointmentDate = 'CurrentServiceMostRecentAppointmentDate',\n AppointmentOfferedDate = 'AppointmentOfferedDate',\n CurrentServiceFirstAppointmentDate = 'CurrentServiceFirstAppointmentDate',\n ReferralDate = 'ReferralDate',\n AnyServiceMostRecentAppointmentDate = 'AnyServiceMostRecentAppointmentDate',\n CurrentServiceMostRecentAppointmentEndDate = 'CurrentServiceMostRecentAppointmentEndDate',\n FirstSuccessfulContactDate = 'FirstSuccessfulContactDate',\n CurrentServiceMostRecentlyAddedAppointmentDate = 'CurrentServiceMostRecentlyAddedAppointmentDate',\n AnyServiceMostRecentAppointmentEndDate = 'AnyServiceMostRecentAppointmentEndDate',\n}\n\nexport class ServiceSlaDto\n{\n public id: string|null;\n public serviceId: string|null;\n public slaTypeId: string|null;\n public occursWithin: number|null;\n public unit: DateIncrementType|null;\n public relativeTo: SlaRelativeTo|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ServiceSlaDto>) { (Object as any).assign(this, init); }\n}\n(ServiceSlaDto as unknown)[immerable] = true;\n\nexport class ServiceType implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public name: string|null;\n public isCurrent: boolean|null;\n public clinicalAccessMode: AccessMode|null;\n public patientAccessMode: AccessMode|null;\n public usesScores: boolean|null;\n public usesGoals: boolean|null;\n public usesImages: boolean|null;\n public labelOverrides: { [index:string]: string; }|null;\n public listOverrides: { [index:string]: string; }|null;\n public configOverrides: { [index:string]: string; }|null;\n public workflowAccessMode: AccessMode|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<ServiceType>) { (Object as any).assign(this, init); }\n}\n(ServiceType as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services\", \"POST\")\n// @Route(\"/settings/caseflow/contracts/services/{Id}\", \"PUT\")\nexport class ProductServiceDto implements IReturn<ResponseBase<ProductServiceDto>>\n{\n public id: string|null;\n public basedOnServiceId: string|null;\n public contractId: string|null;\n public productId: string|null;\n public processId: string|null;\n public productServiceTypeId: string|null;\n public name: string|null;\n public displayName: string|null;\n public description: string|null;\n public isActive: boolean|null;\n public isLocationBased: boolean|null;\n public isPlaceHolderService: boolean|null;\n public hasFollowUps: boolean|null;\n public caseflowProductServiceTypes: string[]|null;\n public portalBookingMode: PortalBookingModes|null;\n public sessionTypeRestriction: string[]|null;\n public portalReferralDefaultActionId: string|null;\n public portalReferralWithBookingDefaultActionId: string|null;\n public manualReferralDefaultActionId: string|null;\n public sla_AppointmentOffer_Value: number|null;\n public sla_AppointmentOffer_Units: string|null;\n public sla_AppointmentOffer_RelativeTo: string|null;\n public sla_AppointmentDistanceMiles: number|null;\n public reports: { [index:string]: string; }|null;\n public canBillCancellation: boolean|null;\n public cancellationDays: number|null;\n public maxCancellationsBeforeDischarge: number|null;\n public canBillDna: boolean|null;\n public dnaDays: number|null;\n public maxDnasBeforeDischarge: number|null;\n public cancellationAndDnaLimitBeforeAction: number|null;\n public isCombinedDnaCancellationLimit: boolean|null;\n public requireAuthorisation: boolean|null;\n public defaultAuthorisation: number|null;\n public requireInitialReportAfter1stAppointment: boolean|null;\n public initialAuthorisation: number|null;\n public subsequentAuthorisation: number|null;\n public requireReasonIfNotUsingFirstAppointmentOffered: boolean|null;\n public requireReasonIfNotUsingPreferredNetwork: boolean|null;\n public shouldCreateClinicalRecord: boolean|null;\n public networks: ServiceNetworkMembershipDto[]|null;\n public code: string|null;\n public mode: ProductServiceMode|null;\n public firstAppointmentService: string|null;\n public followUpAppointmentService: string|null;\n public chargeTypeFirstAppointment: string|null;\n public chargeTypeFollowUpAppointment: string|null;\n public chargeTypeInitialCancellation: string|null;\n public chargeTypeInitialDna: string|null;\n public chargeTypeFollowupCancellation: string|null;\n public chargeTypeFollowupDna: string|null;\n public internalAppointmentTimeBuffer: number|null;\n public authorisationsExpire: boolean|null;\n public authorisationExpirationDays: number|null;\n public subWorkflowReopenExpiration: number|null;\n public subWorkflowReopenExpirationFormat: DateInterval|null;\n public serviceSlas: ServiceSlaDto[]|null;\n public serviceTypeId: number|null;\n public serviceType: ServiceType|null;\n public externalIdentifier: string|null;\n public canReReferClinic: boolean|null;\n public overrideGroupCancelDNASettings: boolean|null;\n public authorisationBillGroupDNA: boolean|null;\n public authorisationBillGroupCancellation: boolean|null;\n public authorisationIncludeInNewReferrals: boolean|null;\n public skipAuthCreationOnWorkflowCreation: boolean|null;\n public overrideGroupAuthUsageSettings: boolean|null;\n public authorisationCancellationAffectsAuthCount: boolean|null;\n public authorisationCancellationAffectsAuthCountDays: number|null;\n public authorisationCancellationAlwaysAffectsAuthCount: boolean|null;\n public authorisationDnaAffectsAuthCount: boolean|null;\n public patientPortalReferralWithoutBookingDefaultActionId: string|null;\n public patientPortalReferralWithBookingDefaultActionId: string|null;\n public digitalTriageProviderId: string|null;\n public digitalTriageReportTemplateKey: string|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ProductServiceDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProductServiceDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProductServiceDto>(); }\n}\n(ProductServiceDto as unknown)[immerable] = true;\n\nexport class SubWorkflowDto\n{\n public id: number|null;\n public teamId: string|null;\n public userId: string|null;\n public type: string|null;\n public nextActionDate: string|null;\n public deleted: boolean|null;\n public processId: string|null;\n public currentStatusId: string|null;\n public name: string|null;\n public creationDate: string|null;\n public masterWorkflowId: number|null;\n public serviceId: number|null;\n public clinicPractitionerId: number|null;\n public clinicId: number|null;\n public parentSubWorkflowId: number|null;\n public closed: boolean|null;\n public closureReason: string|null;\n public closedDate: string|null;\n public productServiceId: string|null;\n public productService: ProductServiceDto|null;\n public firstContactDate: string|null;\n public firstAttemptedContactDate: string|null;\n public currentContactAttempts: number|null;\n public firstOfferedDate: string|null;\n public restrictServices: boolean|null;\n public lastActionDate: string|null;\n public lastAutoActionDate: string|null;\n public overdueActionRetryAttempts: number|null;\n public authParentSubWorkflowId: number|null;\n public overdueDate: string|null;\n public data: { [index:string]: Object; }|null;\n public allowedProductServiceTypes: string[]|null;\n public clientPortalStatusId: string|null;\n public isClientPortalVisible: boolean|null;\n\n public constructor(init?: Partial<SubWorkflowDto>) { (Object as any).assign(this, init); }\n}\n(SubWorkflowDto as unknown)[immerable] = true;\n\nexport enum WorkflowAuditType\n{\n PhoneCall = 'PhoneCall',\n Email = 'Email',\n Fax = 'Fax',\n Letter = 'Letter',\n AppointmentNotification = 'AppointmentNotification',\n Report = 'Report',\n Note = 'Note',\n Escalation = 'Escalation',\n Reassignment = 'Reassignment',\n Closure = 'Closure',\n ManualEdit = 'ManualEdit',\n Open = 'Open',\n OnSiteVisit = 'OnSiteVisit',\n CustomWithOwnIHasImageInterface = 'CustomWithOwnIHasImageInterface',\n Other = 'Other',\n Unescalate = 'Unescalate',\n Info = 'Info',\n FailedContactAttempt = 'FailedContactAttempt',\n SuccessfulContactAttempt = 'SuccessfulContactAttempt',\n ServiceAccess = 'ServiceAccess',\n ManualNotes = 'ManualNotes',\n Invoice = 'Invoice',\n}\n\nexport class CapturePointPrice\n{\n public id: string|null;\n public name: string|null;\n public chargeExVat: number|null;\n public chargeExVatOld: number|null;\n public vat: number|null;\n public vatOld: number|null;\n public chargeEditReason: string|null;\n public chargeEditReasonFreeText: string|null;\n public chargeEditDateTime: string|null;\n\n public constructor(init?: Partial<CapturePointPrice>) { (Object as any).assign(this, init); }\n}\n(CapturePointPrice as unknown)[immerable] = true;\n\nexport class CaseflowBillingItemDto\n{\n public id: number|null;\n public accountId: number|null;\n public appointmentId: number|null;\n public customerId: number|null;\n public description: string|null;\n public date: string|null;\n public stockId: number|null;\n public price: number|null;\n public total: number|null;\n public totalExVat: number|null;\n public totalVat: number|null;\n public vatRate: number|null;\n public ledgerCode: string|null;\n public locationId: number|null;\n public quantity: number|null;\n public category: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public invoiceId: number|null;\n public batchId: string|null;\n\n public constructor(init?: Partial<CaseflowBillingItemDto>) { (Object as any).assign(this, init); }\n}\n(CaseflowBillingItemDto as unknown)[immerable] = true;\n\nexport class SubWorkflow implements IHasId\n{\n public id: number|null;\n public type: string|null;\n public nextActionDate: string|null;\n public deleted: boolean|null;\n public processId: string|null;\n public currentStatusId: string|null;\n public closureReason: string|null;\n public closed: boolean|null;\n public currentContactAttempts: number|null;\n public name: string|null;\n public creationDate: string|null;\n public intermediaryLocationId: number|null;\n public clinicId: number|null;\n public teamId: string|null;\n public userId: string|null;\n public masterWorkflowId: number|null;\n public serviceId: number|null;\n public clinicPractitionerId: number|null;\n public linkedIncomingInvoiceId: number|null;\n public parentSubWorkflowId: number|null;\n public prescription: string|null;\n public firstOfferedDate: string|null;\n public paLtoF2FReason: string|null;\n public cancellationReason: string|null;\n public inappropriateReason: string|null;\n public closedDate: string|null;\n public prontoAppointmentsSynced: boolean|null;\n public firstContactDate: string|null;\n public productServiceId: string|null;\n public firstAppointmentDate: string|null;\n public firstAttemptedContactDate: string|null;\n public restrictServices: boolean|null;\n public lastActionDate: string|null;\n public lastAutoActionDate: string|null;\n public overdueActionRetryAttempts: number|null;\n public authParentSubWorkflowId: number|null;\n public overdueDate: string|null;\n public data: { [index:string]: Object; }|null;\n public allowedProductServiceTypes: string[]|null;\n public clientPortalStatusId: string|null;\n public isClientPortalVisible: boolean|null;\n\n public constructor(init?: Partial<SubWorkflow>) { (Object as any).assign(this, init); }\n}\n(SubWorkflow as unknown)[immerable] = true;\n\nexport class TeamUserDto\n{\n public userId: string|null;\n public name: string|null;\n public fullName: string|null;\n public teamId: string|null;\n\n public constructor(init?: Partial<TeamUserDto>) { (Object as any).assign(this, init); }\n}\n(TeamUserDto as unknown)[immerable] = true;\n\nexport enum PortalType\n{\n ClientPortal = 'ClientPortal',\n ReferralPortal = 'ReferralPortal',\n}\n\nexport class PortalStatus implements IHasGlobalGuid, IHasGuidId\n{\n public id: string|null;\n public name: string|null;\n public colour: string|null;\n public type: PortalType|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<PortalStatus>) { (Object as any).assign(this, init); }\n}\n(PortalStatus as unknown)[immerable] = true;\n\nexport interface IHasGlobalGuid\n{\n globalGuid: string|null;\n}\n\nexport enum ImportOperation\n{\n DoNotImport = 'DoNotImport',\n Import = 'Import',\n ImportWithOverride = 'ImportWithOverride',\n ImportWithPseudonymise = 'ImportWithPseudonymise',\n}\n\nexport enum ExportOperation\n{\n DoNotExport = 'DoNotExport',\n Export = 'Export',\n ExportToOverride = 'ExportToOverride',\n}\n\nexport class OperationConfig\n{\n public import: ImportOperation|null;\n public export: ExportOperation|null;\n public overridePath: string|null;\n\n public constructor(init?: Partial<OperationConfig>) { (Object as any).assign(this, init); }\n}\n(OperationConfig as unknown)[immerable] = true;\n\nexport class EnvironmentConfig\n{\n public locations: OperationConfig|null;\n public charges: OperationConfig|null;\n public groups: OperationConfig|null;\n public practitioners: OperationConfig|null;\n public config: OperationConfig|null;\n public processes: OperationConfig|null;\n public templates: OperationConfig|null;\n public forms: OperationConfig|null;\n public reports: OperationConfig|null;\n public products: OperationConfig|null;\n public teams: OperationConfig|null;\n public users: OperationConfig|null;\n public lookups: OperationConfig|null;\n public dictionary: OperationConfig|null;\n public permissions: OperationConfig|null;\n public dynamicLabels: OperationConfig|null;\n public scoresAndGoals: OperationConfig|null;\n public serviceType: OperationConfig|null;\n public contracts: OperationConfig|null;\n public services: OperationConfig|null;\n public productServiceReports: OperationConfig|null;\n public networks: OperationConfig|null;\n public nwm: OperationConfig|null;\n public wfSearch: OperationConfig|null;\n public customAttributes: OperationConfig|null;\n public files: OperationConfig|null;\n public roles: OperationConfig|null;\n public chargeTypes: OperationConfig|null;\n public productServiceTypes: OperationConfig|null;\n public portalStatuses: OperationConfig|null;\n\n public constructor(init?: Partial<EnvironmentConfig>) { (Object as any).assign(this, init); }\n}\n(EnvironmentConfig as unknown)[immerable] = true;\n\nexport enum ImportExportStatus\n{\n Ready = 'Ready',\n ImportError = 'ImportError',\n ExportError = 'ExportError',\n ImportInProgress = 'ImportInProgress',\n ExportInProgress = 'ExportInProgress',\n}\n\nexport class Environment implements IHasGuidId\n{\n public id: string|null;\n public name: string|null;\n public url: string|null;\n public commitHash: string|null;\n public branch: string|null;\n public apiKey: string|null;\n public isSoftDeleted: boolean|null;\n public isCurrentEnvironment: boolean|null;\n public isPrimaryConfigEnvironment: boolean|null;\n public isProduction: boolean|null;\n public allowHotfixBranches: boolean|null;\n public hotfixEnabled: boolean|null;\n public config: EnvironmentConfig|null;\n public importExportStatus: ImportExportStatus|null;\n public sortIndex: number|null;\n\n public constructor(init?: Partial<Environment>) { (Object as any).assign(this, init); }\n}\n(Environment as unknown)[immerable] = true;\n\nexport class ReportTemplateItem\n{\n public id: string|null;\n public body: string|null;\n public name: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<ReportTemplateItem>) { (Object as any).assign(this, init); }\n}\n(ReportTemplateItem as unknown)[immerable] = true;\n\nexport class NestedLookup implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n public alternates: string[]|null;\n public groupId: number|null;\n public globalId: string|null;\n public syncToPronto: boolean|null;\n public lastSyncDate: string|null;\n public serviceTypeId: number|null;\n // @Ignore()\n public serviceTypeGuid: string|null;\n\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<NestedLookup>) { (Object as any).assign(this, init); }\n}\n(NestedLookup as unknown)[immerable] = true;\n\nexport class ReserveAppointmentRequest extends AppointmentSearchResult\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<ReserveAppointmentRequest>) { super(init); (Object as any).assign(this, init); }\n}\n(ReserveAppointmentRequest as unknown)[immerable] = true;\n\nexport enum ReferralPortalActionType\n{\n Approve = 'Approve',\n Query = 'Query',\n Reject = 'Reject',\n}\n\nexport enum ReferralSearchType\n{\n Ignore = 'Ignore',\n ReportApprovals = 'ReportApprovals',\n ActionsRequired = 'ActionsRequired',\n AuthorisationsNeeded = 'AuthorisationsNeeded',\n}\n\nexport enum ReferralPortalAuditType\n{\n Misc = 'Misc',\n Creation = 'Creation',\n AppointmentAdded = 'AppointmentAdded',\n AppointmentArrived = 'AppointmentArrived',\n AppointmentCancelled = 'AppointmentCancelled',\n AppointmentDna = 'AppointmentDna',\n AppointmentRescheduled = 'AppointmentRescheduled',\n AppointmentCompleted = 'AppointmentCompleted',\n AppointmentDeleted = 'AppointmentDeleted',\n AppointmentProviderChanged = 'AppointmentProviderChanged',\n AuthorisationRequested = 'AuthorisationRequested',\n AuthorisationApproved = 'AuthorisationApproved',\n AuthorisationDeclined = 'AuthorisationDeclined',\n AuthorisationQueried = 'AuthorisationQueried',\n ReportAdded = 'ReportAdded',\n ReportAccepted = 'ReportAccepted',\n ReportRejected = 'ReportRejected',\n ReportQueried = 'ReportQueried',\n ReportRevoked = 'ReportRevoked',\n FileAdded = 'FileAdded',\n OwnerChanged = 'OwnerChanged',\n StatusUpdated = 'StatusUpdated',\n InvoiceAdded = 'InvoiceAdded',\n ReportUpdated = 'ReportUpdated',\n FileRevoked = 'FileRevoked',\n}\n\nexport enum EReferralPortalAppointmentAggregate\n{\n NONE = 'NONE',\n DATE = 'DATE',\n}\n\nexport enum ReferralCommunicationType\n{\n None = 'None',\n SMS = 'SMS',\n Email = 'Email',\n Both = 'Both',\n}\n\nexport enum ReferralPortalUserType\n{\n ReferralUser = 'ReferralUser',\n ReferralManager = 'ReferralManager',\n ReferralAdmin = 'ReferralAdmin',\n BluezincSystem = 'BluezincSystem',\n}\n\nexport class Referral\n{\n public id: number|null;\n public clientGuid: string|null;\n public createdById: number|null;\n public ownerId: number|null;\n public templateId: string|null;\n public createdDate: string|null;\n public lastUpdated: string|null;\n public reportDefinitionId: number|null;\n public status: string|null;\n public isClosed: boolean|null;\n public deleted: boolean|null;\n public reportApprovalRequired: boolean|null;\n public authorisationRequired: boolean|null;\n public hasMessages: boolean|null;\n // @Ignore()\n public needsAction: boolean|null;\n\n public numberOfSessionsRequested: number|null;\n public dataJson: { [index:string]: string; }|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public dateOfBirth: string|null;\n public email: string|null;\n public phone: string|null;\n // @Ignore()\n public mobileTelephone: string|null;\n\n // @Ignore()\n public workTelephone: string|null;\n\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postcode: string|null;\n public reference: string|null;\n public bodySite: string|null;\n public referralData: string|null;\n public firstOfferedDate: string|null;\n // @Ignore()\n public name: string|null;\n\n // @Ignore()\n public jsDateOfBirth: string|null;\n\n // @Ignore()\n public jsCreatedDate: string|null;\n\n public constructor(init?: Partial<Referral>) { (Object as any).assign(this, init); }\n}\n(Referral as unknown)[immerable] = true;\n\nexport class ReferralRequestDTO extends Referral\n{\n public fromCaseflow: boolean|null;\n public appointmentId: number|null;\n public tempAttachmentFolderId: string|null;\n public communicationType: ReferralCommunicationType|null;\n public productServiceId: string|null;\n public contractId: string|null;\n public offerRejectedReason: string|null;\n\n public constructor(init?: Partial<ReferralRequestDTO>) { super(init); (Object as any).assign(this, init); }\n}\n(ReferralRequestDTO as unknown)[immerable] = true;\n\nexport enum MessageType\n{\n Approval = 'Approval',\n Query = 'Query',\n}\n\nexport class ARpDownloadRequest\n{\n public documentListingId: string|null;\n\n public constructor(init?: Partial<ARpDownloadRequest>) { (Object as any).assign(this, init); }\n}\n\nexport enum MessageType\n{\n AppointmentRescheduled = 'AppointmentRescheduled',\n AppointmentBooked = 'AppointmentBooked',\n AppointmentCancelled = 'AppointmentCancelled',\n AppointmentDNAed = 'AppointmentDNAed',\n AppointmentCompleted = 'AppointmentCompleted',\n AppointmentStatusUnknown = 'AppointmentStatusUnknown',\n AppointmentLengthChange = 'AppointmentLengthChange',\n AppointmentsSynced = 'AppointmentsSynced',\n NotAbleToSyncAppointments = 'NotAbleToSyncAppointments',\n ReportSubmitted = 'ReportSubmitted',\n Message = 'Message',\n ReportRejected = 'ReportRejected',\n AuthorisationRejected = 'AuthorisationRejected',\n ReportApproved = 'ReportApproved',\n InvoiceSubmitted = 'InvoiceSubmitted',\n TemplateChange = 'TemplateChange',\n AppointmentDeleted = 'AppointmentDeleted',\n ReferralRejected = 'ReferralRejected',\n ReferralAccepted = 'ReferralAccepted',\n BookingAuditSave = 'BookingAuditSave',\n BookingAuditDelete = 'BookingAuditDelete',\n}\n\nexport enum SearchComplianceStatus\n{\n All = 'All',\n Compliant = 'Compliant',\n NonCompliant = 'NonCompliant',\n}\n\nexport enum SearchProntoStatus\n{\n All = 'All',\n Internal = 'Internal',\n OnPronto = 'OnPronto',\n NotOnPronto = 'NotOnPronto',\n ColdHandover = 'ColdHandover',\n}\n\nexport class ExternalReferencesDto\n{\n public externalRef: string|null;\n public externalRef2: string|null;\n public externalRef3: string|null;\n public externalRef4: string|null;\n public externalNotes: string|null;\n\n public constructor(init?: Partial<ExternalReferencesDto>) { (Object as any).assign(this, init); }\n}\n(ExternalReferencesDto as unknown)[immerable] = true;\n\nexport class NetworkChargeDto extends ExternalReferencesDto\n{\n public id: string|null;\n public networkId: string|null;\n public prontoServiceId: string|null;\n public chargeTypeId: string|null;\n public networkChargeTypeId: string|null;\n public name: string|null;\n public defaultChargeExVAT: number|null;\n public defaultChargeVATRate: number|null;\n public ledgerCode: string|null;\n public networkCancellationChargeId: string|null;\n public networkDNAChargeId: string|null;\n\n public constructor(init?: Partial<NetworkChargeDto>) { super(init); (Object as any).assign(this, init); }\n}\n(NetworkChargeDto as unknown)[immerable] = true;\n\nexport enum ProntoStatus\n{\n Internal = 'Internal',\n OnPronto = 'OnPronto',\n NotOnPronto = 'NotOnPronto',\n ColdHandover = 'ColdHandover',\n}\n\nexport enum LocationStatus\n{\n Live = 'Live',\n Suspended = 'Suspended',\n Cancelled = 'Cancelled',\n}\n\nexport enum LocationProntoStatus\n{\n OnPronto = 'OnPronto',\n NoBookings = 'NoBookings',\n Internal = 'Internal',\n OnProntoNoBookings = 'OnProntoNoBookings',\n ColdHandover = 'ColdHandover',\n}\n\nexport class NetworkLocationMemberDto\n{\n public id: string|null;\n public networkId: string|null;\n public name: string|null;\n public locationId: string|null;\n public complianceRequiresDataProtection: boolean|null;\n public complianceRequiresInsurance: boolean|null;\n public complianceRequiresBankDetails: boolean|null;\n public complianceRequiresContract: boolean|null;\n\n public constructor(init?: Partial<NetworkLocationMemberDto>) { (Object as any).assign(this, init); }\n}\n(NetworkLocationMemberDto as unknown)[immerable] = true;\n\nexport class NetworkLocationChargeDto extends ExternalReferencesDto\n{\n public id: string|null;\n public networkId: string|null;\n public networkChargeId: string|null;\n public name: string|null;\n public chargeExVAT: number|null;\n public chargeVATRate: number|null;\n public chargeTypeId: string|null;\n public networkLocationId: string|null;\n\n public constructor(init?: Partial<NetworkLocationChargeDto>) { super(init); (Object as any).assign(this, init); }\n}\n(NetworkLocationChargeDto as unknown)[immerable] = true;\n\nexport class ProfessionalMembershipDto extends ExternalReferencesDto\n{\n public id: string|null;\n public clinicianId: string|null;\n public organisation: string|null;\n public membershipNumber: string|null;\n public expiryDate: string|null;\n\n public constructor(init?: Partial<ProfessionalMembershipDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ProfessionalMembershipDto as unknown)[immerable] = true;\n\nexport enum ComplianceType\n{\n Contract = 'Contract',\n Insurance = 'Insurance',\n DataProtection = 'DataProtection',\n FinancialCheck = 'FinancialCheck',\n Bank = 'Bank',\n}\n\nexport enum NetworkChargeTypeCategory\n{\n Appointment = 'Appointment',\n Cancellation = 'Cancellation',\n DNA = 'DNA',\n}\n\nexport class NM_NetworkChargeTypes implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public name: string|null;\n public category: NetworkChargeTypeCategory|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<NM_NetworkChargeTypes>) { (Object as any).assign(this, init); }\n}\n(NM_NetworkChargeTypes as unknown)[immerable] = true;\n\nexport enum BusinessStatus\n{\n Live = 'Live',\n Suspended = 'Suspended',\n Cancelled = 'Cancelled',\n Rejected = 'Rejected',\n ApplyingToJoin = 'ApplyingToJoin',\n}\n\nexport class BusinessDetailsDto\n{\n public id: string|null;\n public name: string|null;\n public individualFlag: boolean|null;\n public status: BusinessStatus|null;\n public prontoStatus: ProntoStatus|null;\n public prontoClinicId: string|null;\n public primaryContactId: string|null;\n public financialContactId: string|null;\n public isAvailableOnline: boolean|null;\n public publicDisplayName: string|null;\n public additionalData: string|null;\n\n public constructor(init?: Partial<BusinessDetailsDto>) { (Object as any).assign(this, init); }\n}\n(BusinessDetailsDto as unknown)[immerable] = true;\n\nexport class AddressDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public latLong: string|null;\n\n public constructor(init?: Partial<AddressDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AddressDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AddressDto as unknown)[immerable] = true;\n\nexport class NetworkContactDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public name: string|null;\n public addressId: string|null;\n public phoneNumber: string|null;\n public mobilePhone: string|null;\n public emailAddress: string|null;\n public webSiteUrl: string|null;\n public address: AddressDto|null;\n public accountingReference: string|null;\n\n public constructor(init?: Partial<NetworkContactDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkContactDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkContactDto as unknown)[immerable] = true;\n\nexport class ContactDetailsDto\n{\n public primaryContact: NetworkContactDto|null;\n public financialContact: NetworkContactDto|null;\n\n public constructor(init?: Partial<ContactDetailsDto>) { (Object as any).assign(this, init); }\n}\n(ContactDetailsDto as unknown)[immerable] = true;\n\nexport class IncomingBillingItemDto\n{\n public id: number|null;\n public date: string|null;\n public transferred: string|null;\n public paid: boolean|null;\n public totalExVAT: number|null;\n public quantity: number|null;\n public itemPrice: number|null;\n public vatRate: number|null;\n public totalVAT: number|null;\n public total: number|null;\n public ledgerCode: string|null;\n public description: string|null;\n public category: string|null;\n public locationId: number|null;\n public serviceProvIderLocationId: number|null;\n public appointmentId: number|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public stockId: number|null;\n public invoiceId: number|null;\n public generatedBillingItemId: number|null;\n public chargeTypeId: string|null;\n public parentId: number|null;\n public exportId: number|null;\n\n public constructor(init?: Partial<IncomingBillingItemDto>) { (Object as any).assign(this, init); }\n}\n(IncomingBillingItemDto as unknown)[immerable] = true;\n\nexport class CaseflowBillingItemDtoWithIncomingBillingItemId extends CaseflowBillingItemDto\n{\n public incomingBillingItemId: number|null;\n\n public constructor(init?: Partial<CaseflowBillingItemDtoWithIncomingBillingItemId>) { super(init); (Object as any).assign(this, init); }\n}\n(CaseflowBillingItemDtoWithIncomingBillingItemId as unknown)[immerable] = true;\n\nexport enum ContractOrigin\n{\n Inherited = 'Inherited',\n Clone = 'Clone',\n Standalone = 'Standalone',\n}\n\nexport class BaseContractDto<T>\n{\n public id: string|null;\n public validFrom: string|null;\n public validTo: string|null;\n public name: string|null;\n public description: string|null;\n public notes: string|null;\n public isActive: boolean|null;\n public groupId: number|null;\n public contractOwnerId: number|null;\n public products: T[]|null;\n public consentProfile: string|null;\n public meta: { [index:string]: Object; }|null;\n public purchaseOrderNumber: string|null;\n public purchaseOrderNumberMandatory: boolean|null;\n public origin: ContractOrigin|null;\n public distanceType: DistanceType|null;\n\n public constructor(init?: Partial<BaseContractDto<T>>) { (Object as any).assign(this, init); }\n}\n\nexport enum NotificationType\n{\n Patient = 'Patient',\n Admin = 'Admin',\n Financial = 'Financial',\n Clinical = 'Clinical',\n Network = 'Network',\n Group = 'Group',\n ClinicalAdmin = 'ClinicalAdmin',\n WorkflowOwner = 'WorkflowOwner',\n SubworkflowUser = 'SubworkflowUser',\n NetworkClinician = 'NetworkClinician',\n Custom = 'Custom',\n}\n\nexport enum RecipientGroupType\n{\n Child = 'Child',\n Distributor = 'Distributor',\n}\n\nexport class ProductNotificationConfigurationNetworkDto\n{\n public id: string|null;\n public notificationId: string|null;\n public networkId: string|null;\n public templatePath: string|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ProductNotificationConfigurationNetworkDto>) { (Object as any).assign(this, init); }\n}\n(ProductNotificationConfigurationNetworkDto as unknown)[immerable] = true;\n\nexport enum SendFromType\n{\n SystemDefault = 'SystemDefault',\n LoggedInUser = 'LoggedInUser',\n GroupInvoicingAddress = 'GroupInvoicingAddress',\n}\n\nexport class ProductNotificationConfigurationDto\n{\n public id: string|null;\n public productId: string|null;\n public contractId: string|null;\n public templatePath: string|null;\n public subject: string|null;\n public recipient: NotificationType|null;\n public recipientTypeId: string|null;\n public recipientTypeName: string|null;\n public type: CommunicationType|null;\n public recipientGroupType: RecipientGroupType|null;\n public event: string|null;\n public previewBeforeSending: boolean|null;\n public networkOverrides: ProductNotificationConfigurationNetworkDto[]|null;\n public sendFrom: SendFromType|null;\n public modified: boolean|null;\n public recipientDisplayName: string|null;\n\n public constructor(init?: Partial<ProductNotificationConfigurationDto>) { (Object as any).assign(this, init); }\n}\n(ProductNotificationConfigurationDto as unknown)[immerable] = true;\n\nexport class ProductFormConfigurationDto\n{\n public id: string|null;\n public productId: string|null;\n public contractId: string|null;\n public templateId: string|null;\n public type: CommunicationType|null;\n public event: string|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ProductFormConfigurationDto>) { (Object as any).assign(this, init); }\n}\n(ProductFormConfigurationDto as unknown)[immerable] = true;\n\nexport class ChargeTypeStockDto\n{\n public id: string|null;\n public stockOnlineGuid: string|null;\n public chargeTypeId: string|null;\n public productId: string|null;\n public contractId: string|null;\n public overridePriceExVat: number|null;\n public limit: number|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ChargeTypeStockDto>) { (Object as any).assign(this, init); }\n}\n(ChargeTypeStockDto as unknown)[immerable] = true;\n\nexport enum NoConsentOption\n{\n Discharge = 'Discharge',\n AlternativeReports = 'AlternativeReports',\n RestrictServices = 'RestrictServices',\n}\n\n// @Route(\"/settings/caseflow/contracts/products\", \"POST\")\n// @Route(\"/settings/caseflow/contracts/products/{Id}\", \"PUT\")\nexport class ProductDto implements IReturn<ResponseBase<ProductDto>>\n{\n public id: string|null;\n public contractId: string|null;\n public basedOnProductId: string|null;\n public name: string|null;\n public displayName: string|null;\n public description: string|null;\n public caseflowServiceId: number|null;\n public isActive: boolean|null;\n public relatesToAPatient: boolean|null;\n public canBookAppointmentInPortal: boolean|null;\n public isDisplayedInClientPortal: boolean|null;\n public processId: string|null;\n public firstActionId: string|null;\n public services: ProductServiceDto[]|null;\n public sla_FirstContact_Value: number|null;\n public sla_FirstContact_Units: string|null;\n public sla_FirstContact_RelativeTo: string|null;\n public minRequiredContactAttempts: number|null;\n public minRequiredContactAttemptsWithinDays: number|null;\n public requiresJointAgreement: boolean|null;\n public firstServiceId: string|null;\n public referralFormTemplateId: string|null;\n public ppReferralFormTemplateId: string|null;\n public notifications: ProductNotificationConfigurationDto[]|null;\n public forms: ProductFormConfigurationDto[]|null;\n public chargeTypeStock: ChargeTypeStockDto[]|null;\n public adminFallbackEmailAddress: string|null;\n public clinicalFallbackEmailAddress: string|null;\n public financialFallbackEmailAddress: string|null;\n public networkFallbackEmailAddress: string|null;\n public workflowOwnerFallbackEmailAddress: string|null;\n public subWorkflowUserFallbackEmailAddress: string|null;\n public networkClinicianFallbackEmailAddress: string|null;\n public noConsentRestrictedToServices: string[]|null;\n public noReportSharingConsentType: NoConsentOption|null;\n public notes: string|null;\n public type: string|null;\n public ageCategory: number|null;\n public serviceTypeIds: number[]|null;\n public allowCustomPricing: boolean|null;\n public modified: boolean|null;\n\n public constructor(init?: Partial<ProductDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProductDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProductDto>(); }\n}\n(ProductDto as unknown)[immerable] = true;\n\nexport class ContractDto extends BaseContractDto<ProductDto>\n{\n\n public constructor(init?: Partial<ContractDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ContractDto as unknown)[immerable] = true;\n\nexport class ChargeTypeDto\n{\n public id: string|null;\n public type: string|null;\n public stockType: string|null;\n public stockReference: string|null;\n public stockDescription: string|null;\n public stockPrice: number|null;\n public stockVATRate: number|null;\n public stockPriceExVat: number|null;\n public stockId: number|null;\n public hasLimit: boolean|null;\n public order: number|null;\n public groupStockType: string|null;\n public networkLedgerCode: string|null;\n\n public constructor(init?: Partial<ChargeTypeDto>) { (Object as any).assign(this, init); }\n}\n(ChargeTypeDto as unknown)[immerable] = true;\n\nexport class CaseflowBatchMergeDataRequestObject\n{\n public id: number|null;\n public template: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<CaseflowBatchMergeDataRequestObject>) { (Object as any).assign(this, init); }\n}\n(CaseflowBatchMergeDataRequestObject as unknown)[immerable] = true;\n\nexport enum Gender\n{\n Unspecified = 'Unspecified',\n Male = 'Male',\n Female = 'Female',\n}\n\nexport class DigitalPrescriptionDMDResponse\n{\n public name: string|null;\n public productId: BigInteger|null;\n\n public constructor(init?: Partial<DigitalPrescriptionDMDResponse>) { (Object as any).assign(this, init); }\n}\n(DigitalPrescriptionDMDResponse as unknown)[immerable] = true;\n\nexport class TwilioRoomResponse\n{\n public roomId: string|null;\n public roomName: string|null;\n public token: string|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public practitionerName: string|null;\n public status: number|null;\n public roomCreated: boolean|null;\n public videoCode: string|null;\n public smsEnabled: boolean|null;\n\n public constructor(init?: Partial<TwilioRoomResponse>) { (Object as any).assign(this, init); }\n}\n(TwilioRoomResponse as unknown)[immerable] = true;\n\nexport interface IVirtualDirectory\n{\n}\n\nexport interface IVirtualPathProvider\n{\n rootDirectory: IVirtualDirectory|null;\n virtualPathSeparator: string|null;\n realPathSeparator: string|null;\n}\n\nexport interface IVirtualFile\n{\n virtualPathProvider: IVirtualPathProvider|null;\n extension: string|null;\n length: number|null;\n}\n\n// @Flags()\nexport enum CacheControl\n{\n None = 0,\n Public = 1,\n Private = 2,\n MustRevalidate = 4,\n NoCache = 8,\n NoStore = 16,\n NoTransform = 32,\n ProxyRevalidate = 64,\n}\n\nexport interface IContentTypeWriter\n{\n}\n\n// @Flags()\nexport enum RequestAttributes\n{\n None = 0,\n Localhost = 1,\n LocalSubnet = 2,\n External = 4,\n Secure = 8,\n InSecure = 16,\n AnySecurityMode = 24,\n HttpHead = 32,\n HttpGet = 64,\n HttpPost = 128,\n HttpPut = 256,\n HttpDelete = 512,\n HttpPatch = 1024,\n HttpOptions = 2048,\n HttpOther = 4096,\n AnyHttpMethod = 8160,\n OneWay = 8192,\n Reply = 16384,\n AnyCallStyle = 24576,\n Soap11 = 32768,\n Soap12 = 65536,\n Xml = 131072,\n Json = 262144,\n Jsv = 524288,\n ProtoBuf = 1048576,\n Csv = 2097152,\n Html = 4194304,\n Jsonl = 8388608,\n MsgPack = 16777216,\n FormatOther = 33554432,\n AnyFormat = 67076096,\n Http = 67108864,\n MessageQueue = 134217728,\n Tcp = 268435456,\n Grpc = 536870912,\n EndpointOther = 1073741824,\n AnyEndpoint = 2080374784,\n InProcess = -2147483648,\n InternalNetworkAccess = -2147483645,\n AnyNetworkAccessType = -2147483641,\n Any = -1,\n}\n\nexport interface IRequestPreferences\n{\n acceptsBrotli: boolean|null;\n acceptsDeflate: boolean|null;\n acceptsGzip: boolean|null;\n}\n\nexport interface IHttpFile\n{\n name: string|null;\n fileName: string|null;\n contentLength: number|null;\n contentType: string|null;\n inputStream: string|null;\n}\n\nexport interface IRequest\n{\n originalRequest: Object|null;\n response: IResponse|null;\n operationName: string|null;\n verb: string|null;\n requestAttributes: RequestAttributes|null;\n requestPreferences: IRequestPreferences|null;\n dto: Object|null;\n contentType: string|null;\n isLocal: boolean|null;\n userAgent: string|null;\n cookies: { [index:string]: Cookie; }|null;\n responseContentType: string|null;\n hasExplicitResponseContentType: boolean|null;\n items: { [index:string]: Object; }|null;\n headers: NameValueCollection|null;\n queryString: NameValueCollection|null;\n formData: NameValueCollection|null;\n useBufferedStream: boolean|null;\n rawUrl: string|null;\n absoluteUri: string|null;\n userHostAddress: string|null;\n remoteIp: string|null;\n authorization: string|null;\n isSecureConnection: boolean|null;\n acceptTypes: string[]|null;\n pathInfo: string|null;\n originalPathInfo: string|null;\n inputStream: string|null;\n contentLength: number|null;\n files: IHttpFile[]|null;\n urlReferrer: string|null;\n}\n\nexport interface IResponse\n{\n originalResponse: Object|null;\n request: IRequest|null;\n statusCode: number|null;\n statusDescription: string|null;\n contentType: string|null;\n outputStream: string|null;\n dto: Object|null;\n useBufferedStream: boolean|null;\n isClosed: boolean|null;\n keepAlive: boolean|null;\n hasStarted: boolean|null;\n items: { [index:string]: Object; }|null;\n}\n\nexport class WorldPayResponse\n{\n public success: boolean|null;\n public errorCode: string|null;\n public errorMessage: string|null;\n public pgtr: string|null;\n public paymentPageUrl: string|null;\n public authorisationCode: string|null;\n\n public constructor(init?: Partial<WorldPayResponse>) { (Object as any).assign(this, init); }\n}\n(WorldPayResponse as unknown)[immerable] = true;\n\nexport enum AutoPayStatus\n{\n InProgress = 'InProgress',\n PaidbyAutoPay = 'PaidbyAutoPay',\n Failed = 'Failed',\n Paid = 'Paid',\n}\n\nexport class AutoPayResponse\n{\n public status: AutoPayStatus|null;\n\n public constructor(init?: Partial<AutoPayResponse>) { (Object as any).assign(this, init); }\n}\n(AutoPayResponse as unknown)[immerable] = true;\n\nexport class AddressFindResponse\n{\n public id: string|null;\n public type: string|null;\n public text: string|null;\n public highlight: string|null;\n public description: string|null;\n\n public constructor(init?: Partial<AddressFindResponse>) { (Object as any).assign(this, init); }\n}\n(AddressFindResponse as unknown)[immerable] = true;\n\nexport class AddressRetrieveResponse\n{\n public id: string|null;\n public domesticId: string|null;\n public language: string|null;\n public languageAlternative: string|null;\n public department: string|null;\n public company: string|null;\n public subBuilding: string|null;\n public buildingNumber: string|null;\n public buildingName: string|null;\n public secondaryStreet: string|null;\n public street: string|null;\n public block: string|null;\n public neighbourhood: string|null;\n public district: string|null;\n public city: string|null;\n public line1: string|null;\n public line2: string|null;\n public line3: string|null;\n public line4: string|null;\n public line5: string|null;\n public adminAreaName: string|null;\n public adminAreaCode: string|null;\n public province: string|null;\n public provinceName: string|null;\n public provinceCode: string|null;\n public postalCode: string|null;\n public countryName: string|null;\n public countryIso2: string|null;\n public countryIso3: string|null;\n public countryIsoNumber: string|null;\n public sortingNumber1: string|null;\n public sortingNumber2: string|null;\n public barcode: string|null;\n public poBoxNumber: string|null;\n public label: string|null;\n public type: string|null;\n public dataLevel: string|null;\n\n public constructor(init?: Partial<AddressRetrieveResponse>) { (Object as any).assign(this, init); }\n}\n(AddressRetrieveResponse as unknown)[immerable] = true;\n\nexport class JsonPermissionResponse\n{\n public id: number|null;\n public shortDescription: string|null;\n public type: string|null;\n public level: string|null;\n\n public constructor(init?: Partial<JsonPermissionResponse>) { (Object as any).assign(this, init); }\n}\n(JsonPermissionResponse as unknown)[immerable] = true;\n\nexport class JsonPermissionGetResponse\n{\n public id: number|null;\n public shortDescription: string|null;\n public jsonPermissions: string[]|null;\n public readOnly: boolean|null;\n\n public constructor(init?: Partial<JsonPermissionGetResponse>) { (Object as any).assign(this, init); }\n}\n(JsonPermissionGetResponse as unknown)[immerable] = true;\n\nexport class Permission\n{\n public description: string|null;\n public hiddenFromNonAdmin: boolean|null;\n public allowed: string[]|null;\n public revoked: string[]|null;\n public reports: string[]|null;\n public accessablePractitioners: number[]|null;\n public multiDiaryRestricted: boolean|null;\n public autoLogout: number|null;\n\n public constructor(init?: Partial<Permission>) { (Object as any).assign(this, init); }\n}\n(Permission as unknown)[immerable] = true;\n\nexport class JsonPermission implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public type: string|null;\n public permission: Permission|null;\n public level: string|null;\n public readOnly: boolean|null;\n public globalGuid: string|null;\n // @Ignore()\n public shortDescription: string|null;\n\n // @Ignore()\n public jsonPermissions: string[]|null;\n\n public constructor(init?: Partial<JsonPermission>) { (Object as any).assign(this, init); }\n}\n(JsonPermission as unknown)[immerable] = true;\n\nexport class UsersSearchResponse\n{\n public id: number|null;\n public name: string|null;\n public fullName: string|null;\n public firstName: string|null;\n public lastName: string|null;\n public current: boolean|null;\n public email: string|null;\n public mobileNumber: string|null;\n public position: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public practitionerId: number|null;\n public migrated: boolean|null;\n public accessiblePractitioners: number[]|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public departments: number[]|null;\n public permissionId: number|null;\n public practitioner: string|null;\n public globalGuid: string|null;\n public avatar: string|null;\n\n public constructor(init?: Partial<UsersSearchResponse>) { (Object as any).assign(this, init); }\n}\n(UsersSearchResponse as unknown)[immerable] = true;\n\nexport class UserRoleLocation implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public locationId: number|null;\n // @Ignore()\n public locationGuid: string|null;\n\n public userId: number|null;\n // @Ignore()\n public userGuid: string|null;\n\n public roleId: number|null;\n // @Ignore()\n public roleGuid: string|null;\n\n public globalGuid: string|null;\n\n public constructor(init?: Partial<UserRoleLocation>) { (Object as any).assign(this, init); }\n}\n(UserRoleLocation as unknown)[immerable] = true;\n\nexport class UserRoleLocationWithDetails extends UserRoleLocation\n{\n public userName: string|null;\n public fullName: string|null;\n public locationName: string|null;\n public userType: string|null;\n public userCurrent: boolean|null;\n public roleName: string|null;\n\n public constructor(init?: Partial<UserRoleLocationWithDetails>) { super(init); (Object as any).assign(this, init); }\n}\n(UserRoleLocationWithDetails as unknown)[immerable] = true;\n\nexport class UserLocationsResponse\n{\n public id: number|null;\n public userId: number|null;\n public locationId: number|null;\n public roleId: number|null;\n public locationName: string|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<UserLocationsResponse>) { (Object as any).assign(this, init); }\n}\n(UserLocationsResponse as unknown)[immerable] = true;\n\nexport class BusinessProfileResponse\n{\n public id: number|null;\n public businessName: string|null;\n public tradingName: string|null;\n public description: string|null;\n public termsAndConditions: string|null;\n public privacyPolicy: string|null;\n public cancellationPolicy: string|null;\n\n public constructor(init?: Partial<BusinessProfileResponse>) { (Object as any).assign(this, init); }\n}\n(BusinessProfileResponse as unknown)[immerable] = true;\n\nexport class ExtractionResponse\n{\n public signature: string|null;\n public creation: string|null;\n public completion: string|null;\n\n public constructor(init?: Partial<ExtractionResponse>) { (Object as any).assign(this, init); }\n}\n(ExtractionResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class Folder\n{\n // @DataMember(Order=1)\n public name: string|null;\n\n // @DataMember(Order=2)\n public modifiedDate: string|null;\n\n // @DataMember(Order=3)\n public path: string|null;\n\n // @DataMember(Order=4)\n public isGlobal: boolean|null;\n\n // @DataMember(Order=5)\n public isOverride: boolean|null;\n\n public constructor(init?: Partial<Folder>) { (Object as any).assign(this, init); }\n}\n(Folder as unknown)[immerable] = true;\n\n// @DataContract\nexport class File\n{\n // @DataMember(Order=1)\n public name: string|null;\n\n // @DataMember(Order=2)\n public extension: string|null;\n\n // @DataMember(Order=3)\n public fileSizeBytes: number|null;\n\n // @DataMember(Order=4)\n public createdDate: string|null;\n\n // @DataMember(Order=5)\n public modifiedDate: string|null;\n\n // @DataMember(Order=6)\n public accessedDate: string|null;\n\n // @DataMember(Order=7)\n public path: string|null;\n\n // @DataMember(Order=8)\n public isGlobal: boolean|null;\n\n // @DataMember(Order=9)\n public isOverride: boolean|null;\n\n // @DataMember(Order=10)\n public description: string|null;\n\n // @DataMember(Order=11)\n public createdBy: string|null;\n\n public constructor(init?: Partial<File>) { (Object as any).assign(this, init); }\n}\n(File as unknown)[immerable] = true;\n\n// @DataContract\nexport class FolderResult\n{\n // @DataMember(Order=1)\n public folders: Folder[]|null;\n\n // @DataMember(Order=2)\n public files: File[]|null;\n\n public constructor(init?: Partial<FolderResult>) { (Object as any).assign(this, init); }\n}\n(FolderResult as unknown)[immerable] = true;\n\nexport class CaseImagingResult\n{\n public width: number|null;\n public height: number|null;\n public src: string|null;\n public signature: string|null;\n\n public constructor(init?: Partial<CaseImagingResult>) { (Object as any).assign(this, init); }\n}\n(CaseImagingResult as unknown)[immerable] = true;\n\nexport class CommandBarResponse\n{\n public id: string|null;\n public name: string|null;\n public description: string|null;\n\n public constructor(init?: Partial<CommandBarResponse>) { (Object as any).assign(this, init); }\n}\n(CommandBarResponse as unknown)[immerable] = true;\n\nexport class BatchMergeDataResponse\n{\n public data: Object|null;\n public template: string|null;\n public id: number|null;\n\n public constructor(init?: Partial<BatchMergeDataResponse>) { (Object as any).assign(this, init); }\n}\n(BatchMergeDataResponse as unknown)[immerable] = true;\n\nexport class ContactMergeCheckResponse\n{\n public contactId: number|null;\n public contactTitle: string|null;\n public contactForename: string|null;\n public contactSurname: string|null;\n public contactBusinessName: string|null;\n public contactcategory: string|null;\n\n public constructor(init?: Partial<ContactMergeCheckResponse>) { (Object as any).assign(this, init); }\n}\n(ContactMergeCheckResponse as unknown)[immerable] = true;\n\nexport enum svcResponse\n{\n Success = 'Success',\n GeneralException = 'GeneralException',\n InvalidClientID = 'InvalidClientID',\n EncryptionError = 'EncryptionError',\n DBError = 'DBError',\n LicenceNotActive = 'LicenceNotActive',\n}\n\nexport class MedicalContactResponse\n{\n public id: number|null;\n public current: boolean|null;\n public defaultContact: boolean|null;\n public contactable: boolean|null;\n public category: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public name: string|null;\n public businessName: string|null;\n public relationship: string|null;\n public address: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public mobile: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public altTelephone1: string|null;\n public altTelephone2: string|null;\n public fax: string|null;\n public web: string|null;\n public email: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public providerNumber: string|null;\n public alerts: AlertResponse[]|null;\n\n public constructor(init?: Partial<MedicalContactResponse>) { (Object as any).assign(this, init); }\n}\n(MedicalContactResponse as unknown)[immerable] = true;\n\nexport class PaymentCard implements IHasId\n{\n public id: number|null;\n public cardObjectID: number|null;\n public cardObjectType: string|null;\n public cardExpiry: string|null;\n public cardIssue: string|null;\n public cardType: string|null;\n public cardFrom: string|null;\n public cardSecurity: string|null;\n public cardNotes: string|null;\n public cardNumber: string|null;\n public cardName: string|null;\n public cardUseAddress: number|null;\n public cardAddress1: string|null;\n public cardAddress2: string|null;\n public cardAddress3: string|null;\n public cardAddress4: string|null;\n public cardPostCode: string|null;\n public cardVerified: string|null;\n public lastFourDigits: string|null;\n public expiryMonth: number|null;\n public expiryYear: number|null;\n public brand: string|null;\n\n public constructor(init?: Partial<PaymentCard>) { (Object as any).assign(this, init); }\n}\n(PaymentCard as unknown)[immerable] = true;\n\nexport class CustomerLiteDto\n{\n public id: number|null;\n public reference: string|null;\n public forename: string|null;\n public surname: string|null;\n public title: string|null;\n public name: string|null;\n public address: string|null;\n public practitionerName: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public smsEnabled: boolean|null;\n public groupName: string|null;\n public locationName: string|null;\n public locationId: number|null;\n public groupId: number|null;\n public practitionerId: number|null;\n public groupAddressTo: string|null;\n public postCode: string|null;\n public mobileTelephone: string|null;\n public email: string|null;\n public smsEnabled: boolean|null;\n public dateOfBirth: string|null;\n public alerts: AlertResponse[]|null;\n public billTo: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public cardID: number|null;\n public paymentCard: PaymentCard|null;\n\n public constructor(init?: Partial<CustomerLiteDto>) { (Object as any).assign(this, init); }\n}\n(CustomerLiteDto as unknown)[immerable] = true;\n\nexport class CustomerBatchConsentResponse\n{\n public updated: boolean|null;\n\n public constructor(init?: Partial<CustomerBatchConsentResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerBatchConsentResponse as unknown)[immerable] = true;\n\nexport class Customer implements IHasAddressDetails, IHasReference, IHasDocuments\n{\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public invoiceAddressLine1: string|null;\n public invoiceAddressLine2: string|null;\n public invoiceAddressLine3: string|null;\n public invoiceAddressLine4: string|null;\n public invoiceAddressLine5: string|null;\n public invoicePostCode: string|null;\n public dateOfBirth: string|null;\n public registrationDate: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public accountId: number|null;\n public groupId: number|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public email: string|null;\n public reference: string|null;\n public insuranceNumber: string|null;\n public groupReference: string|null;\n public smsEnabled: boolean|null;\n public defaultCharge: string|null;\n public invoicePeriod: string|null;\n public status: number|null;\n public useInvoiceAddress: boolean|null;\n public enquiry: string|null;\n public category: string|null;\n public employer: string|null;\n public height: number|null;\n public weight: number|null;\n public hospitalNumber: string|null;\n public niNumber: string|null;\n public medication: string|null;\n public previousInjuries: string|null;\n public alternativeRef1: string|null;\n public alternativeRef2: string|null;\n public alternativeRef3: string|null;\n public alternativeRef4: string|null;\n public lastAppointmentDate: string|null;\n public notes: string|null;\n public billTo: string|null;\n public online: boolean|null;\n public cardNo: string|null;\n public invoiceFrequency: number|null;\n public invoiceDeadline: string|null;\n public consent: string|null;\n public groupDepartment: string|null;\n public id: number|null;\n public provisional: boolean|null;\n public givenConsent: boolean|null;\n public emailConsent: boolean|null;\n public smsConsent: boolean|null;\n public phoneConsent: boolean|null;\n public stripeCustomerId: string|null;\n public paymentMethodId: string|null;\n public cardID: number|null;\n public tempPaymentMethodId: string|null;\n public medicareCardNo: string|null;\n public irn: string|null;\n public dvaNumber: string|null;\n public flag: string|null;\n public documentsLoaded: boolean|null;\n // @Ignore()\n public documentsSubDirectory: string|null;\n\n public squareCustomerId: string|null;\n public squareCardId: string|null;\n // @Ignore()\n public name: string|null;\n\n public merchantCardId: string|null;\n public merchantCustomerId: string|null;\n public merchantCardToken: string|null;\n public tags: string[]|null;\n public overridePayAtClinic: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<Customer>) { (Object as any).assign(this, init); }\n}\n(Customer as unknown)[immerable] = true;\n\nexport class DupEmailResponse\n{\n public consent: boolean|null;\n public customers: Customer[]|null;\n public patient: Customer|null;\n\n public constructor(init?: Partial<DupEmailResponse>) { (Object as any).assign(this, init); }\n}\n(DupEmailResponse as unknown)[immerable] = true;\n\nexport class CustomerSaveResponse\n{\n public patient: GeneralCustomerResponse|null;\n public suggested: boolean|null;\n public result: DupEmailResponse|null;\n\n public constructor(init?: Partial<CustomerSaveResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerSaveResponse as unknown)[immerable] = true;\n\nexport interface IHasAddressDetails\n{\n addressLine1: string|null;\n addressLine2: string|null;\n addressLine3: string|null;\n addressLine4: string|null;\n addressLine5: string|null;\n postCode: string|null;\n}\n\nexport interface IHasDocuments\n{\n documentsLoaded: boolean|null;\n documentsSubDirectory: string|null;\n}\n\nexport class TransactionItemResponse\n{\n public date: string|null;\n public type: string|null;\n public status: string|null;\n public amount: number|null;\n public displayName: string|null;\n\n public constructor(init?: Partial<TransactionItemResponse>) { (Object as any).assign(this, init); }\n}\n(TransactionItemResponse as unknown)[immerable] = true;\n\nexport class CaseSearchResponse\n{\n public admissionDate: string|null;\n public appointmentCount: number|null;\n public appointmentsWithoutConsultations: number|null;\n public alerts: number|null;\n public nextAppointmentDate: string|null;\n public auth: string|null;\n public authExpiryDate: string|null;\n public bodySite: string|null;\n public bodySiteText: string|null;\n public closed: boolean|null;\n public closedDateTime: string|null;\n public customerForename: string|null;\n public customerId: number|null;\n public customerSurname: string|null;\n public customerTitle: string|null;\n public diagnosis: string|null;\n public diagnosisCode: string|null;\n public dischargeDate: string|null;\n public dischargeStatus: string|null;\n public statusText: string|null;\n public expired: boolean|null;\n public firstAppointmentId: number|null;\n public groupName: string|null;\n public id: number|null;\n public incompleteNotes: boolean|null;\n public location: string|null;\n public locationId: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerId: number|null;\n public patientName: string|null;\n public reference: number|null;\n public restricted: boolean|null;\n public statusValue: string|null;\n public status: number|null;\n public unclosedConsultations: number|null;\n public lastConsultationDate: string|null;\n public type: string|null;\n public serviceType: string|null;\n\n public constructor(init?: Partial<CaseSearchResponse>) { (Object as any).assign(this, init); }\n}\n(CaseSearchResponse as unknown)[immerable] = true;\n\nexport class JoinedContactResponse\n{\n public id: number|null;\n public reference: string|null;\n public forename: string|null;\n public surname: string|null;\n public title: string|null;\n public email: string|null;\n public type: string|null;\n public relationship: string|null;\n public number: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<JoinedContactResponse>) { (Object as any).assign(this, init); }\n}\n(JoinedContactResponse as unknown)[immerable] = true;\n\nexport class AccountStatementResponse\n{\n public id: number|null;\n public idKey: string|null;\n public date: string|null;\n public ref: string|null;\n public type: string|null;\n public location: string|null;\n public debit: number|null;\n public credit: number|null;\n public status: string|null;\n public reason: string|null;\n public totalRows: number|null;\n public meta: { [index:string]: Object; }|null;\n\n public constructor(init?: Partial<AccountStatementResponse>) { (Object as any).assign(this, init); }\n}\n(AccountStatementResponse as unknown)[immerable] = true;\n\nexport class GroupAccountStatementResponse\n{\n public id: number|null;\n public reference: string|null;\n public date: string|null;\n public debitAmount: number|null;\n public creditAmount: number|null;\n public status: string|null;\n public groupName: string|null;\n public paymentType: string|null;\n public transactionType: string|null;\n public locationName: string|null;\n\n public constructor(init?: Partial<GroupAccountStatementResponse>) { (Object as any).assign(this, init); }\n}\n(GroupAccountStatementResponse as unknown)[immerable] = true;\n\nexport class BillingItemsResponse\n{\n public id: number|null;\n public date: string|null;\n public description: string|null;\n public total: number|null;\n public accountName: string|null;\n public groupOrPatientReference: string|null;\n public isPaid: boolean|null;\n public invoiceRef: string|null;\n public paidDate: string|null;\n public invoiceId: number|null;\n public stockType: string|null;\n public locationName: string|null;\n public practitionerName: string|null;\n public totalExVat: number|null;\n public quantity: number|null;\n public price: number|null;\n public vatRate: number|null;\n public totalVat: number|null;\n public category: string|null;\n\n public constructor(init?: Partial<BillingItemsResponse>) { (Object as any).assign(this, init); }\n}\n(BillingItemsResponse as unknown)[immerable] = true;\n\nexport enum PrePaidStatus\n{\n Active = 'Active',\n Expired = 'Expired',\n Used = 'Used',\n Removed = 'Removed',\n}\n\nexport class GroupedPrePaidItems\n{\n public id: number|null;\n public description: string|null;\n public items: string[]|null;\n public classTypeIds: number[]|null;\n public status: PrePaidStatus|null;\n public isCourse: boolean|null;\n public itemsLeft: number|null;\n public itemsUsed: number|null;\n public used: number|null;\n public totalQuantity: number|null;\n public names: string|null;\n public expires: string|null;\n public remaining: string|null;\n\n public constructor(init?: Partial<GroupedPrePaidItems>) { (Object as any).assign(this, init); }\n}\n(GroupedPrePaidItems as unknown)[immerable] = true;\n\nexport class PrePaidItems\n{\n public billingItemId: number|null;\n public packageId: string|null;\n public packageName: string|null;\n public totalPrice: number|null;\n public items: GroupedPrePaidItems[]|null;\n public itemIds: number[]|null;\n public date: string|null;\n public expiryDate: string|null;\n public status: number|null;\n\n public constructor(init?: Partial<PrePaidItems>) { (Object as any).assign(this, init); }\n}\n(PrePaidItems as unknown)[immerable] = true;\n\nexport class InvoicePaymentsResponse\n{\n public id: number|null;\n public invoiceId: number|null;\n public refundId: number|null;\n public amount: number|null;\n public paymentMethod: string|null;\n public otherPaymentMethod: string|null;\n public actualPaymentMethod: string|null;\n public customerId: number|null;\n public status: string|null;\n public date: string|null;\n public reference: string|null;\n public lodgementRef: string|null;\n public paymentId: number|null;\n public paidBy: string|null;\n public notes: string|null;\n public cardType: string|null;\n public cardNumber: string|null;\n public expiry: string|null;\n public chequeNumber: string|null;\n public migrated: boolean|null;\n public paymentAmount: number|null;\n public transferred: string|null;\n\n public constructor(init?: Partial<InvoicePaymentsResponse>) { (Object as any).assign(this, init); }\n}\n(InvoicePaymentsResponse as unknown)[immerable] = true;\n\nexport class ClickContactSearchResult\n{\n public typeId: number|null;\n public id: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public addR1: string|null;\n public addR2: string|null;\n public addR3: string|null;\n public addR4: string|null;\n public addR5: string|null;\n public postcode: string|null;\n public isMedical: boolean|null;\n // @Ignore()\n public name: string|null;\n\n public category: string|null;\n\n public constructor(init?: Partial<ClickContactSearchResult>) { (Object as any).assign(this, init); }\n}\n(ClickContactSearchResult as unknown)[immerable] = true;\n\nexport class ClickCustomerNotesCheckResponse\n{\n public caseId: number|null;\n\n public constructor(init?: Partial<ClickCustomerNotesCheckResponse>) { (Object as any).assign(this, init); }\n}\n(ClickCustomerNotesCheckResponse as unknown)[immerable] = true;\n\nexport class Treatment implements IHasId, ICascade\n{\n public id: number|null;\n public caseId: number|null;\n public appointmentId: number|null;\n public dateTime: string|null;\n public initials: string|null;\n public notes: string|null;\n public length: number|null;\n public assessLength: number|null;\n public cost: number|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public migrated: boolean|null;\n public closed: boolean|null;\n public closedUser: string|null;\n public closedDate: string|null;\n public scale: number|null;\n public measure: string|null;\n public data: { [index:string]: Object; }|null;\n public autoSaved: boolean|null;\n public templateId: string|null;\n public highlights: { [index:string]: number[]; }|null;\n public type: string|null;\n public createdByUserId: number|null;\n public createdDate: string|null;\n public lastUpdatedDate: string|null;\n public validated: boolean|null;\n\n public constructor(init?: Partial<Treatment>) { (Object as any).assign(this, init); }\n}\n(Treatment as unknown)[immerable] = true;\n\nexport enum CaseStatus\n{\n AwaitingFirstAppointment = 1,\n InTreatment = 3,\n OnHold = 7,\n Discharged = 8,\n ClosedButWaitingForReview = 12,\n ClosedAndReviewed = 14,\n}\n\nexport class AppointmentCaseResponse\n{\n public id: number|null;\n public bodySite: string|null;\n public admissionDate: string|null;\n public practitionerId: string|null;\n public description: string|null;\n public consultations: Treatment[]|null;\n public dischargeDate: string|null;\n public discharged: boolean|null;\n public bookingAuditId: string|null;\n public status: CaseStatus|null;\n public firstAppointmentStatus: number|null;\n\n public constructor(init?: Partial<AppointmentCaseResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentCaseResponse as unknown)[immerable] = true;\n\nexport class CustomerServiceResponse\n{\n public id: number|null;\n public customerSecurityLevel: number|null;\n public customerSecurityKeyWord: string|null;\n\n public constructor(init?: Partial<CustomerServiceResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerServiceResponse as unknown)[immerable] = true;\n\nexport class PatientLogResponse\n{\n public id: number|null;\n public customerId: number|null;\n public dateTime: string|null;\n public entry: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<PatientLogResponse>) { (Object as any).assign(this, init); }\n}\n(PatientLogResponse as unknown)[immerable] = true;\n\nexport class Patientlog implements IHasId\n{\n public id: number|null;\n public customerId: number|null;\n public dateTime: string|null;\n public entry: string|null;\n public user: number|null;\n public type: string|null;\n public activityArea: string|null;\n public serviceTypeId: number|null;\n public linkedObjectType: TimelineLinkedObjectType|null;\n public linkedObjectId: number|null;\n public contextId: number|null;\n public context: TimelineContextObjectType|null;\n public linkedDocumentId: string|null;\n public documentLinkedToObjectType: TimelineLinkedObjectType|null;\n public documentLinkedToObjectId: number|null;\n\n public constructor(init?: Partial<Patientlog>) { (Object as any).assign(this, init); }\n}\n(Patientlog as unknown)[immerable] = true;\n\nexport class PatientInfoLogResponse implements IPatientInfoResponse\n{\n public id: number|null;\n public responseType: string|null;\n public date: string|null;\n public description: string|null;\n public title: string|null;\n public pinned: boolean|null;\n public dateTime: string|null;\n public entry: string|null;\n public userName: string|null;\n public customerId: number|null;\n public type: string|null;\n public activityArea: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<PatientInfoLogResponse>) { (Object as any).assign(this, init); }\n}\n(PatientInfoLogResponse as unknown)[immerable] = true;\n\nexport class RoomResponse\n{\n public id: number|null;\n public description: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public status: boolean|null;\n public colour: number|null;\n public hexColour: string|null;\n\n public constructor(init?: Partial<RoomResponse>) { (Object as any).assign(this, init); }\n}\n(RoomResponse as unknown)[immerable] = true;\n\nexport class PractitionerLocation\n{\n public id: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<PractitionerLocation>) { (Object as any).assign(this, init); }\n}\n\nexport class NonWorkingDate implements IHasId\n{\n public id: number|null;\n public date: string|null;\n public practitionerId: number|null;\n public title: string|null;\n\n public constructor(init?: Partial<NonWorkingDate>) { (Object as any).assign(this, init); }\n}\n(NonWorkingDate as unknown)[immerable] = true;\n\nexport class NonWorkingDateResponse implements IHasId\n{\n public id: number|null;\n public date: string|null;\n public practitionerId: number|null;\n public endDate: string|null;\n public title: string|null;\n\n public constructor(init?: Partial<NonWorkingDateResponse>) { (Object as any).assign(this, init); }\n}\n(NonWorkingDateResponse as unknown)[immerable] = true;\n\nexport class DiarySessionResponse\n{\n public startDateTime: string|null;\n public endDateTime: string|null;\n public locationDescription: string|null;\n public practitionerDescription: string|null;\n public roomDescription: string|null;\n public isSpecialSession: boolean|null;\n public practitionerId: number|null;\n public roomId: number|null;\n public usedFor: string|null;\n public locationId: number|null;\n public hexColour: string|null;\n public online: boolean|null;\n public occurrences: string[]|null;\n public id: number|null;\n\n public constructor(init?: Partial<DiarySessionResponse>) { (Object as any).assign(this, init); }\n}\n(DiarySessionResponse as unknown)[immerable] = true;\n\nexport class ScheduleSession\n{\n public id: number|null;\n public roomId: number|null;\n public type: string|null;\n public isOnline: boolean|null;\n public isSpecial: boolean|null;\n public locationId: number|null;\n public usedFor: string|null;\n public hexColour: string|null;\n public scheduleId: string|null;\n public practitionerId: number|null;\n public endDateTime: string|null;\n public startDateTime: string|null;\n public dateDiff: number|null;\n public startTimeMinutes: number|null;\n public isBatch: boolean|null;\n public isFirstInBatch: boolean|null;\n public batchNo: number|null;\n public multiUsedFor: string[]|null;\n public skillRestrictions: string[]|null;\n\n public constructor(init?: Partial<ScheduleSession>) { (Object as any).assign(this, init); }\n}\n(ScheduleSession as unknown)[immerable] = true;\n\nexport class ScheduleAppointment\n{\n public id: number|null;\n public locationId: number|null;\n public name: string|null;\n public authId: number|null;\n public authLeft: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public actualStartDateTime: string|null;\n public actualEndDateTime: string|null;\n public dateDiff: number|null;\n public startTimeMinutes: number|null;\n public scheduleId: string|null;\n public hexColour: string|null;\n public type: string|null;\n public reminderType: string|null;\n public status: number|null;\n public isMulti: boolean|null;\n public isMultiFirst: boolean|null;\n public inDebt: boolean|null;\n public payAtEachAppt: string|null;\n public comment: string|null;\n public caseId: number|null;\n public firstAppointment: boolean|null;\n public stockDescription: string|null;\n public meta: { [index:string]: Object; }|null;\n public serviceTypeId: number|null;\n public alert: boolean|null;\n public prontoAuditId: string|null;\n public prontoAppointmentId: string|null;\n public prontoServiceId: string|null;\n public practitionerId: number|null;\n public roomId: number|null;\n public stockId: number|null;\n public customerId: number|null;\n public customerReference: string|null;\n public customerAltRef: string|null;\n public customerMobileTelephone: string|null;\n public customerEmail: string|null;\n public customerSMSEnabled: boolean|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public customerDateOfBirth: string|null;\n public customerGender: string|null;\n public customerStatus: number|null;\n public customerRegistrationDate: string|null;\n public insuranceNumber: string|null;\n public groupReference: string|null;\n public groupId: number|null;\n public batchNo: number|null;\n public isFirstInBatch: boolean|null;\n public isBatch: boolean|null;\n\n public constructor(init?: Partial<ScheduleAppointment>) { (Object as any).assign(this, init); }\n}\n(ScheduleAppointment as unknown)[immerable] = true;\n\nexport class Schedule\n{\n public id: number|null;\n public name: string|null;\n public sessions: { [index:string]: ScheduleSession; }|null;\n public appointments: { [index:string]: ScheduleAppointment; }|null;\n\n public constructor(init?: Partial<Schedule>) { (Object as any).assign(this, init); }\n}\n(Schedule as unknown)[immerable] = true;\n\nexport class ScheduleBlock\n{\n public count: number|null;\n public holiday: boolean|null;\n public keys: string[]|null;\n public values: { [index:string]: Schedule; }|null;\n\n public constructor(init?: Partial<ScheduleBlock>) { (Object as any).assign(this, init); }\n}\n(ScheduleBlock as unknown)[immerable] = true;\n\nexport class ScheduleResponse\n{\n public columns: number|null;\n public count: number|null;\n public keys: string[]|null;\n public blocks: { [index:string]: ScheduleBlock; }|null;\n\n public constructor(init?: Partial<ScheduleResponse>) { (Object as any).assign(this, init); }\n}\n(ScheduleResponse as unknown)[immerable] = true;\n\nexport class DayOverview\n{\n public availableHours: number|null;\n public noOfAppointments: number|null;\n public noOfClasses: number|null;\n public noOfMeetings: number|null;\n public noOfOtherEvents: number|null;\n public noOfHolidays: number|null;\n public date: string|null;\n public nonWorkingDate: boolean|null;\n public utilizationPercentage: number|null;\n public noOfCancelled: number|null;\n\n public constructor(init?: Partial<DayOverview>) { (Object as any).assign(this, init); }\n}\n(DayOverview as unknown)[immerable] = true;\n\nexport class MonthlyScheduleResponse\n{\n public days: DayOverview[]|null;\n\n public constructor(init?: Partial<MonthlyScheduleResponse>) { (Object as any).assign(this, init); }\n}\n(MonthlyScheduleResponse as unknown)[immerable] = true;\n\nexport class OccurrenceResponse\n{\n public occurrences: string[]|null;\n public isLastInBatch: boolean|null;\n\n public constructor(init?: Partial<OccurrenceResponse>) { (Object as any).assign(this, init); }\n}\n(OccurrenceResponse as unknown)[immerable] = true;\n\nexport class PaymentResponse extends Income\n{\n public accountName: string|null;\n public smsEnabled: boolean|null;\n public customerMobileTelephone: string|null;\n public accountType: string|null;\n public accountTypeId: number|null;\n public locationName: string|null;\n public emailReceipt: boolean|null;\n public receiptTemplate: string|null;\n public statusName: string|null;\n public method: string|null;\n public accountingSystemPaymentId: string|null;\n\n public constructor(init?: Partial<PaymentResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentResponse as unknown)[immerable] = true;\n\nexport class PaymentsResponse extends PaymentResponse\n{\n public invoiceId: number|null;\n public refundId: number|null;\n public paymentAmount: number|null;\n public description: string|null;\n public type: string|null;\n public debit: number|null;\n public credit: number|null;\n public customerName: string|null;\n public remainingAmount: number|null;\n\n public constructor(init?: Partial<PaymentsResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentsResponse as unknown)[immerable] = true;\n\nexport class BillingItemWithNames extends BillingItem\n{\n public practitionerForename: string|null;\n public practitionerTitle: string|null;\n public practitionerSurname: string|null;\n public practitionerCode: string|null;\n public practitionerLocationCode: string|null;\n public practitionerGroupProviderNo: string|null;\n // @Ignore()\n public providerNo: string|null;\n\n public employmentStatus: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n public customerForename: string|null;\n public customerTitle: string|null;\n public customerSurname: string|null;\n // @Ignore()\n public customerName: string|null;\n\n public auditId: string|null;\n\n public constructor(init?: Partial<BillingItemWithNames>) { super(init); (Object as any).assign(this, init); }\n}\n(BillingItemWithNames as unknown)[immerable] = true;\n\nexport class BillingItemWithNamesExtended extends BillingItemWithNames\n{\n public customerReference: string|null;\n public customerAddressLine1: string|null;\n public customerAddressLine2: string|null;\n public customerAddressLine3: string|null;\n public customerAddressLine4: string|null;\n public customerAddressLine5: string|null;\n public customerPostcode: string|null;\n public customerDateOfBirth: string|null;\n public customerGroupReference: string|null;\n public customerInsuranceNumber: string|null;\n public regNumber: string|null;\n\n public constructor(init?: Partial<BillingItemWithNamesExtended>) { super(init); (Object as any).assign(this, init); }\n}\n(BillingItemWithNamesExtended as unknown)[immerable] = true;\n\nexport class BillingItemWithNamesAuth extends BillingItemWithNamesExtended\n{\n public authId: number|null;\n public authCode: string|null;\n\n public constructor(init?: Partial<BillingItemWithNamesAuth>) { super(init); (Object as any).assign(this, init); }\n}\n(BillingItemWithNamesAuth as unknown)[immerable] = true;\n\nexport class AccountsExportChargesPreviewResponse\n{\n public ledgerCode: string|null;\n public location: string|null;\n public amount: number|null;\n public exVat: number|null;\n public vat: number|null;\n\n public constructor(init?: Partial<AccountsExportChargesPreviewResponse>) { (Object as any).assign(this, init); }\n}\n(AccountsExportChargesPreviewResponse as unknown)[immerable] = true;\n\nexport class AccountsExportPaymentsAlertsResponse\n{\n public id: number|null;\n public date: string|null;\n public amount: number|null;\n public method: string|null;\n public reference: string|null;\n public name: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<AccountsExportPaymentsAlertsResponse>) { (Object as any).assign(this, init); }\n}\n(AccountsExportPaymentsAlertsResponse as unknown)[immerable] = true;\n\nexport class AccountsExportPaymentsFilePreviewResponse\n{\n public type: string|null;\n public reference: string|null;\n public location: string|null;\n public date: string|null;\n public amount: number|null;\n public paymentMethod: string|null;\n\n public constructor(init?: Partial<AccountsExportPaymentsFilePreviewResponse>) { (Object as any).assign(this, init); }\n}\n(AccountsExportPaymentsFilePreviewResponse as unknown)[immerable] = true;\n\nexport class AccountsExportPaymentsPreviewResponse\n{\n public a: AccountsExportPaymentsAlertsResponse[]|null;\n public b: AccountsExportPaymentsFilePreviewResponse[]|null;\n\n public constructor(init?: Partial<AccountsExportPaymentsPreviewResponse>) { (Object as any).assign(this, init); }\n}\n(AccountsExportPaymentsPreviewResponse as unknown)[immerable] = true;\n\nexport class AccountExportHistoryResponse\n{\n public id: number|null;\n public fromDate: string|null;\n public toDate: string|null;\n public type: string|null;\n public dateTime: string|null;\n\n public constructor(init?: Partial<AccountExportHistoryResponse>) { (Object as any).assign(this, init); }\n}\n(AccountExportHistoryResponse as unknown)[immerable] = true;\n\nexport class GroupBillingItemsResponse\n{\n public id: number|null;\n public date: string|null;\n public description: string|null;\n public total: number|null;\n public accountName: string|null;\n public accountsExportId: number|null;\n public groupOrPatientReference: string|null;\n public customerInvoicePeriod: string|null;\n public groupInvoicePeriod: string|null;\n public invoicePeriod: string|null;\n public isPaid: boolean|null;\n public invoiceRef: string|null;\n public paidDate: string|null;\n public invoiceId: number|null;\n public stockType: string|null;\n public locationName: string|null;\n public practitionerName: string|null;\n public customerName: string|null;\n public customerId: number|null;\n public status: string|null;\n public parentId: number|null;\n public totalExVat: number|null;\n public groupId: number|null;\n public groupName: string|null;\n public accountingSystemLineItemId: string|null;\n public accountingSystemCreditNoteId: string|null;\n\n public constructor(init?: Partial<GroupBillingItemsResponse>) { (Object as any).assign(this, init); }\n}\n(GroupBillingItemsResponse as unknown)[immerable] = true;\n\nexport class GroupingResponse\n{\n public total: number|null;\n public grouping: ChargeGroup[]|null;\n\n public constructor(init?: Partial<GroupingResponse>) { (Object as any).assign(this, init); }\n}\n(GroupingResponse as unknown)[immerable] = true;\n\nexport class InvoiceGroupingResponse\n{\n public batch: InvoiceBatch|null;\n public manifest: GroupingResponse[]|null;\n\n public constructor(init?: Partial<InvoiceGroupingResponse>) { (Object as any).assign(this, init); }\n}\n(InvoiceGroupingResponse as unknown)[immerable] = true;\n\nexport class InvoiceWizardResponse\n{\n public invoices: number[]|null;\n\n public constructor(init?: Partial<InvoiceWizardResponse>) { (Object as any).assign(this, init); }\n}\n(InvoiceWizardResponse as unknown)[immerable] = true;\n\nexport class DebtsResponse\n{\n public id: number|null;\n public reference: string|null;\n public date: string|null;\n public dueDate: string|null;\n public grandTotal: number|null;\n public amountPaid: number|null;\n public amountRemaining: number|null;\n public debtAge: string|null;\n public accountTypeName: string|null;\n public accountName: string|null;\n public mobileNumber: string|null;\n public smsEnabled: boolean|null;\n public status: string|null;\n public statusName: string|null;\n public customerId: number|null;\n public customerName: string|null;\n public locationId: number|null;\n public accountId: number|null;\n public groupAccountId: number|null;\n public patientAccountId: number|null;\n public patientFullName: string|null;\n public template: string|null;\n public email: string|null;\n public paymentCardAvailability: boolean|null;\n public accountType: string|null;\n public paymentStatus: string|null;\n\n public constructor(init?: Partial<DebtsResponse>) { (Object as any).assign(this, init); }\n}\n(DebtsResponse as unknown)[immerable] = true;\n\nexport class ExpenditureResponse\n{\n public id: number|null;\n public date: string|null;\n public description: string|null;\n public reference: string|null;\n public amountExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public total: number|null;\n public category: string|null;\n public supplierId: number|null;\n public supplierName: string|null;\n public expenditureName: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public otherPaymentMethod: string|null;\n public chequeNumber: string|null;\n public cardType: string|null;\n\n public constructor(init?: Partial<ExpenditureResponse>) { (Object as any).assign(this, init); }\n}\n(ExpenditureResponse as unknown)[immerable] = true;\n\nexport class InvoicesResponse\n{\n public id: number|null;\n public reference: string|null;\n public date: string|null;\n public dueDate: string|null;\n public fullyPaidDate: string|null;\n public grandTotal: number|null;\n public amountPaid: number|null;\n public mobileNumber: string|null;\n public smsEnabled: boolean|null;\n public status: string|null;\n public statusName: string|null;\n public customerId: number|null;\n public locationId: number|null;\n public accountId: number|null;\n public patientAccountId: number|null;\n public healthCodeId: number|null;\n public accountType: string|null;\n public accountTypeId: number|null;\n public groupAccountId: number|null;\n public groupName: string|null;\n public addressTo: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public invoiceAddress: string|null;\n public invoiceReminder: number|null;\n public invoiceSecondReminder: number|null;\n public notes: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public customerAddress1: string|null;\n public customerPostCode: string|null;\n public patientPractitionerId: number|null;\n public otherAmountAvailable: number|null;\n public locationName: string|null;\n public template: string|null;\n public email: string|null;\n public globalId: string|null;\n public globalType: number|null;\n public metadata: ProntoInvoice|null;\n public paymentCard: PaymentCard|null;\n public paymentCardAvailability: boolean|null;\n public meta: { [index:string]: Object; }|null;\n public paymentStatus: string|null;\n public medipassStatus: string|null;\n public purchaseOrderNumber: string|null;\n public medicalContactId: number|null;\n public medicalContactName: string|null;\n public referralDate: string|null;\n public uninvoicedBillingItemCount: number|null;\n public patientAmountAvailable: number|null;\n public accountingSystemInvoiceId: string|null;\n public registrationNumber: string|null;\n public vehicleId: number|null;\n public registrationOrigin: string|null;\n\n public constructor(init?: Partial<InvoicesResponse>) { (Object as any).assign(this, init); }\n}\n(InvoicesResponse as unknown)[immerable] = true;\n\nexport class InvoiceDto\n{\n public id: string|null;\n\n public constructor(init?: Partial<InvoiceDto>) { (Object as any).assign(this, init); }\n}\n(InvoiceDto as unknown)[immerable] = true;\n\nexport class ProntoInvoiceResponse\n{\n public invoice: InvoiceDto|null;\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<ProntoInvoiceResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoInvoiceResponse as unknown)[immerable] = true;\n\nexport class TransactionResponse\n{\n public id: number|null;\n public type: string|null;\n public date: string|null;\n public description: string|null;\n public total: number|null;\n public totalExVat: number|null;\n public totalVat: number|null;\n public practitioner: string|null;\n public practitionerId: number|null;\n public customer: string|null;\n public reference: string|null;\n public method: string|null;\n public status: string|null;\n public paymentId: number|null;\n public itemPrice: number|null;\n public ledgerCode: string|null;\n public lodgementRef: string|null;\n public category: string|null;\n public accountId: number|null;\n public customerId: number|null;\n public accountsExportId: number|null;\n public locationId: number|null;\n public invoiceStatus: string|null;\n public invoiceId: number|null;\n public invoiceStatusName: string|null;\n public prontoServiceId: string|null;\n\n public constructor(init?: Partial<TransactionResponse>) { (Object as any).assign(this, init); }\n}\n(TransactionResponse as unknown)[immerable] = true;\n\nexport class InvoiceBatchResponse\n{\n public id: number|null;\n public date: string|null;\n\n public constructor(init?: Partial<InvoiceBatchResponse>) { (Object as any).assign(this, init); }\n}\n(InvoiceBatchResponse as unknown)[immerable] = true;\n\n// @Flags()\nexport enum EGroupsAccountSearchResponseType\n{\n Invoice = 0,\n Payment = 1,\n}\n\n// @Flags()\nexport enum EGroupsAccountSearchResponseStatus\n{\n InvoicePaid = 0,\n InvoiceUnpaid = 1,\n InvoicePartPaid = 2,\n InvoiceWrittenOff = 3,\n PaymentReconciled = 4,\n PaymentUnreconciled = 5,\n PaymentPartReconciled = 6,\n PaymentVoided = 7,\n}\n\nexport class GroupsAccountSearchResponse\n{\n public id: number|null;\n public reference: string|null;\n public date: string|null;\n public customerName: string|null;\n public customerId: number|null;\n public locationId: number|null;\n public locationName: string|null;\n public debit: number|null;\n public credit: number|null;\n public type: EGroupsAccountSearchResponseType|null;\n public eStatus: EGroupsAccountSearchResponseStatus|null;\n\n public constructor(init?: Partial<GroupsAccountSearchResponse>) { (Object as any).assign(this, init); }\n}\n(GroupsAccountSearchResponse as unknown)[immerable] = true;\n\nexport class PaymentDetailsResponse\n{\n public refundId: number|null;\n public isLocked: boolean|null;\n public refund: number|null;\n public available: number[]|null;\n public reconciled: number[]|null;\n public payment: PaymentResponse|null;\n public reconciliations: ReconciliationResponse[]|null;\n\n public constructor(init?: Partial<PaymentDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(PaymentDetailsResponse as unknown)[immerable] = true;\n\nexport class RemainingAuths\n{\n public id: number|null;\n public remaining: number|null;\n\n public constructor(init?: Partial<RemainingAuths>) { (Object as any).assign(this, init); }\n}\n(RemainingAuths as unknown)[immerable] = true;\n\nexport class CancellationReasonResponse\n{\n public appointmentAuthRemaining: RemainingAuths[]|null;\n\n public constructor(init?: Partial<CancellationReasonResponse>) { (Object as any).assign(this, init); }\n}\n(CancellationReasonResponse as unknown)[immerable] = true;\n\nexport interface IHangfireJobQueueService\n{\n}\n\nexport class QuickBill extends Customer\n{\n public name: string|null;\n public paymentsAvailable: boolean|null;\n public cardDetails: CardDetails|null;\n\n public constructor(init?: Partial<QuickBill>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class Group implements IHasId, IHasAddressDetails, IHasGlobalGuid, IHasDocuments\n{\n public id: number|null;\n public name: string|null;\n public contact: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public fax: string|null;\n public email: string|null;\n public web: string|null;\n public accountId: number|null;\n // @Ignore()\n public accountGuid: string|null;\n\n public profileId: number|null;\n public locationId: number|null;\n // @Ignore()\n public locationGuid: string|null;\n\n public showReferrals: boolean|null;\n public groupInvoices: string|null;\n public addressTo: string|null;\n public invoicePeriod: string|null;\n public contractNumber: string|null;\n public invoiceFrequency: number|null;\n public invoiceWPID: number|null;\n public showVAT: boolean|null;\n public authorisationCode: string|null;\n public defaultMaxTreatments: number|null;\n public classification: string|null;\n public cancellationHours: number|null;\n public paysForDNA: boolean|null;\n public paysForCancel: boolean|null;\n public notificationEmail: string|null;\n public abbreviationPrefix: string|null;\n public online: boolean|null;\n public globalId: string|null;\n public accountCode: string|null;\n public dueDaysOverride: number|null;\n public invoiceTemplate: string|null;\n public onlineGuid: string|null;\n public tm3InvoiceTemplate: string|null;\n public invoicePaymentTerms: string|null;\n public useInvoicePaymentTerms: boolean|null;\n public groupInvoiceByStockId: boolean|null;\n public financialAddress: string|null;\n public medipassFunder: string|null;\n public medipassFunderCode: string|null;\n public isVatExempt: boolean|null;\n public vatExemptionNumber: string|null;\n public vatExemptionExpiryDate: string|null;\n public allowedEmails: string|null;\n public onlineSettingsId: number|null;\n public documentsLoaded: boolean|null;\n public businessPortalTwoFactorAuthenticationEnabled: boolean|null;\n public authorisationExpiryInDays: number|null;\n public authorisationExpiryTriggerInDays: number|null;\n public remainingAuthorisationThreshold: number|null;\n // @Ignore()\n public documentsSubDirectory: string|null;\n\n // @Ignore()\n public reference: string|null;\n\n // @Ignore()\n public globalGuid: string|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<Group>) { (Object as any).assign(this, init); }\n}\n(Group as unknown)[immerable] = true;\n\nexport class PrePaid implements IHasId\n{\n public id: number|null;\n public accountId: number|null;\n public customerId: number|null;\n public billingItemId: number|null;\n public quantity: number|null;\n public used: number|null;\n public status: PrePaidStatus|null;\n public prePaidLastUsedOn: string|null;\n public expiryDate: string|null;\n\n public constructor(init?: Partial<PrePaid>) { (Object as any).assign(this, init); }\n}\n(PrePaid as unknown)[immerable] = true;\n\nexport class PrePaidLegacy extends PrePaid\n{\n public stockId: number|null;\n\n public constructor(init?: Partial<PrePaidLegacy>) { super(init); (Object as any).assign(this, init); }\n}\n(PrePaidLegacy as unknown)[immerable] = true;\n\nexport class PrePaidWithBillingDescription extends PrePaidLegacy\n{\n public billingItemDescription: string|null;\n\n public constructor(init?: Partial<PrePaidWithBillingDescription>) { super(init); (Object as any).assign(this, init); }\n}\n(PrePaidWithBillingDescription as unknown)[immerable] = true;\n\nexport class Stock implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public totalPrice: number|null;\n public description: string|null;\n public appointmentLength: number|null;\n public serviceTypeId: number|null;\n // @Ignore()\n public serviceTypeGuid: string|null;\n\n public crossLocationThreadId: string|null;\n public locationId: number|null;\n // @Ignore()\n public locationGuid: string|null;\n\n public colour: number|null;\n public inUse: boolean|null;\n public priceExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public costAmount: number|null;\n public costVATRate: number|null;\n public costExVAT: number|null;\n public costVATAmount: number|null;\n public longDescription: string|null;\n public ledgerCode: string|null;\n public barCodeReference: string|null;\n public reference: string|null;\n public category: string|null;\n public level: number|null;\n public minimumLevel: number|null;\n public displayInPriceList: boolean|null;\n public isMultiple: boolean|null;\n public isClass: boolean|null;\n public migrated: boolean|null;\n public supplierId: number|null;\n public isPrivateCharge: boolean|null;\n public groupName: string|null;\n public classification: string|null;\n public online: boolean|null;\n public onlineGuid: string|null;\n public ccsd: string|null;\n public iscCodeID: number|null;\n public templateSetId: number|null;\n public isVideo: boolean|null;\n public managementFee: boolean|null;\n public cancellationStockId: number|null;\n public didNotAttendStockId: number|null;\n public notes: string|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public tags: string[]|null;\n public specialismId: string|null;\n public credits: number|null;\n\n public constructor(init?: Partial<Stock>) { (Object as any).assign(this, init); }\n}\n(Stock as unknown)[immerable] = true;\n\nexport class GeneralBillingItemResponse extends BillingItem\n{\n public accountName: string|null;\n public practitionerName: string|null;\n public reference: string|null;\n public accountType: string|null;\n public auditId: string|null;\n public prontoAppointmentId: string|null;\n public apptProntoServiceId: string|null;\n public apptStockId: number|null;\n public apptBillingItemID: number|null;\n\n public constructor(init?: Partial<GeneralBillingItemResponse>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class ProntoServiceStock\n{\n public id: string|null;\n public name: string|null;\n public exVat: number|null;\n public vatRate: number|null;\n public stockOnlineGuid: string|null;\n public overrides: { [index:string]: string; }|null;\n public canBillCXX: boolean|null;\n public canBillDNA: boolean|null;\n public cancellationChargeServiceId: string|null;\n public dnaChargeServiceId: string|null;\n public serviceType: NetworkServiceType|null;\n public serviceNextAppointmentType: string|null;\n\n public constructor(init?: Partial<ProntoServiceStock>) { (Object as any).assign(this, init); }\n}\n(ProntoServiceStock as unknown)[immerable] = true;\n\nexport class InvoiceTemplate\n{\n public id: string|null;\n public type: number|null;\n public title: string|null;\n public bookerId: string|null;\n public template: string|null;\n public itemTemplate: string|null;\n public timeStamp: string|null;\n\n public constructor(init?: Partial<InvoiceTemplate>) { (Object as any).assign(this, init); }\n}\n(InvoiceTemplate as unknown)[immerable] = true;\n\nexport class ServiceStock extends ServiceCharge\n{\n public id: string|null;\n public name: string|null;\n public serviceType: NetworkServiceType|null;\n public serviceNextAppointmentType: string|null;\n public stockOnlineGuid: string|null;\n public overrides: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<ServiceStock>) { super(init); (Object as any).assign(this, init); }\n}\n(ServiceStock as unknown)[immerable] = true;\n\nexport class ProntoInvoiceSearchResponse\n{\n public invoice: ProntoInvoice|null;\n public schema: InvoiceTemplate|null;\n public inventory: ServiceStock[]|null;\n\n public constructor(init?: Partial<ProntoInvoiceSearchResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoInvoiceSearchResponse as unknown)[immerable] = true;\n\nexport class QuickBillResponse\n{\n public appointment: Appointment|null;\n public customer: QuickBill|null;\n public group: Group|null;\n public stockId: number|null;\n public ownerPractitionerId: number|null;\n public filterMode: string|null;\n public unpaidInvoices: Invoice[]|null;\n public prePaid: PrePaidWithBillingDescription[]|null;\n public prePaidInventory: Stock[]|null;\n public uninvoicedBillingItems: GeneralBillingItemResponse[]|null;\n public selfEmployed: boolean|null;\n public defaultBillTo: number|null;\n public fee: number|null;\n public config: Object|null;\n public userLocationId: number|null;\n public prontoServices: { [index:string]: ProntoServiceStock; }|null;\n public cardDetails: CardDetails|null;\n public clientSecret: string|null;\n public paymentMethodId: string|null;\n public paymentIntentId: string|null;\n public showMedipass: boolean|null;\n public isMyClinicIntegration: boolean|null;\n public prontoInvoiceSearchResponse: ProntoInvoiceSearchResponse|null;\n public meta: { [index:string]: Object; }|null;\n public failedProntoInvoices: number[]|null;\n public isProntoReferralBooking: boolean|null;\n public prontoBillToReferrer: boolean|null;\n\n public constructor(init?: Partial<QuickBillResponse>) { (Object as any).assign(this, init); }\n}\n(QuickBillResponse as unknown)[immerable] = true;\n\nexport class QuickbillMedipassResponse\n{\n public invoiceId: number|null;\n\n public constructor(init?: Partial<QuickbillMedipassResponse>) { (Object as any).assign(this, init); }\n}\n(QuickbillMedipassResponse as unknown)[immerable] = true;\n\nexport class AppointmentPrePaidResponse\n{\n\n public constructor(init?: Partial<AppointmentPrePaidResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentPrePaidResponse as unknown)[immerable] = true;\n\nexport class ReferralAttachment\n{\n public name: string|null;\n public extension: string|null;\n public fileSize: number|null;\n public dateCreated: string|null;\n public path: string|null;\n\n public constructor(init?: Partial<ReferralAttachment>) { (Object as any).assign(this, init); }\n}\n(ReferralAttachment as unknown)[immerable] = true;\n\nexport class AuditListDto\n{\n public auditId: string|null;\n public id: string|null;\n public type: number|null;\n public status: number|null;\n public message: string|null;\n public timeStamp: string|null;\n public metadata: { [index:string]: string; }|null;\n public attachments: ReferralAttachment[]|null;\n public title: string|null;\n public templateId: string|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<AuditListDto>) { (Object as any).assign(this, init); }\n}\n(AuditListDto as unknown)[immerable] = true;\n\nexport class MyClinicInvoiceResponse\n{\n public invoice: AuditListDto|null;\n public appointments: ReferralAppointmentResponse[]|null;\n\n public constructor(init?: Partial<MyClinicInvoiceResponse>) { (Object as any).assign(this, init); }\n}\n(MyClinicInvoiceResponse as unknown)[immerable] = true;\n\nexport class QuickBillCompleteResponse\n{\n public customerInvoiceId: number|null;\n public groupInvoiceId: number|null;\n public customerPaymentId: number|null;\n public customerInDebt: boolean|null;\n public groupPaymentId: number|null;\n public groupInvoiceTemplate: string|null;\n public appointmentAuthRemaining: RemainingAuths[]|null;\n public medipassPaymentInfo: { [index:string]: Object; }|null;\n public showMedipass: boolean|null;\n public prontoInvoiceResponse: MyClinicInvoiceResponse|null;\n\n public constructor(init?: Partial<QuickBillCompleteResponse>) { (Object as any).assign(this, init); }\n}\n(QuickBillCompleteResponse as unknown)[immerable] = true;\n\nexport class GroupServiceTypeOptions implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public serviceTypeID: number|null;\n // @Ignore()\n public serviceTypeGuid: string|null;\n\n public groupID: number|null;\n // @Ignore()\n public groupGuid: string|null;\n\n public useAuthCodes: boolean|null;\n public useDummyAuthCodes: boolean|null;\n public dummyCodePrefix: string|null;\n public cancelAffectsAuthCount: boolean|null;\n public dnaAffectsAuthCount: boolean|null;\n public authCodeGenerateMode: number|null;\n public authCodeGenerateAssess: number|null;\n public authCodeGenerateTreat: number|null;\n public authCodeGenerateAll: number|null;\n public globalGuid: string|null;\n public cancelAlwaysAffectsAuthCount: boolean|null;\n public cancelAffectsAuthCountDays: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<GroupServiceTypeOptions>) { (Object as any).assign(this, init); }\n}\n(GroupServiceTypeOptions as unknown)[immerable] = true;\n\nexport class GroupResponse\n{\n public id: number|null;\n public name: string|null;\n public contact: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public address: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public fax: string|null;\n public web: string|null;\n public email: string|null;\n public locationId: number|null;\n public showReferrals: boolean|null;\n public groupInvoices: string|null;\n public addressTo: string|null;\n public invoicePeriod: string|null;\n public contractNumber: string|null;\n public accountId: number|null;\n public accountType: string|null;\n public profileId: number|null;\n public invoiceFrequency: number|null;\n public invoiceWPID: number|null;\n public showVAT: boolean|null;\n public authorisationCode: string|null;\n public defaultMaxTreatments: number|null;\n public classification: string|null;\n public cancellationHours: number|null;\n public paysForDNA: boolean|null;\n public paysForCancel: boolean|null;\n public notificationEmail: string|null;\n public abbreviationPrefix: string|null;\n public online: boolean|null;\n public globalId: string|null;\n public cancelId: number|null;\n public dnaId: number|null;\n public alerts: AlertResponse[]|null;\n public locationIds: number[]|null;\n public balanceOwed: number|null;\n public balanceInvoiced: number|null;\n public uninvoicedCharges: number|null;\n public tm3InvoiceTemplate: string|null;\n public locationName: string|null;\n public meta: { [index:string]: Object; }|null;\n public dueDaysOverride: number|null;\n public serviceTypes: GroupServiceTypeOptions[]|null;\n public distributorGroupId: number|null;\n public isDistributor: boolean|null;\n public invoicePaymentTerms: string|null;\n public useInvoicePaymentTerms: boolean|null;\n public groupInvoiceByStockId: boolean|null;\n public billDistributor: boolean|null;\n public healthcodeEnabled: boolean|null;\n public minorUpperAgeLimit: number|null;\n public adolescentUpperAgeLimit: number|null;\n public medipassFunder: string|null;\n public medipassFunderCode: string|null;\n public isVatExempt: boolean|null;\n public financialAddress: string|null;\n public vatExemptionNumber: string|null;\n public vatExemptionExpiryDate: string|null;\n public allowedEmails: string|null;\n public onlineGuid: string|null;\n public referralPortalEnabled: boolean|null;\n public businessPortalTwoFactorAuthenticationEnabled: boolean|null;\n public childGroups: number[]|null;\n public authorisationExpiryInDays: number|null;\n public authorisationExpiryTriggerInDays: number|null;\n public remainingAuthorisationThreshold: number|null;\n\n public constructor(init?: Partial<GroupResponse>) { (Object as any).assign(this, init); }\n}\n(GroupResponse as unknown)[immerable] = true;\n\nexport class GroupServiceTypeOptionsResponse\n{\n public id: number|null;\n public serviceTypeID: number|null;\n public groupID: number|null;\n public useAuthCodes: boolean|null;\n public useDummyAuthCodes: boolean|null;\n public dummyCodePrefix: string|null;\n public groupDefaultAuthCount: number|null;\n public nextDummyCode: string|null;\n public cancelAffectsAuthCount: boolean|null;\n public dnaAffectsAuthCount: boolean|null;\n public authCodeGenerateMode: number|null;\n public authCodeGenerateAssess: number|null;\n public authCodeGenerateTreat: number|null;\n public authCodeGenerateAll: number|null;\n public cancelAlwaysAffectsAuthCount: boolean|null;\n public cancelAffectsAuthCountDays: number|null;\n\n public constructor(init?: Partial<GroupServiceTypeOptionsResponse>) { (Object as any).assign(this, init); }\n}\n(GroupServiceTypeOptionsResponse as unknown)[immerable] = true;\n\nexport class AppointmentEventBase\n{\n public id: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<AppointmentEventBase>) { (Object as any).assign(this, init); }\n}\n\nexport class BusinessResponse\n{\n public name: string|null;\n public isActive: boolean|null;\n public id: number|null;\n\n public constructor(init?: Partial<BusinessResponse>) { (Object as any).assign(this, init); }\n}\n(BusinessResponse as unknown)[immerable] = true;\n\nexport class HealthcodeSettingsResponse\n{\n public groups: BusinessResponse[]|null;\n public username: string|null;\n public password: string|null;\n public siteId: string|null;\n public senderCode: string|null;\n\n public constructor(init?: Partial<HealthcodeSettingsResponse>) { (Object as any).assign(this, init); }\n}\n(HealthcodeSettingsResponse as unknown)[immerable] = true;\n\nexport class ExportIssueBillingItem\n{\n public billingItemDate: string|null;\n public billingItemDescription: string|null;\n public billingItemTotal: number|null;\n public locationName: string|null;\n public problems: string[]|null;\n\n public constructor(init?: Partial<ExportIssueBillingItem>) { (Object as any).assign(this, init); }\n}\n(ExportIssueBillingItem as unknown)[immerable] = true;\n\nexport class ExportIssueInvoice\n{\n public invoiceReference: number|null;\n public customer: string|null;\n public problems: string[]|null;\n public billingItems: ExportIssueBillingItem[]|null;\n public problemCount: number|null;\n\n public constructor(init?: Partial<ExportIssueInvoice>) { (Object as any).assign(this, init); }\n}\n(ExportIssueInvoice as unknown)[immerable] = true;\n\nexport class ExportIssueResponse\n{\n public accountName: string|null;\n public problemCount: number|null;\n public invoices: ExportIssueInvoice[]|null;\n\n public constructor(init?: Partial<ExportIssueResponse>) { (Object as any).assign(this, init); }\n}\n(ExportIssueResponse as unknown)[immerable] = true;\n\nexport class ExportedInvoiceFileResponse\n{\n public name: string|null;\n public date: string|null;\n\n public constructor(init?: Partial<ExportedInvoiceFileResponse>) { (Object as any).assign(this, init); }\n}\n(ExportedInvoiceFileResponse as unknown)[immerable] = true;\n\nexport class HealthcodeImportSummaryResponse\n{\n public account: string|null;\n public type: string|null;\n public reference: string|null;\n public message: string|null;\n public status: string|null;\n\n public constructor(init?: Partial<HealthcodeImportSummaryResponse>) { (Object as any).assign(this, init); }\n}\n(HealthcodeImportSummaryResponse as unknown)[immerable] = true;\n\nexport class HealthcodeExportSummaryResponse\n{\n public invoiceReference: number|null;\n public date: string|null;\n public location: string|null;\n public patient: string|null;\n public total: number|null;\n\n public constructor(init?: Partial<HealthcodeExportSummaryResponse>) { (Object as any).assign(this, init); }\n}\n(HealthcodeExportSummaryResponse as unknown)[immerable] = true;\n\nexport class MailChimpLoginResponse\n{\n public apiKey: string|null;\n public username: string|null;\n\n public constructor(init?: Partial<MailChimpLoginResponse>) { (Object as any).assign(this, init); }\n}\n(MailChimpLoginResponse as unknown)[immerable] = true;\n\nexport class MailchimpList\n{\n public id: string|null;\n public name: string|null;\n public status: number|null;\n\n public constructor(init?: Partial<MailchimpList>) { (Object as any).assign(this, init); }\n}\n(MailchimpList as unknown)[immerable] = true;\n\nexport class AudiencesResponse\n{\n public lists: MailchimpList[]|null;\n public total: number|null;\n public success: number|null;\n public error: string|null;\n\n public constructor(init?: Partial<AudiencesResponse>) { (Object as any).assign(this, init); }\n}\n(AudiencesResponse as unknown)[immerable] = true;\n\nexport class MailChimpDuplicatesResponse\n{\n public customers: { [index:string]: AudienceMember[]; }|null;\n\n public constructor(init?: Partial<MailChimpDuplicatesResponse>) { (Object as any).assign(this, init); }\n}\n(MailChimpDuplicatesResponse as unknown)[immerable] = true;\n\nexport class PostcodeLookupResponse\n{\n public fullAddress: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n\n public constructor(init?: Partial<PostcodeLookupResponse>) { (Object as any).assign(this, init); }\n}\n(PostcodeLookupResponse as unknown)[immerable] = true;\n\nexport class CustomListItem\n{\n public text: string|null;\n public order: number|null;\n public id: number|null;\n public inUse: boolean|null;\n\n public constructor(init?: Partial<CustomListItem>) { (Object as any).assign(this, init); }\n}\n(CustomListItem as unknown)[immerable] = true;\n\nexport class CustomListItemResponse\n{\n public id: number|null;\n public category: string|null;\n public values: CustomListItem[]|null;\n\n public constructor(init?: Partial<CustomListItemResponse>) { (Object as any).assign(this, init); }\n}\n(CustomListItemResponse as unknown)[immerable] = true;\n\nexport class PractitionerGroupResponse\n{\n public id: number|null;\n public groupId: number|null;\n public providerNo: string|null;\n public groupName: string|null;\n\n public constructor(init?: Partial<PractitionerGroupResponse>) { (Object as any).assign(this, init); }\n}\n(PractitionerGroupResponse as unknown)[immerable] = true;\n\nexport class GroupLocationsResponse\n{\n public groupId: number|null;\n public groupName: string|null;\n\n public constructor(init?: Partial<GroupLocationsResponse>) { (Object as any).assign(this, init); }\n}\n(GroupLocationsResponse as unknown)[immerable] = true;\n\nexport class AddPractitionerResponse\n{\n public currentPractitioners: number|null;\n public licensedPractitioners: number|null;\n public canAddPractitioner: boolean|null;\n\n public constructor(init?: Partial<AddPractitionerResponse>) { (Object as any).assign(this, init); }\n}\n(AddPractitionerResponse as unknown)[immerable] = true;\n\nexport class MinimalPractitioner\n{\n public id: number|null;\n public forename: string|null;\n public surname: string|null;\n public title: string|null;\n public name: string|null;\n public status: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<MinimalPractitioner>) { (Object as any).assign(this, init); }\n}\n\nexport class PracStockLoc\n{\n public locationName: string|null;\n public locationId: number|null;\n public practitionerLocationLocationId: number|null;\n public practitionerServiceStockFirstStockId: number|null;\n public practitionerServiceStockFollowupStockId: number|null;\n public code: string|null;\n public firstStockDesc: string|null;\n public followUpStockDesc: string|null;\n public firstStockRef: string|null;\n public followUpStockRef: string|null;\n public firstStockTotalPrice: number|null;\n public followUpTotalPrice: number|null;\n public firstStockAppointmentLength: number|null;\n public followUpStockAppointmentLength: number|null;\n public firstServiceTypeId: number|null;\n public followUpServiceTypeId: number|null;\n public practitionerServiceTypeId: number|null;\n\n public constructor(init?: Partial<PracStockLoc>) { (Object as any).assign(this, init); }\n}\n(PracStockLoc as unknown)[immerable] = true;\n\nexport class PractitionerDiaryOrder\n{\n public practitionerId: number|null;\n public name: string|null;\n public order: number|null;\n\n public constructor(init?: Partial<PractitionerDiaryOrder>) { (Object as any).assign(this, init); }\n}\n\nexport class PractitionerDiaryOrderResponse\n{\n public locationId: number|null;\n public orderedPractitioners: PractitionerDiaryOrder[]|null;\n public total: number|null;\n\n public constructor(init?: Partial<PractitionerDiaryOrderResponse>) { (Object as any).assign(this, init); }\n}\n\nexport class SkillResponse\n{\n public id: string|null;\n public name: string|null;\n public inUse: boolean|null;\n\n public constructor(init?: Partial<SkillResponse>) { (Object as any).assign(this, init); }\n}\n(SkillResponse as unknown)[immerable] = true;\n\nexport class UpdateFieldBulkActionResponse\n{\n\n public constructor(init?: Partial<UpdateFieldBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(UpdateFieldBulkActionResponse as unknown)[immerable] = true;\n\nexport class AllowedReports\n{\n public triage: string|null;\n public initial: string|null;\n public discharge: string|null;\n public rfat: string|null;\n\n public constructor(init?: Partial<AllowedReports>) { (Object as any).assign(this, init); }\n}\n(AllowedReports as unknown)[immerable] = true;\n\nexport class BookingAuditResult extends AllowedReports\n{\n public id: string|null;\n public appointmentDate: string|null;\n public referralDate: string|null;\n public patient: string|null;\n public location: string|null;\n public practitioner: string|null;\n public group: string|null;\n public prontoStatus: string|null;\n public appointments: ReferralAppointment[]|null;\n public authorisations: ReferralAuthorisation[]|null;\n public serviceCharges: { [index:string]: ServiceCharge; }|null;\n public canReport: boolean|null;\n public canInvoice: boolean|null;\n public hasCharges: boolean|null;\n public needsAction: boolean|null;\n public bookerId: string|null;\n public appointmentId: string|null;\n public patientId: string|null;\n public bookingType: string|null;\n public referralStatus: number|null;\n public triageReportName: string|null;\n public initialReportName: string|null;\n public rfatReportName: string|null;\n public dischargeReportName: string|null;\n public customerForename: string|null;\n public customerTitle: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerTitle: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n public practitionerOnlineGuid: string|null;\n public workflowId: number|null;\n public referencePrefix: string|null;\n public workflowIdWithReferrerPrefix: string|null;\n public initialReportSubmissionDueDate: string|null;\n public hoursUntilReferralExpires: number|null;\n\n public constructor(init?: Partial<BookingAuditResult>) { super(init); (Object as any).assign(this, init); }\n}\n(BookingAuditResult as unknown)[immerable] = true;\n\nexport class MyBookingsResponse\n{\n public results: BookingAuditResult[]|null;\n public total: number|null;\n public all: number|null;\n public online: number|null;\n public referrals: number|null;\n public reception: number|null;\n public received: number|null;\n public awaiting: number|null;\n public rejected: number|null;\n public booking: number|null;\n public enterFirstReport: number|null;\n public inTreatment: number|null;\n public discharged: number|null;\n public complete: number|null;\n public none: number|null;\n public needsAction: number|null;\n public requiresIAReportSubmission: number|null;\n public appointmentsInThePast: number|null;\n public additionalAuthsAdded: number|null;\n public authsRevoked: number|null;\n public page: number|null;\n public totalPages: number|null;\n public filteredResultCount: number|null;\n\n public constructor(init?: Partial<MyBookingsResponse>) { (Object as any).assign(this, init); }\n}\n(MyBookingsResponse as unknown)[immerable] = true;\n\nexport class LocationDto\n{\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public email: string|null;\n public web: string|null;\n public fax: string|null;\n public status: number|null;\n public onlineGuid: string|null;\n public fullAddressMultiLine: string|null;\n\n public constructor(init?: Partial<LocationDto>) { (Object as any).assign(this, init); }\n}\n(LocationDto as unknown)[immerable] = true;\n\nexport class AttachmentFile\n{\n public name: string|null;\n public extension: string|null;\n public fileSize: number|null;\n public dateCreated: string|null;\n public path: string|null;\n\n public constructor(init?: Partial<AttachmentFile>) { (Object as any).assign(this, init); }\n}\n(AttachmentFile as unknown)[immerable] = true;\n\nexport class SingleBookingAuditResponse\n{\n public canReport: boolean|null;\n public canInvoice: boolean|null;\n public authorisations: number|null;\n public referrer: string|null;\n public audit: BookingAuditResponse|null;\n public reports: AuditListDto[]|null;\n public invoices: AuditListDto[]|null;\n public inventory: ServiceStock[]|null;\n public locations: LocationDto[]|null;\n public practitioners: PractitionerDto[]|null;\n public patient: { [index:string]: string; }|null;\n public defaults: { [index:string]: string; }|null;\n public attachments: AttachmentFile[]|null;\n public appointments: ReferralAppointment[]|null;\n public enableReportWizard: boolean|null;\n public isAppointmentLocationSelectionDisabled: boolean|null;\n public linkAppointmentsToReports: boolean|null;\n public linkInvoicesToReports: boolean|null;\n public onlyPastAppointmentsComplete: boolean|null;\n public disableInvoicingAppointmentsInThePast: boolean|null;\n public referencePrefix: string|null;\n public workflowIdWithReferrerPrefix: string|null;\n public referrerAlwaysRequiresAuthorisations: boolean|null;\n\n public constructor(init?: Partial<SingleBookingAuditResponse>) { (Object as any).assign(this, init); }\n}\n(SingleBookingAuditResponse as unknown)[immerable] = true;\n\nexport enum ProntoNetworkServiceType\n{\n Appointment = 'Appointment',\n Cancellation = 'Cancellation',\n DNA = 'DNA',\n}\n\nexport class ReferrerDto\n{\n public id: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<ReferrerDto>) { (Object as any).assign(this, init); }\n}\n(ReferrerDto as unknown)[immerable] = true;\n\nexport class ProntoClinicalService extends ClinicService\n{\n public locations: LocationDto[]|null;\n public practitioners: PractitionerDto[]|null;\n public stock: string|null;\n public referrers: ReferrerDto[]|null;\n\n public constructor(init?: Partial<ProntoClinicalService>) { super(init); (Object as any).assign(this, init); }\n}\n(ProntoClinicalService as unknown)[immerable] = true;\n\nexport class ProntoServiceDto\n{\n public id: string|null;\n public name: string|null;\n public order: number|null;\n public type: ProntoNetworkServiceType|null;\n public clinicalService: ProntoClinicalService|null;\n\n public constructor(init?: Partial<ProntoServiceDto>) { (Object as any).assign(this, init); }\n}\n(ProntoServiceDto as unknown)[immerable] = true;\n\nexport class ProntoDisciplineDto\n{\n public id: string|null;\n public name: string|null;\n public networkId: string|null;\n public description: string|null;\n public meta: { [index:string]: string; }|null;\n public defaultService: string|null;\n public services: ProntoServiceDto[]|null;\n\n public constructor(init?: Partial<ProntoDisciplineDto>) { (Object as any).assign(this, init); }\n}\n(ProntoDisciplineDto as unknown)[immerable] = true;\n\nexport class ProntoNetworkDto\n{\n public id: string|null;\n public name: string|null;\n public description: string|null;\n public disciplines: ProntoDisciplineDto[]|null;\n\n public constructor(init?: Partial<ProntoNetworkDto>) { (Object as any).assign(this, init); }\n}\n(ProntoNetworkDto as unknown)[immerable] = true;\n\nexport class ServiceDto\n{\n public clinicalService: ClinicService|null;\n\n public constructor(init?: Partial<ServiceDto>) { (Object as any).assign(this, init); }\n}\n(ServiceDto as unknown)[immerable] = true;\n\nexport class ClinicPractitionerResponse\n{\n public name: string|null;\n public practitionerProntoId: string|null;\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<ClinicPractitionerResponse>) { (Object as any).assign(this, init); }\n}\n(ClinicPractitionerResponse as unknown)[immerable] = true;\n\nexport class MyClinicSummaryResponse\n{\n public networks: ProntoNetworkDto[]|null;\n public services: ServiceDto[]|null;\n public referrers: ReferrerDto[]|null;\n public practitioners: ClinicPractitionerResponse[]|null;\n public locations: LocationDto[]|null;\n public hasReferrals: boolean|null;\n public hasReception: boolean|null;\n public hasOnline: boolean|null;\n public referrals: number|null;\n public reception: number|null;\n public online: number|null;\n public dataPoints: { [index:string]: { [index:string]: DataPoint; }; }|null;\n public provisional: boolean|null;\n\n public constructor(init?: Partial<MyClinicSummaryResponse>) { (Object as any).assign(this, init); }\n}\n(MyClinicSummaryResponse as unknown)[immerable] = true;\n\nexport class NestedLookupDto\n{\n public id: string|null;\n public name: string|null;\n public value: string|null;\n public timeStamp: string|null;\n public bookerId: string|null;\n\n public constructor(init?: Partial<NestedLookupDto>) { (Object as any).assign(this, init); }\n}\n(NestedLookupDto as unknown)[immerable] = true;\n\nexport class SectionDto\n{\n public id: string|null;\n public name: string|null;\n public body: string|null;\n public timeStamp: string|null;\n public bookerId: string|null;\n\n public constructor(init?: Partial<SectionDto>) { (Object as any).assign(this, init); }\n}\n(SectionDto as unknown)[immerable] = true;\n\nexport class ReportTemplateDto\n{\n public id: string|null;\n public type: number|null;\n public enabled: boolean|null;\n public title: string|null;\n public reportTemplateType: string|null;\n public bookerId: string|null;\n public template: string|null;\n public timeStamp: string|null;\n public lists: { [index:string]: NestedLookupDto; }|null;\n public sections: SectionDto[]|null;\n public mandatoryFieldOverrides: { [index:string]: { [index:string]: boolean; }; }|null;\n public labelOverrides: { [index:string]: { [index:string]: string; }; }|null;\n public customLists: { [index:string]: { [index:string]: string; }; }|null;\n public allowsAttachments: boolean|null;\n public requiresAttachment: boolean|null;\n public attachmentPromptText: string|null;\n\n public constructor(init?: Partial<ReportTemplateDto>) { (Object as any).assign(this, init); }\n}\n(ReportTemplateDto as unknown)[immerable] = true;\n\nexport class ReportSearchResponse\n{\n public report: ReferralReport|null;\n public schema: ReportTemplateDto|null;\n\n public constructor(init?: Partial<ReportSearchResponse>) { (Object as any).assign(this, init); }\n}\n(ReportSearchResponse as unknown)[immerable] = true;\n\nexport class SubmitReportResponse\n{\n public report: ReferralReport|null;\n public invoice: AuditListDto|null;\n public appointments: ReferralAppointment[]|null;\n\n public constructor(init?: Partial<SubmitReportResponse>) { (Object as any).assign(this, init); }\n}\n(SubmitReportResponse as unknown)[immerable] = true;\n\nexport class ClickLinkableAppointment extends ReferralAppointment\n{\n public description: string|null;\n public length: number|null;\n\n public constructor(init?: Partial<ClickLinkableAppointment>) { super(init); (Object as any).assign(this, init); }\n}\n(ClickLinkableAppointment as unknown)[immerable] = true;\n\nexport class BookingAuthorization\n{\n public applicationId: string|null;\n public bookerId: string|null;\n public extendedPermissions: { [index:string]: string; }|null;\n public clinicEnabled: boolean|null;\n public prontoActivated: boolean|null;\n public provisionals: boolean|null;\n\n public constructor(init?: Partial<BookingAuthorization>) { (Object as any).assign(this, init); }\n}\n(BookingAuthorization as unknown)[immerable] = true;\n\nexport class ClientWhoReceivesBookings implements IHasGuidId\n{\n public id: string|null;\n public provisional: boolean|null;\n public clientId: string|null;\n public type: string|null;\n public name: string|null;\n public settings: ClinicSettings|null;\n public authorizations: BookingAuthorization[]|null;\n public prontoPortalLockDate: string|null;\n\n public constructor(init?: Partial<ClientWhoReceivesBookings>) { (Object as any).assign(this, init); }\n}\n(ClientWhoReceivesBookings as unknown)[immerable] = true;\n\nexport enum BookerType\n{\n Reception = 'Reception',\n Referrer = 'Referrer',\n Online = 'Online',\n MyClinic = 'MyClinic',\n SysAdmin = 'SysAdmin',\n}\n\nexport class UserActivations\n{\n public userName: string|null;\n public userRole: string|null;\n public email: string|null;\n public displayName: string|null;\n public loginId: number|null;\n public enabled: boolean|null;\n public extendedPermissions: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<UserActivations>) { (Object as any).assign(this, init); }\n}\n(UserActivations as unknown)[immerable] = true;\n\nexport enum InvoicingMode\n{\n Off = 'Off',\n Fixed = 'Fixed',\n Flexable = 'Flexable',\n}\n\nexport enum ReportingMode\n{\n Off = 'Off',\n Bespoke = 'Bespoke',\n Default = 'Default',\n}\n\nexport class CWBSettings\n{\n public slaHours: number|null;\n public authCodeSessions: number|null;\n public clinicalDetails: boolean|null;\n public successURL: string|null;\n public hiddenFromThirdParties: boolean|null;\n public defaultNetworkId: string|null;\n public defaultServices: { [index:string]: string; }|null;\n public overridingClinicReferralCharge: { [index:string]: number; }|null;\n public onlineTitle: string|null;\n public onlineMessage: string|null;\n public onlineLogoUrl: string|null;\n public onlineEmail: string|null;\n public tempAllowFallbackToGroupCharges: boolean|null;\n public allInWeekRange: number|null;\n public confirmBooking: boolean|null;\n public sendPatientConfirmationEmail: boolean|null;\n public patientConfirmationTemplate: string|null;\n public invoicingMode: InvoicingMode|null;\n public reportingMode: ReportingMode|null;\n public sendOwnConfirmations: boolean|null;\n public referrerCurrency: string|null;\n public referralExpiryDays: number|null;\n\n public constructor(init?: Partial<CWBSettings>) { (Object as any).assign(this, init); }\n}\n(CWBSettings as unknown)[immerable] = true;\n\nexport class ClientWhoBooks implements IHasUsers\n{\n public id: string|null;\n public clientID: string|null;\n public name: string|null;\n public title: string|null;\n public email: string|null;\n public description: string|null;\n public type: BookerType|null;\n public users: UserActivations[]|null;\n public settings: CWBSettings|null;\n public currentSecret: string|null;\n public previousSecret: string|null;\n public enableSignUp: boolean|null;\n public caseflowUrl: string|null;\n public isTestReferrer: boolean|null;\n public disableAppointmentLocationSelection: boolean|null;\n public canSelectStock: boolean|null;\n public receivesActivationDeActivationEmails: boolean|null;\n public linkAppointmentsToReports: boolean|null;\n public linkInvoicesToReports: boolean|null;\n public authorization: BookingAuthorization|null;\n public referencePrefix: string|null;\n\n public constructor(init?: Partial<ClientWhoBooks>) { (Object as any).assign(this, init); }\n}\n(ClientWhoBooks as unknown)[immerable] = true;\n\nexport class MyClinicLocationResponse\n{\n public responseStatus: ResponseStatus|null;\n public result: LocationDto[]|null;\n\n public constructor(init?: Partial<MyClinicLocationResponse>) { (Object as any).assign(this, init); }\n}\n(MyClinicLocationResponse as unknown)[immerable] = true;\n\nexport class MyClinicPractitionerResponse\n{\n public result: PractitionerDto[]|null;\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<MyClinicPractitionerResponse>) { (Object as any).assign(this, init); }\n}\n(MyClinicPractitionerResponse as unknown)[immerable] = true;\n\nexport class GroupListResult\n{\n public id: number|null;\n public name: string|null;\n public globalId: string|null;\n public onlineGuid: string|null;\n\n public constructor(init?: Partial<GroupListResult>) { (Object as any).assign(this, init); }\n}\n(GroupListResult as unknown)[immerable] = true;\n\nexport class MyClinicGroupListResponse\n{\n public result: GroupListResult[]|null;\n\n public constructor(init?: Partial<MyClinicGroupListResponse>) { (Object as any).assign(this, init); }\n}\n(MyClinicGroupListResponse as unknown)[immerable] = true;\n\nexport class MyClinicWhoReceivesBookingsResponse\n{\n public clientWhoReceives: ClientWhoReceivesBookings|null;\n public clientsWhoBook: ClientWhoBooks[]|null;\n public locations: MyClinicLocationResponse|null;\n public practitioners: MyClinicPractitionerResponse|null;\n public groups: MyClinicGroupListResponse|null;\n\n public constructor(init?: Partial<MyClinicWhoReceivesBookingsResponse>) { (Object as any).assign(this, init); }\n}\n(MyClinicWhoReceivesBookingsResponse as unknown)[immerable] = true;\n\nexport class ProntoNetworkSettingsResponse\n{\n public myClinicWhoReceivesBookings: MyClinicWhoReceivesBookingsResponse|null;\n public networks: ProntoNetworkDto[]|null;\n public stock: ProntoStockDto[]|null;\n public locations: LocationDto[]|null;\n public practitioners: PractitionerDto[]|null;\n public referrers: GroupListResult[]|null;\n\n public constructor(init?: Partial<ProntoNetworkSettingsResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoNetworkSettingsResponse as unknown)[immerable] = true;\n\nexport class ClientWhoReceivesBookingsResponse extends ClientWhoReceivesBookings\n{\n\n public constructor(init?: Partial<ClientWhoReceivesBookingsResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(ClientWhoReceivesBookingsResponse as unknown)[immerable] = true;\n\nexport class ReportsResponse\n{\n public id: string|null;\n public reportId: string|null;\n public category: string|null;\n public name: string|null;\n public isLive: boolean|null;\n public description: string|null;\n public data: string|null;\n public colour: number|null;\n public url: string|null;\n public isFavourite: boolean|null;\n public colourCss: string|null;\n\n public constructor(init?: Partial<ReportsResponse>) { (Object as any).assign(this, init); }\n}\n(ReportsResponse as unknown)[immerable] = true;\n\nexport class StockAtLocationResponse\n{\n public id: number|null;\n public reference: string|null;\n public totalPrice: number|null;\n public priceExVAT: number|null;\n public vatAmount: number|null;\n public vatRate: number|null;\n public itemPrice: number|null;\n public description: string|null;\n public category: string|null;\n\n public constructor(init?: Partial<StockAtLocationResponse>) { (Object as any).assign(this, init); }\n}\n(StockAtLocationResponse as unknown)[immerable] = true;\n\nexport class StockOverride implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public stockId: number|null;\n // @Ignore()\n public stockGuid: string|null;\n\n public locationId: number|null;\n // @Ignore()\n public locationGuid: string|null;\n\n public priceExVAT: number|null;\n public totalPrice: number|null;\n public meta: { [index:string]: string; }|null;\n public globalGuid: string|null;\n public stockLevel: number|null;\n public stockMinimum: number|null;\n\n public constructor(init?: Partial<StockOverride>) { (Object as any).assign(this, init); }\n}\n(StockOverride as unknown)[immerable] = true;\n\nexport class StockListResponse\n{\n public stock: StockWithLocationResponse[]|null;\n public overrides: StockOverride[]|null;\n\n public constructor(init?: Partial<StockListResponse>) { (Object as any).assign(this, init); }\n}\n(StockListResponse as unknown)[immerable] = true;\n\nexport class StockOnlineCategoryResponse\n{\n public id: string|null;\n public title: string|null;\n\n public constructor(init?: Partial<StockOnlineCategoryResponse>) { (Object as any).assign(this, init); }\n}\n(StockOnlineCategoryResponse as unknown)[immerable] = true;\n\nexport class StockWithCategoryResponse\n{\n public stock: StockWithLocationResponse|null;\n public category: OnlineServiceCategory|null;\n\n public constructor(init?: Partial<StockWithCategoryResponse>) { (Object as any).assign(this, init); }\n}\n(StockWithCategoryResponse as unknown)[immerable] = true;\n\nexport class SupplierResponse\n{\n public id: number|null;\n public reference: string|null;\n public name: string|null;\n public contact: string|null;\n public telephone: string|null;\n public email: string|null;\n public address: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public accountNo: string|null;\n public web: string|null;\n public locationName: string|null;\n public locationId: number|null;\n public current: boolean|null;\n public vatNumber: string|null;\n\n public constructor(init?: Partial<SupplierResponse>) { (Object as any).assign(this, init); }\n}\n(SupplierResponse as unknown)[immerable] = true;\n\nexport class AuditResponse\n{\n public id: number|null;\n public objectId: number|null;\n public objectType: string|null;\n public objectTypeString: string|null;\n public action: string|null;\n public actionString: string|null;\n public actionDetail: string|null;\n public dateTime: string|null;\n public user: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public name: string|null;\n public oldRowData: string|null;\n public newRowData: string|null;\n\n public constructor(init?: Partial<AuditResponse>) { (Object as any).assign(this, init); }\n}\n(AuditResponse as unknown)[immerable] = true;\n\nexport class ServiceTypeResponse\n{\n public id: number|null;\n public name: string|null;\n public clinicalAccessMode: AccessMode|null;\n public patientAccessMode: AccessMode|null;\n public isCurrent: boolean|null;\n public usesScores: boolean|null;\n public usesGoals: boolean|null;\n public usesImages: boolean|null;\n public labelOverrides: { [index:string]: string; }|null;\n public listOverrides: { [index:string]: string; }|null;\n public configOverrides: { [index:string]: string; }|null;\n public workflowAccessMode: AccessMode|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<ServiceTypeResponse>) { (Object as any).assign(this, init); }\n}\n(ServiceTypeResponse as unknown)[immerable] = true;\n\nexport class ClassTypeResponse\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public imageUrl: string|null;\n public termsAndConditionsFormId: string|null;\n public colour: number|null;\n public defaultSessionLength: number|null;\n public defaultMinAttendees: number|null;\n public defaultMaxAttendees: number|null;\n public isAvailableOnline: boolean|null;\n public cancellationChargeApplies: boolean|null;\n public cancellationHours: number|null;\n public isCurrent: boolean|null;\n public isCourse: boolean|null;\n public isFavourite: boolean|null;\n public lateTransferChargeApplies: boolean|null;\n public lateTransferHours: number|null;\n public allowPayPerSession: boolean|null;\n public stockId: number|null;\n public stockDesription: string|null;\n public stockPrice: number|null;\n public colourCss: string|null;\n public packages: ClassPackageResponse[]|null;\n public transferStockId: number|null;\n public cancellationStockId: number|null;\n public cancellationPrice: number|null;\n public serviceTypeId: number|null;\n public numberOfSessions: number|null;\n public isVideo: boolean|null;\n public stockCredits: number|null;\n\n public constructor(init?: Partial<ClassTypeResponse>) { (Object as any).assign(this, init); }\n}\n(ClassTypeResponse as unknown)[immerable] = true;\n\nexport class TagResponse\n{\n public id: string|null;\n public name: string|null;\n public type: TagEntityType|null;\n public colour: string|null;\n public isActive: boolean|null;\n public isInverted: boolean|null;\n public showInLists: boolean|null;\n\n public constructor(init?: Partial<TagResponse>) { (Object as any).assign(this, init); }\n}\n(TagResponse as unknown)[immerable] = true;\n\nexport class LookupResponse\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n public niceName: string|null;\n public values: string[]|null;\n public order: number|null;\n\n public constructor(init?: Partial<LookupResponse>) { (Object as any).assign(this, init); }\n}\n(LookupResponse as unknown)[immerable] = true;\n\nexport class SecurityResponse\n{\n public roleMap: { [index:number]: number; }|null;\n public roles: { [index:number]: { [index:string]: boolean; }; }|null;\n public editableServiceTypeIds: number[]|null;\n\n public constructor(init?: Partial<SecurityResponse>) { (Object as any).assign(this, init); }\n}\n(SecurityResponse as unknown)[immerable] = true;\n\nexport class DynamicLabelResponse\n{\n public id: string|null;\n public languageSwitch: string|null;\n public text: string|null;\n public extraText: string|null;\n public extraTextType: string|null;\n\n public constructor(init?: Partial<DynamicLabelResponse>) { (Object as any).assign(this, init); }\n}\n(DynamicLabelResponse as unknown)[immerable] = true;\n\n// @Route(\"/discountcode\", \"POST, PUT, DELETE\")\nexport class DiscountCodeDto implements IReturn<DiscountCodeWithDiscountValueDto>\n{\n public id: string|null;\n public code: string|null;\n public description: string|null;\n public value: number|null;\n public type: DiscountType|null;\n public validFrom: string|null;\n public validTo: string|null;\n public displayText: string|null;\n public isInUse: boolean|null;\n public enableForConnect: boolean|null;\n public enabledForAllServices: boolean|null;\n public status: DiscountStatus|null;\n public enforcePatientLimit: boolean|null;\n public limitPerPatient: number|null;\n\n public constructor(init?: Partial<DiscountCodeDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiscountCodeDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DiscountCodeWithDiscountValueDto(); }\n}\n(DiscountCodeDto as unknown)[immerable] = true;\n\nexport class DiscountCodeWithDiscountValueDto extends DiscountCodeDto\n{\n public totalExVat: Object|null;\n public price: Object|null;\n public total: Object|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DiscountCodeWithDiscountValueDto>) { super(init); (Object as any).assign(this, init); }\n}\n(DiscountCodeWithDiscountValueDto as unknown)[immerable] = true;\n\nexport class CacheResponse\n{\n public inventory: { [index:string]: StockWithLocationResponse; }|null;\n public locations: { [index:string]: LocationResponse; }|null;\n public customerLocations: { [index:string]: LocationResponse; }|null;\n public services: { [index:string]: ServiceTypeResponse; }|null;\n public classTypes: { [index:string]: ClassTypeResponse; }|null;\n public rooms: { [index:string]: RoomResponse; }|null;\n public groups: { [index:string]: GroupResponse; }|null;\n public tags: { [index:string]: TagResponse; }|null;\n public practitioners: { [index:string]: GeneralPractitionerResponse; }|null;\n public lookups: { [index:string]: LookupResponse; }|null;\n public permissions: SecurityResponse|null;\n public practitionerLocations: { [index:string]: PractitionerLocation; }|null;\n public suppliers: { [index:string]: SupplierResponse; }|null;\n public keys: { [index:string]: string; }|null;\n public currentUserId: string|null;\n public alphabetical: boolean|null;\n public nestedLookups: { [index:string]: NestedLookup; }|null;\n public dynamicLabels: { [index:string]: DynamicLabelResponse; }|null;\n public skills: { [index:string]: SkillResponse; }|null;\n public discountCodes: { [index:string]: DiscountCodeWithDiscountValueDto; }|null;\n\n public constructor(init?: Partial<CacheResponse>) { (Object as any).assign(this, init); }\n}\n(CacheResponse as unknown)[immerable] = true;\n\nexport class SingleCacheMapResponse<T>\n{\n public version: string|null;\n public value: { [index:string]: T; }|null;\n\n public constructor(init?: Partial<SingleCacheMapResponse<T>>) { (Object as any).assign(this, init); }\n}\n\nexport class LookupCacheResponse extends SingleCacheMapResponse<LookupResponse>\n{\n\n public constructor(init?: Partial<LookupCacheResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(LookupCacheResponse as unknown)[immerable] = true;\n\nexport class SystemDictionary implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public key: string|null;\n public value: string|null;\n public language: number|null;\n public visible: number|null;\n public keyID: number|null;\n public globalGuid: string|null;\n // @Ignore()\n public pluralKey: string|null;\n\n // @Ignore()\n public plural: string|null;\n\n // @Ignore()\n public possessiveKey: string|null;\n\n // @Ignore()\n public possessive: string|null;\n\n // @Ignore()\n public pluralPossessiveKey: string|null;\n\n // @Ignore()\n public pluralPossessive: string|null;\n\n public constructor(init?: Partial<SystemDictionary>) { (Object as any).assign(this, init); }\n}\n(SystemDictionary as unknown)[immerable] = true;\n\nexport class ExtendedNotesResponse\n{\n public id: number|null;\n public type: string|null;\n public typeId: string|null;\n public typeGuid: string|null;\n public title: string|null;\n public entry: string|null;\n public lockMode: string|null;\n public lockValue: number|null;\n public lastModified: string|null;\n public date: string|null;\n public alert: boolean|null;\n public userName: string|null;\n public hidden: boolean|null;\n public serviceTypeId: number|null;\n public acknowledgementRequired: boolean|null;\n public alertStartDate: string|null;\n public alertExpiryDate: string|null;\n\n public constructor(init?: Partial<ExtendedNotesResponse>) { (Object as any).assign(this, init); }\n}\n(ExtendedNotesResponse as unknown)[immerable] = true;\n\nexport class ExtendedNotes implements IHasId\n{\n public id: number|null;\n public type: string|null;\n public typeId: number|null;\n public icon: string|null;\n public colour: string|null;\n public title: string|null;\n public entry: string|null;\n public lockMode: string|null;\n public lockValue: number|null;\n public lastModified: string|null;\n public alert: boolean|null;\n public lastUserId: number|null;\n public typeGuid: string|null;\n public serviceTypeId: number|null;\n public acknowledgementRequired: boolean|null;\n public alertStartDate: string|null;\n public alertExpiryDate: string|null;\n public contextObjectType: TimelineContextObjectType|null;\n public contextId: number|null;\n public linkedObjectType: TimelineLinkedObjectType|null;\n public linkedObjectId: number|null;\n public noteType: string|null;\n\n public constructor(init?: Partial<ExtendedNotes>) { (Object as any).assign(this, init); }\n}\n(ExtendedNotes as unknown)[immerable] = true;\n\nexport class ExtendedNotesWithUserName extends ExtendedNotes\n{\n public userName: string|null;\n public fullName: string|null;\n public roleLevel: string|null;\n // @Ignore()\n public hidden: boolean|null;\n\n public constructor(init?: Partial<ExtendedNotesWithUserName>) { super(init); (Object as any).assign(this, init); }\n}\n(ExtendedNotesWithUserName as unknown)[immerable] = true;\n\nexport class NestedLookupResponse\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n public alternates: string[]|null;\n public groupId: number|null;\n public globalId: string|null;\n public syncToPronto: boolean|null;\n public lastSyncDate: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<NestedLookupResponse>) { (Object as any).assign(this, init); }\n}\n(NestedLookupResponse as unknown)[immerable] = true;\n\nexport class RegionalLookup implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public country: string|null;\n public city: string|null;\n public region: string|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<RegionalLookup>) { (Object as any).assign(this, init); }\n}\n(RegionalLookup as unknown)[immerable] = true;\n\nexport class SecurityStat\n{\n public requestName: string|null;\n public routes: string[]|null;\n public methods: string[]|null;\n public security: string[]|null;\n public implemented: boolean|null;\n public hasIReturn: boolean|null;\n public isAuthenticated: boolean|null;\n\n public constructor(init?: Partial<SecurityStat>) { (Object as any).assign(this, init); }\n}\n(SecurityStat as unknown)[immerable] = true;\n\nexport class TaskResponse\n{\n public id: number|null;\n public createdDate: string|null;\n public dueDate: string|null;\n public dueTime: string|null;\n public description: string|null;\n public status: string|null;\n public userId: number|null;\n public reminder: boolean|null;\n public priority: boolean|null;\n public createdUserId: number|null;\n public dateCompleted: string|null;\n public patientId: number|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public patientName: string|null;\n public private: boolean|null;\n public tags: string[]|null;\n\n public constructor(init?: Partial<TaskResponse>) { (Object as any).assign(this, init); }\n}\n(TaskResponse as unknown)[immerable] = true;\n\nexport class UserRoleLocationWithUserName extends UserRoleLocation\n{\n public userName: string|null;\n public type: string|null;\n public current: boolean|null;\n\n public constructor(init?: Partial<UserRoleLocationWithUserName>) { super(init); (Object as any).assign(this, init); }\n}\n(UserRoleLocationWithUserName as unknown)[immerable] = true;\n\nexport class ScoresGoalsSettingsResponse\n{\n public id: number|null;\n public type: string|null;\n public name: string|null;\n public max: number|null;\n public min: number|null;\n public enabled: boolean|null;\n public inUse: boolean|null;\n\n public constructor(init?: Partial<ScoresGoalsSettingsResponse>) { (Object as any).assign(this, init); }\n}\n(ScoresGoalsSettingsResponse as unknown)[immerable] = true;\n\nexport class DnsInfo\n{\n public valid: boolean|null;\n public type: string|null;\n public host: string|null;\n public data: string|null;\n\n public constructor(init?: Partial<DnsInfo>) { (Object as any).assign(this, init); }\n}\n(DnsInfo as unknown)[immerable] = true;\n\nexport class DomainAuthenticationStatusResponse\n{\n public id: number|null;\n public user_id: number|null;\n public subdomain: string|null;\n public domain: string|null;\n public valid: boolean|null;\n public dns: { [index:string]: DnsInfo; }|null;\n\n public constructor(init?: Partial<DomainAuthenticationStatusResponse>) { (Object as any).assign(this, init); }\n}\n(DomainAuthenticationStatusResponse as unknown)[immerable] = true;\n\nexport class AuthenticateDomainResponse\n{\n public id: number|null;\n public user_id: number|null;\n public subdomain: string|null;\n public domain: string|null;\n public username: string|null;\n\n public constructor(init?: Partial<AuthenticateDomainResponse>) { (Object as any).assign(this, init); }\n}\n(AuthenticateDomainResponse as unknown)[immerable] = true;\n\nexport class ValidationModel\n{\n public valid: boolean|null;\n public reason: string|null;\n\n public constructor(init?: Partial<ValidationModel>) { (Object as any).assign(this, init); }\n}\n(ValidationModel as unknown)[immerable] = true;\n\nexport class ValidateDomainResponse\n{\n public id: number|null;\n public valid: boolean|null;\n public validation_results: { [index:string]: ValidationModel; }|null;\n\n public constructor(init?: Partial<ValidateDomainResponse>) { (Object as any).assign(this, init); }\n}\n(ValidateDomainResponse as unknown)[immerable] = true;\n\nexport class StockReorder\n{\n public location: string|null;\n public locationStatus: LocationStatus|null;\n public stockDescription: string|null;\n public stockReference: string|null;\n public priceEXVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public totalPrice: number|null;\n public costPrice: number|null;\n public minimumLevel: number|null;\n public currentLevel: number|null;\n public stockStatus: string|null;\n public reorder: string|null;\n public supplier: string|null;\n\n public constructor(init?: Partial<StockReorder>) { (Object as any).assign(this, init); }\n}\n(StockReorder as unknown)[immerable] = true;\n\nexport class StockSales\n{\n public stockDescription: string|null;\n public stockReference: string|null;\n public priceEXVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public totalPrice: number|null;\n public quantity: number|null;\n public chargeTotal: number|null;\n public chargeDate: string|null;\n public stockLocation: string|null;\n public ageGrouping: string|null;\n\n public constructor(init?: Partial<StockSales>) { (Object as any).assign(this, init); }\n}\n(StockSales as unknown)[immerable] = true;\n\nexport class InvoiceAnalysisReport\n{\n public invoiceLocation: string|null;\n public invoiceReference: string|null;\n public accountName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public accountType: string|null;\n public invoiceDate: string|null;\n public totalEXVAT: number|null;\n public vatAmount: number|null;\n public invoiceGrandTotal: number|null;\n public amountPaid: number|null;\n public remaining: number|null;\n public fullyPaidDate: string|null;\n public invoiceStatus: string|null;\n public patientsOnInvoice: string|null;\n public practitionersOnInvoice: string|null;\n public practitionerStatus: number|null;\n public locationStatus: LocationStatus|null;\n\n public constructor(init?: Partial<InvoiceAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(InvoiceAnalysisReport as unknown)[immerable] = true;\n\nexport class IncomeAnalysisReport\n{\n public incomeLocation: string|null;\n public practitionerStatus: number|null;\n public locationStatus: LocationStatus|null;\n public accountName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public accountType: string|null;\n public incomeReference: string|null;\n public lodgementReference: string|null;\n public incomeDate: string|null;\n public incomeAmount: number|null;\n public amountUsed: number|null;\n public remaining: number|null;\n public incomeOtherPaymentMethod: string|null;\n public incomeStatus: string|null;\n public associatedInvoices: string|null;\n public associatedPractitioners: string|null;\n\n public constructor(init?: Partial<IncomeAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(IncomeAnalysisReport as unknown)[immerable] = true;\n\nexport class ExpenditureMonthSummary\n{\n public year: number|null;\n public monthNumber: number|null;\n public month: string|null;\n public totalExpenditure: number|null;\n\n public constructor(init?: Partial<ExpenditureMonthSummary>) { (Object as any).assign(this, init); }\n}\n(ExpenditureMonthSummary as unknown)[immerable] = true;\n\nexport class ExpenditureAnalysisReportDto\n{\n public expenditureCategory: string|null;\n public expenditureOtherPaymentMethod: string|null;\n public supplierName: string|null;\n public expenditureDate: string|null;\n public expenditureReference: string|null;\n public description: string|null;\n public expenditureAmountExVAT: number|null;\n public expenditureVATRate: number|null;\n public expenditureVATAmount: number|null;\n public expenditureTotal: number|null;\n\n public constructor(init?: Partial<ExpenditureAnalysisReportDto>) { (Object as any).assign(this, init); }\n}\n(ExpenditureAnalysisReportDto as unknown)[immerable] = true;\n\nexport class AgedDebtors\n{\n public accountName: string|null;\n public invoiceStatus: string|null;\n public invoiceStatusName: string|null;\n public invoiceGrandTotal: number|null;\n public invoiceAmountPaid: number|null;\n public invoiceAmountOutstanding: number|null;\n public invoiceAge: number|null;\n public ageCategory: string|null;\n public invoiceReference: string|null;\n public accountType: string|null;\n public accountAddressLine1: string|null;\n public accountAddressLine2: string|null;\n public accountAddressLine3: string|null;\n public accountAddressLine4: string|null;\n public accountAddressLine5: string|null;\n public customerAddress: string|null;\n public accountPostCode: string|null;\n public invoiceDate: string|null;\n public month: string|null;\n public year: string|null;\n public patientReference: string|null;\n public patientName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public patientAge: number|null;\n public ageGrouping: string|null;\n public accountBalanceInvoiced: number|null;\n public locationName: string|null;\n public locationStatus: LocationStatus|null;\n public patientOnInvoice: string|null;\n\n public constructor(init?: Partial<AgedDebtors>) { (Object as any).assign(this, init); }\n}\n(AgedDebtors as unknown)[immerable] = true;\n\nexport class DebtorsByAccount\n{\n public locationId: number|null;\n public locationStatus: LocationStatus|null;\n public accountLocation: string|null;\n public accountName: string|null;\n public invoiceStatus: string|null;\n public invoiceStatusName: string|null;\n public invoiceGrandTotal: number|null;\n public invoiceReference: string|null;\n public accountType: string|null;\n public accountTypeName: string|null;\n public accountAddressLine1: string|null;\n public accountAddressLine2: string|null;\n public accountAddressLine3: string|null;\n public accountAddressLine4: string|null;\n public accountAddressLine5: string|null;\n public customerAddress: string|null;\n public accountPostCode: string|null;\n public amountPaid: number|null;\n public invoiceDate: string|null;\n public month: string|null;\n public year: string|null;\n public patientReference: string|null;\n public patientId: number|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public patientName: string|null;\n public accountBalanceInvoiced: number|null;\n public accountId: number|null;\n public accountDetails: string|null;\n public balanceText: string|null;\n public patientAge: string|null;\n public ageGrouping: string|null;\n public singlePatient: boolean|null;\n public invoiceAmountLeft: number|null;\n public patientOnInvoice: string|null;\n\n public constructor(init?: Partial<DebtorsByAccount>) { (Object as any).assign(this, init); }\n}\n(DebtorsByAccount as unknown)[immerable] = true;\n\nexport class DebtorsOnADate\n{\n public accountID: number|null;\n public accountingDate: string|null;\n public accountingType: string|null;\n public accountType: string|null;\n public accountName: string|null;\n public accountTypeName: string|null;\n public ageGrouping: string|null;\n public daysInDebt: number|null;\n public groupID: number|null;\n public groupName: string|null;\n public incomeID: number|null;\n public incomeReference: string|null;\n public invoiceDescription: string|null;\n public invoiceID: number|null;\n public invoiceStatusOnDate: string|null;\n public itemDate: string|null;\n public date: string|null;\n public dob: string|null;\n public itemReference: string|null;\n public locationID: number|null;\n public locationName: string|null;\n public locationStatus: LocationStatus|null;\n public patientAge: number|null;\n public patientName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerReference: string|null;\n public paymentAmount: number|null;\n public remaining: number|null;\n public total: number|null;\n public tType: string|null;\n\n public constructor(init?: Partial<DebtorsOnADate>) { (Object as any).assign(this, init); }\n}\n(DebtorsOnADate as unknown)[immerable] = true;\n\nexport class ChargesAnalysisReport\n{\n public chargeLocation: string|null;\n public billingItemDate: string|null;\n public billingItemLedgerCode: string|null;\n public patientName: string|null;\n public customerID: number|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public billedTo: string|null;\n public accountType: string|null;\n public chargeDescription: string|null;\n public billingItemCategory: string|null;\n public chargeQuantity: number|null;\n public totalExVat: number|null;\n public totalVAT: number|null;\n public chargeTotal: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerStatus: number|null;\n public locationStatus: LocationStatus|null;\n public commissionType: string|null;\n public commissionValue: number|null;\n public stockReference: string|null;\n public invoiceReference: string|null;\n public authCode: string|null;\n\n public constructor(init?: Partial<ChargesAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(ChargesAnalysisReport as unknown)[immerable] = true;\n\nexport class PractitionerAvailabilityReport\n{\n public locationId: number|null;\n public location: string|null;\n public practitionerName: string|null;\n public totalSessionTime: number|null;\n public meetingDuration: number|null;\n public otherDuration: number|null;\n public holidayDuration: number|null;\n public completedAppointmentDuration: number|null;\n public cancelledAppointmentsDuration: number|null;\n public dnaAppointmentsDuration: number|null;\n public weekBeginning: string|null;\n public monthNumber: number|null;\n public year: number|null;\n public monthName: string|null;\n public actualAvailableTime: number|null;\n public completedClassesDuration: number|null;\n public diaryUtilisation: number|null;\n\n public constructor(init?: Partial<PractitionerAvailabilityReport>) { (Object as any).assign(this, init); }\n}\n(PractitionerAvailabilityReport as unknown)[immerable] = true;\n\nexport class PractitionerAvailabilityReportResponse\n{\n public results: PractitionerAvailabilityReport[]|null;\n public totals: { [index:string]: number; }|null;\n public total: number|null;\n\n public constructor(init?: Partial<PractitionerAvailabilityReportResponse>) { (Object as any).assign(this, init); }\n}\n(PractitionerAvailabilityReportResponse as unknown)[immerable] = true;\n\nexport class AdmissionsAnalysisReport\n{\n public admissionCode: string|null;\n public admissionDate: string|null;\n public referralDate: string|null;\n public ageGrouping: string|null;\n public bodySite: string|null;\n public customerCategory: string|null;\n public customerContact: string|null;\n public customerHomeTelephone: string|null;\n public customerWorkTelephone: string|null;\n public customerMobileTelephone: string|null;\n public customerEmail: string|null;\n public customerDateOfBirth: string|null;\n public customerId: number|null;\n public customerName: string|null;\n public medicalContact: string|null;\n public locationName: string|null;\n public contactTitle: string|null;\n public contactForename: string|null;\n public contactSurname: string|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public diagnosisCode: string|null;\n public groupId: number|null;\n public locationId: number|null;\n public groupName: string|null;\n public id: number|null;\n public practitionerId: number|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerTitle: string|null;\n public reference: number|null;\n\n public constructor(init?: Partial<AdmissionsAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(AdmissionsAnalysisReport as unknown)[immerable] = true;\n\nexport class AverageTreatmentsReport\n{\n public grouping: string|null;\n public locationId: number|null;\n public location: string|null;\n public totalCases: number|null;\n public totalTreatments: number|null;\n public averageTreatments: number|null;\n public averageDaysSpan: number|null;\n\n public constructor(init?: Partial<AverageTreatmentsReport>) { (Object as any).assign(this, init); }\n}\n(AverageTreatmentsReport as unknown)[immerable] = true;\n\nexport class AverageTreatmentsReportResponse\n{\n public results: AverageTreatmentsReport[]|null;\n public total: number|null;\n public totals: { [index:string]: number; }|null;\n\n public constructor(init?: Partial<AverageTreatmentsReportResponse>) { (Object as any).assign(this, init); }\n}\n(AverageTreatmentsReportResponse as unknown)[immerable] = true;\n\nexport class CasesDueForReviewReport\n{\n public locationName: string|null;\n public locationId: number|null;\n public caseReference: string|null;\n public customerReference: string|null;\n public clientName: string|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public addressLine1: string|null;\n public postCode: string|null;\n public diagnosisCode: string|null;\n public dischargeDate: string|null;\n public reviewDate: string|null;\n public admissionDate: string|null;\n public numberOfAppointments: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerId: number|null;\n public customerMobileTelephone: string|null;\n public customerHomeTelephone: string|null;\n public customerWorkTelephone: string|null;\n public customerContact: string|null;\n\n public constructor(init?: Partial<CasesDueForReviewReport>) { (Object as any).assign(this, init); }\n}\n(CasesDueForReviewReport as unknown)[immerable] = true;\n\nexport class CurrentCaseLoadReport\n{\n public id: number|null;\n public admissionDate: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public diagnosisCode: string|null;\n public bodySite: string|null;\n public appointmentType: string|null;\n public customerAddress: string|null;\n public customerForename: string|null;\n public customerName: string|null;\n public customerSurname: string|null;\n public customerTitle: string|null;\n public customerEmail: string|null;\n public customerMobileTelephone: string|null;\n public customerHomeTelephone: string|null;\n public customerWorkTelephone: string|null;\n public customerContact: string|null;\n public groupName: string|null;\n public locationName: string|null;\n public locationId: number|null;\n public practitionerForename: string|null;\n public practitionerName: string|null;\n public practitionerSurname: string|null;\n public practitionerTitle: string|null;\n public practitionerId: number|null;\n public reference: number|null;\n public bookingMethod: string|null;\n public lastAppointmentDate: string|null;\n\n public constructor(init?: Partial<CurrentCaseLoadReport>) { (Object as any).assign(this, init); }\n}\n(CurrentCaseLoadReport as unknown)[immerable] = true;\n\nexport class CurrentCaseLoadReportResponse\n{\n public results: CurrentCaseLoadReport[]|null;\n public total: number|null;\n public totals: { [index:string]: number; }|null;\n\n public constructor(init?: Partial<CurrentCaseLoadReportResponse>) { (Object as any).assign(this, init); }\n}\n(CurrentCaseLoadReportResponse as unknown)[immerable] = true;\n\nexport class DischargeAnalysisReport\n{\n public locationId: number|null;\n public location: string|null;\n public admissionDate: string|null;\n public dischargeDate: string|null;\n public referralDate: string|null;\n public totalAppointments: string|null;\n public bodySite: string|null;\n public admissionCode: string|null;\n public diagnosisCode: string|null;\n public injuryCause: string|null;\n public dateOfBirth: string|null;\n public caseRef: string|null;\n public surname: string|null;\n public title: string|null;\n public forename: string|null;\n public customerName: string|null;\n public customerId: number|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public customerAddress: string|null;\n public mobile: string|null;\n public work: string|null;\n public home: string|null;\n public customerContact: string|null;\n public customerEmail: string|null;\n public postCode: string|null;\n public caseReferenceId: number|null;\n public groupName: string|null;\n public clientRef: string|null;\n public ageGrouping: string|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n\n public constructor(init?: Partial<DischargeAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(DischargeAnalysisReport as unknown)[immerable] = true;\n\nexport class DischargeAnalysisReportResponse\n{\n public results: DischargeAnalysisReport[]|null;\n public totals: { [index:string]: number; }|null;\n\n public constructor(init?: Partial<DischargeAnalysisReportResponse>) { (Object as any).assign(this, init); }\n}\n(DischargeAnalysisReportResponse as unknown)[immerable] = true;\n\nexport class LapsedPatientsReport\n{\n public groupName: string|null;\n public locationName: string|null;\n public locationId: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerId: number|null;\n public admissionDate: string|null;\n public caseReference: string|null;\n public customerId: number|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public clientName: string|null;\n public email: string|null;\n public mobileTelephone: string|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public customerContact: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public customerReference: string|null;\n public customerAddress: string|null;\n public postCode: string|null;\n public diagnosisCode: string|null;\n public dischargeDate: string|null;\n public bodySite: string|null;\n public myProperty: number|null;\n public lastAppointment: string|null;\n public remainingAuthorisation: string|null;\n public authExpiryDate: string|null;\n\n public constructor(init?: Partial<LapsedPatientsReport>) { (Object as any).assign(this, init); }\n}\n(LapsedPatientsReport as unknown)[immerable] = true;\n\nexport class ClientAnalysisReport\n{\n public registeredLocation: string|null;\n public patientReference: string|null;\n public patientName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerEmail: string|null;\n public mobile: string|null;\n public work: string|null;\n public home: string|null;\n public customerContact: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public customerAddress: string|null;\n public patientPostCode: string|null;\n public patientDateOfBirth: string|null;\n public customerRegistrationDate: string|null;\n public ageGrouping: string|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerStatus: number|null;\n public locationStatus: LocationStatus|null;\n public patientGroup: string|null;\n public enquirySource: string|null;\n public futureBookedAppointments: number|null;\n public futureBookedAppointmentsText: string|null;\n public customerGivenConsent: boolean|null;\n public customerSMSConsent: boolean|null;\n public customerEmailConsent: boolean|null;\n public customerPhoneConsent: boolean|null;\n\n public constructor(init?: Partial<ClientAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(ClientAnalysisReport as unknown)[immerable] = true;\n\nexport class ClientAnalysisResponse\n{\n public results: ClientAnalysisReport[]|null;\n public totals: { [index:string]: number; }|null;\n\n public constructor(init?: Partial<ClientAnalysisResponse>) { (Object as any).assign(this, init); }\n}\n(ClientAnalysisResponse as unknown)[immerable] = true;\n\nexport class ClientBirthdayReport\n{\n public registeredLocation: string|null;\n public dateOfBirth: string|null;\n public ageAsOfToday: number|null;\n public patientReference: string|null;\n public patientName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public customerAddress: string|null;\n public patientPostCode: string|null;\n public patientEmail: string|null;\n public mobile: string|null;\n public work: string|null;\n public home: string|null;\n public customerContact: string|null;\n public lastAppointmentDate: string|null;\n public locationStatus: LocationStatus|null;\n\n public constructor(init?: Partial<ClientBirthdayReport>) { (Object as any).assign(this, init); }\n}\n(ClientBirthdayReport as unknown)[immerable] = true;\n\nexport class ClientTrackingReport\n{\n public ageGrouping: string|null;\n public appointmentClassification: string|null;\n public appointmentDate: string|null;\n public appointmentLocation: string|null;\n public appointmentStatus: string|null;\n public appointmentType: string|null;\n public chargeCreated: string|null;\n public chargeTotal: number|null;\n public futureAppointment: string|null;\n public futureAppointmentDate: string|null;\n public hasFutureAppointment: string|null;\n public patientName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerID: number|null;\n public customerMobileTelephone: string|null;\n public customerHomeTelephone: string|null;\n public customerWorkTelephone: string|null;\n public customerContact: string|null;\n public customerEmail: string|null;\n public patientReference: string|null;\n public patientStatus: string|null;\n public practitioner: string|null;\n public practitionerStatus: number|null;\n public locationStatus: LocationStatus|null;\n public practitionerName: string|null;\n public stockDescription: string|null;\n\n public constructor(init?: Partial<ClientTrackingReport>) { (Object as any).assign(this, init); }\n}\n(ClientTrackingReport as unknown)[immerable] = true;\n\nexport class ClientTrackingResponse\n{\n public results: ClientTrackingReport[]|null;\n public totals: { [index:string]: number; }|null;\n\n public constructor(init?: Partial<ClientTrackingResponse>) { (Object as any).assign(this, init); }\n}\n(ClientTrackingResponse as unknown)[immerable] = true;\n\nexport class ClickReferrerImagePath\n{\n public name: string|null;\n public path: string|null;\n\n public constructor(init?: Partial<ClickReferrerImagePath>) { (Object as any).assign(this, init); }\n}\n(ClickReferrerImagePath as unknown)[immerable] = true;\n\nexport class QuickStartWizardGroupResponse\n{\n public id: number|null;\n public name: string|null;\n public email: string|null;\n public showReferrals: boolean|null;\n public useAuthCode: boolean|null;\n\n public constructor(init?: Partial<QuickStartWizardGroupResponse>) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardGroupResponse as unknown)[immerable] = true;\n\nexport class QuickStartWizardPractitionerResponse\n{\n public id: number|null;\n public email: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public isActive: boolean|null;\n public mobile: string|null;\n public firstStockId: number|null;\n public followupStockId: number|null;\n public locations: number[]|null;\n public defaultLocationId: number|null;\n public name: string|null;\n public onlineGuid: string|null;\n\n public constructor(init?: Partial<QuickStartWizardPractitionerResponse>) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardPractitionerResponse as unknown)[immerable] = true;\n\nexport class QuickStartWizardGetStocksResponse\n{\n public consultations: Stock[]|null;\n public cancellations: Stock[]|null;\n\n public constructor(init?: Partial<QuickStartWizardGetStocksResponse>) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardGetStocksResponse as unknown)[immerable] = true;\n\nexport class QuickStartWizardStock\n{\n public id: number|null;\n public appointmentLength: number|null;\n public totalPrice: number|null;\n public isFirst: boolean|null;\n public isFollowup: boolean|null;\n public description: string|null;\n public reference: string|null;\n\n public constructor(init?: Partial<QuickStartWizardStock>) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardStock as unknown)[immerable] = true;\n\nexport class Template implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public body: string|null;\n public type: string|null;\n public lastModified: string|null;\n public globalId: string|null;\n public isReadOnly: boolean|null;\n public syncToPronto: boolean|null;\n public lastSyncDate: string|null;\n public isRemoved: boolean|null;\n public serviceTypeId: number|null;\n public format: BlockTemplateFormat|null;\n public archived: boolean|null;\n // @Ignore()\n public serviceTypeGuid: string|null;\n\n // @Ignore()\n public globalGuid: string|null;\n\n public signatureRequired: boolean|null;\n\n public constructor(init?: Partial<Template>) { (Object as any).assign(this, init); }\n}\n(Template as unknown)[immerable] = true;\n\nexport class QuickStartWizardTemplateOptionsResponse\n{\n public simple: Template|null;\n public advanced: Template|null;\n\n public constructor(init?: Partial<QuickStartWizardTemplateOptionsResponse>) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardTemplateOptionsResponse as unknown)[immerable] = true;\n\nexport class ProntoInvoiceTemplate\n{\n public id: string|null;\n public template: string|null;\n public itemTemplate: string|null;\n public timeStamp: string|null;\n\n public constructor(init?: Partial<ProntoInvoiceTemplate>) { (Object as any).assign(this, init); }\n}\n(ProntoInvoiceTemplate as unknown)[immerable] = true;\n\nexport class ProntoNetworkService\n{\n public name: string|null;\n public stockId: string|null;\n public networkServiceId: string|null;\n public discipline: string|null;\n public serviceName: string|null;\n\n public constructor(init?: Partial<ProntoNetworkService>) { (Object as any).assign(this, init); }\n}\n(ProntoNetworkService as unknown)[immerable] = true;\n\nexport class ProntoCacheResponse\n{\n public invoices: { [index:string]: ProntoInvoiceTemplate; }|null;\n public services: { [index:string]: ProntoNetworkService; }|null;\n\n public constructor(init?: Partial<ProntoCacheResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoCacheResponse as unknown)[immerable] = true;\n\nexport class GetClinicDetailsResponse\n{\n public clinicName: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public homeTelephone: string|null;\n public category: string|null;\n public previousSystem: string|null;\n public clinicCurrencySymbol: string|null;\n\n public constructor(init?: Partial<GetClinicDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(GetClinicDetailsResponse as unknown)[immerable] = true;\n\nexport class ReferrerOverrideNetworkCharge\n{\n public referrerId: string|null;\n public networkId: string|null;\n public overridingClinicReferralCharge: number|null;\n public isDefaultCharge: boolean|null;\n\n public constructor(init?: Partial<ReferrerOverrideNetworkCharge>) { (Object as any).assign(this, init); }\n}\n(ReferrerOverrideNetworkCharge as unknown)[immerable] = true;\n\nexport class GetClientPaymentDetailsResponse\n{\n public cardExists: boolean|null;\n public cardName: string|null;\n public lastFourDigits: string|null;\n public expiryMonth: number|null;\n public expiryYear: number|null;\n public brand: string|null;\n\n public constructor(init?: Partial<GetClientPaymentDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(GetClientPaymentDetailsResponse as unknown)[immerable] = true;\n\nexport class ProntoPaymentResponse\n{\n public paymentDetails: GetClientPaymentDetailsResponse|null;\n\n public constructor(init?: Partial<ProntoPaymentResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoPaymentResponse as unknown)[immerable] = true;\n\nexport class ProntoRegistrationResponse\n{\n\n public constructor(init?: Partial<ProntoRegistrationResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoRegistrationResponse as unknown)[immerable] = true;\n\nexport class License\n{\n public clientID: number|null;\n public locationId: number|null;\n public expiryDate: string|null;\n public isTM3Connect: boolean|null;\n public isEClinic: boolean|null;\n public isPPM: boolean|null;\n public isGDS: boolean|null;\n public hasClass: boolean|null;\n public hasEnterprise: boolean|null;\n public hasHealthCode: boolean|null;\n public hasMultiDiscipline: boolean|null;\n public hasMultiLocation: boolean|null;\n public hasOnlinePatientBooking: boolean|null;\n public hasPostcode: boolean|null;\n public hasReferrals: boolean|null;\n public hasRemote: boolean|null;\n public hasRoomManager: boolean|null;\n public hasRoleManager: boolean|null;\n public hasOnlineReception: boolean|null;\n public hasOnlineReferralBookings: boolean|null;\n public hasStock: boolean|null;\n public hasTouch: boolean|null;\n public hasApi: boolean|null;\n public hasApiLimit: boolean|null;\n public dailyApiLimit: number|null;\n public monthlyApiLimit: number|null;\n public maxLocations: number|null;\n public maxUsers: number|null;\n public onlinePractitioners: number|null;\n public startDate: string|null;\n public touchMaxUsers: number|null;\n public hasPatientPortalBasic: boolean|null;\n public hasPatientPortalAdvanced: boolean|null;\n public hasOnlinePatient: boolean|null;\n public practitionerLicensing: boolean|null;\n public practitioners: number|null;\n public hasWebClinicalNotes: boolean|null;\n public isCancelling: boolean|null;\n public hasCustomStripeCommission: boolean|null;\n public customStripeCommissionRate: number|null;\n public hasCustomSquareCommission: boolean|null;\n public customSquareCommissionRate: number|null;\n public isEvaluating: boolean|null;\n public isProntoPortal: boolean|null;\n public isClick: boolean|null;\n public isClickPlus: boolean|null;\n public isCaseflow: boolean|null;\n public hasCustomClearAcceptCommission: boolean|null;\n public customClearAcceptCommissionRate: number|null;\n public isTM3Essentials: boolean|null;\n public bzProduct: string|null;\n public subscription: string|null;\n\n public constructor(init?: Partial<License>) { (Object as any).assign(this, init); }\n}\n(License as unknown)[immerable] = true;\n\nexport class StartTrialResponse\n{\n public license: License|null;\n public url: string|null;\n public errorMessage: string|null;\n\n public constructor(init?: Partial<StartTrialResponse>) { (Object as any).assign(this, init); }\n}\n(StartTrialResponse as unknown)[immerable] = true;\n\nexport class ConfirmClientDowngradeToProntoResponse\n{\n public success: boolean|null;\n public domain: string|null;\n public url: string|null;\n\n public constructor(init?: Partial<ConfirmClientDowngradeToProntoResponse>) { (Object as any).assign(this, init); }\n}\n(ConfirmClientDowngradeToProntoResponse as unknown)[immerable] = true;\n\nexport class PrescriptionDetails\n{\n public id: number|null;\n public description: string|null;\n public dosage: string|null;\n public otherInstructions: string|null;\n public deliveryType: string|null;\n public dateIssued: string|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public userName: string|null;\n public userFullName: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n // @Ignore()\n public issuedBy: string|null;\n\n public constructor(init?: Partial<PrescriptionDetails>) { (Object as any).assign(this, init); }\n}\n(PrescriptionDetails as unknown)[immerable] = true;\n\nexport class GetPatientPrescriptionsResponse\n{\n public prescriptions: PrescriptionDetails[]|null;\n public prescriptionPrintPath: string|null;\n\n public constructor(init?: Partial<GetPatientPrescriptionsResponse>) { (Object as any).assign(this, init); }\n}\n(GetPatientPrescriptionsResponse as unknown)[immerable] = true;\n\nexport class PrescriptionSummary\n{\n public description: string|null;\n public createdAt: string|null;\n public prescriber: string|null;\n\n public constructor(init?: Partial<PrescriptionSummary>) { (Object as any).assign(this, init); }\n}\n(PrescriptionSummary as unknown)[immerable] = true;\n\nexport class GetPatientPrescriptionsSummaryResponse\n{\n public count: number|null;\n public latest: PrescriptionSummary|null;\n\n public constructor(init?: Partial<GetPatientPrescriptionsSummaryResponse>) { (Object as any).assign(this, init); }\n}\n(GetPatientPrescriptionsSummaryResponse as unknown)[immerable] = true;\n\nexport class CreateNonRxPrescriptionsResponse\n{\n public prescriptionId: number|null;\n public prescriptionPrintPath: string|null;\n\n public constructor(init?: Partial<CreateNonRxPrescriptionsResponse>) { (Object as any).assign(this, init); }\n}\n(CreateNonRxPrescriptionsResponse as unknown)[immerable] = true;\n\nexport class AddLocationResponse\n{\n public currentLocations: number|null;\n public licensedLocations: number|null;\n public canAddLocation: boolean|null;\n\n public constructor(init?: Partial<AddLocationResponse>) { (Object as any).assign(this, init); }\n}\n(AddLocationResponse as unknown)[immerable] = true;\n\nexport class SignatureRxResponse\n{\n public signatureRxIntegrationCode: string|null;\n\n public constructor(init?: Partial<SignatureRxResponse>) { (Object as any).assign(this, init); }\n}\n(SignatureRxResponse as unknown)[immerable] = true;\n\nexport class CreatePrescriptionResponse\n{\n public isSuccess: boolean|null;\n public message: string|null;\n\n public constructor(init?: Partial<CreatePrescriptionResponse>) { (Object as any).assign(this, init); }\n}\n(CreatePrescriptionResponse as unknown)[immerable] = true;\n\nexport class ICD9\n{\n public id: number|null;\n public code: string|null;\n public description: string|null;\n public globalId: string|null;\n\n public constructor(init?: Partial<ICD9>) { (Object as any).assign(this, init); }\n}\n(ICD9 as unknown)[immerable] = true;\n\nexport class JobHistoryDto\n{\n public createdAt: string|null;\n public failedAt: string|null;\n public exceptionType: string|null;\n public exceptionMessage: string|null;\n public exceptionDetails: string|null;\n public state: string|null;\n public reason: string|null;\n\n public constructor(init?: Partial<JobHistoryDto>) { (Object as any).assign(this, init); }\n}\n(JobHistoryDto as unknown)[immerable] = true;\n\nexport class JobDto\n{\n public createdAt: string|null;\n public cron: string|null;\n public name: string|null;\n public nextExecution: string|null;\n public lastExecution: string|null;\n public lastJobId: string|null;\n public lastRecurring: JobDto|null;\n public type: string|null;\n public state: string|null;\n public history: JobHistoryDto[]|null;\n\n public constructor(init?: Partial<JobDto>) { (Object as any).assign(this, init); }\n}\n(JobDto as unknown)[immerable] = true;\n\nexport class FormReportResponse\n{\n public id: number|null;\n public globalId: string|null;\n public templateId: string|null;\n public reportData: string|null;\n public dateSent: string|null;\n public lastEdited: string|null;\n public submissionDate: string|null;\n public completionDate: string|null;\n public cancellationDate: string|null;\n public declinedDate: string|null;\n public patientId: number|null;\n public caseId: number|null;\n public name: string|null;\n public status: number|null;\n public description: string|null;\n public type: string|null;\n public body: string|null;\n public recordedBy: number|null;\n public patientSubmitted: boolean|null;\n public format: BlockTemplateFormat|null;\n public signatureRequired: boolean|null;\n public signature: string|null;\n public userFullName: string|null;\n\n public constructor(init?: Partial<FormReportResponse>) { (Object as any).assign(this, init); }\n}\n(FormReportResponse as unknown)[immerable] = true;\n\nexport class FormTemplatesResponse\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public type: string|null;\n public body: string|null;\n public globalId: string|null;\n public used: boolean|null;\n public smsTemplate: string|null;\n public emailTemplate: string|null;\n public archived: boolean|null;\n public format: BlockTemplateFormat|null;\n public signatureRequired: boolean|null;\n\n public constructor(init?: Partial<FormTemplatesResponse>) { (Object as any).assign(this, init); }\n}\n(FormTemplatesResponse as unknown)[immerable] = true;\n\nexport class PatientReport implements IHasId\n{\n public id: number|null;\n public globalId: string|null;\n public templateId: string|null;\n public reportData: string|null;\n public dateSent: string|null;\n public lastEdited: string|null;\n public submissionDate: string|null;\n public completionDate: string|null;\n public cancellationDate: string|null;\n public declinedDate: string|null;\n public patientId: number|null;\n public caseId: number|null;\n public status: number|null;\n public recordedBy: number|null;\n public notificationType: number|null;\n public signature: string|null;\n public signedBy: number|null;\n\n public constructor(init?: Partial<PatientReport>) { (Object as any).assign(this, init); }\n}\n(PatientReport as unknown)[immerable] = true;\n\nexport class ClassesResponse\n{\n public weeklyClasses: { [index:string]: ClassSessionWithDetails[]; }|null;\n\n public constructor(init?: Partial<ClassesResponse>) { (Object as any).assign(this, init); }\n}\n(ClassesResponse as unknown)[immerable] = true;\n\nexport class PatientClass\n{\n public sessionId: number|null;\n public name: string|null;\n public description: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n public status: string|null;\n public locationName: string|null;\n public startDate: string|null;\n public endDate: string|null;\n\n public constructor(init?: Partial<PatientClass>) { (Object as any).assign(this, init); }\n}\n(PatientClass as unknown)[immerable] = true;\n\nexport class Point\n{\n public x: number|null;\n public y: number|null;\n\n public constructor(init?: Partial<Point>) { (Object as any).assign(this, init); }\n}\n(Point as unknown)[immerable] = true;\n\nexport class GraphData\n{\n public label: string|null;\n public values: Point[]|null;\n\n public constructor(init?: Partial<GraphData>) { (Object as any).assign(this, init); }\n}\n(GraphData as unknown)[immerable] = true;\n\nexport class PieChartSegment\n{\n public label: string|null;\n public value: number|null;\n\n public constructor(init?: Partial<PieChartSegment>) { (Object as any).assign(this, init); }\n}\n(PieChartSegment as unknown)[immerable] = true;\n\nexport class PieChartData\n{\n public segments: PieChartSegment[]|null;\n\n public constructor(init?: Partial<PieChartData>) { (Object as any).assign(this, init); }\n}\n(PieChartData as unknown)[immerable] = true;\n\nexport class TopClients\n{\n public name: string|null;\n public type: string|null;\n public total: number|null;\n\n public constructor(init?: Partial<TopClients>) { (Object as any).assign(this, init); }\n}\n(TopClients as unknown)[immerable] = true;\n\nexport class DashboardResponse\n{\n public dnas: GraphData[]|null;\n public cancellations: GraphData[]|null;\n public allAppointments: GraphData[]|null;\n public newPatients: GraphData[]|null;\n public turnover: GraphData[]|null;\n public appointmentShare: PieChartData|null;\n public newPatientByType: PieChartData|null;\n public topClients: TopClients[]|null;\n public debt: Object|null;\n public appointmentStats: Object|null;\n public dnaTotal: Object|null;\n\n public constructor(init?: Partial<DashboardResponse>) { (Object as any).assign(this, init); }\n}\n(DashboardResponse as unknown)[immerable] = true;\n\nexport class Timeline\n{\n public id: number|null;\n public userId: number|null;\n public userName: string|null;\n public title: string|null;\n public body: string|null;\n public icon: string|null;\n public isPriority: boolean|null;\n public requiresAcknowledgement: boolean|null;\n public colour: string|null;\n public date: string|null;\n public type: TimelineType|null;\n public subType: string|null;\n public linkedObjectType: TimelineLinkedObjectType|null;\n public linkedObjectId: number|null;\n public contextObjectType: TimelineContextObjectType|null;\n public contextDescription: string|null;\n public contextId: number|null;\n public totalRows: number|null;\n public documentPath: string|null;\n public documentName: string|null;\n public documentFilePath: string|null;\n\n public constructor(init?: Partial<Timeline>) { (Object as any).assign(this, init); }\n}\n(Timeline as unknown)[immerable] = true;\n\nexport class OnlineConsentResponse extends OnlineConsent\n{\n\n public constructor(init?: Partial<OnlineConsentResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(OnlineConsentResponse as unknown)[immerable] = true;\n\nexport class ClinicalReportingFieldMap\n{\n public name: string|null;\n public map: string[]|null;\n\n public constructor(init?: Partial<ClinicalReportingFieldMap>) { (Object as any).assign(this, init); }\n}\n(ClinicalReportingFieldMap as unknown)[immerable] = true;\n\nexport class ClinicalReportingFieldResponse\n{\n public fields: { [index:string]: ReportingField[]; }|null;\n public mappings: { [index:string]: ClinicalReportingFieldMap; }|null;\n\n public constructor(init?: Partial<ClinicalReportingFieldResponse>) { (Object as any).assign(this, init); }\n}\n(ClinicalReportingFieldResponse as unknown)[immerable] = true;\n\nexport class ClinicalMyTemplatesResponse\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public type: string|null;\n public body: string|null;\n public globalId: string|null;\n public used: boolean|null;\n public background: boolean|null;\n public isDefault: boolean|null;\n public isFirst: boolean|null;\n public isFollow: boolean|null;\n public isReadOnly: boolean|null;\n public serviceTypeId: number|null;\n public archived: boolean|null;\n public signatureRequired: boolean|null;\n\n public constructor(init?: Partial<ClinicalMyTemplatesResponse>) { (Object as any).assign(this, init); }\n}\n(ClinicalMyTemplatesResponse as unknown)[immerable] = true;\n\nexport class Lookup implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n public order: number|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<Lookup>) { (Object as any).assign(this, init); }\n}\n(Lookup as unknown)[immerable] = true;\n\nexport class ConfigResponse\n{\n public id: number|null;\n public description: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<ConfigResponse>) { (Object as any).assign(this, init); }\n}\n(ConfigResponse as unknown)[immerable] = true;\n\nexport class PractitionerResponse\n{\n\n public constructor(init?: Partial<PractitionerResponse>) { (Object as any).assign(this, init); }\n}\n(PractitionerResponse as unknown)[immerable] = true;\n\nexport class CustomLookupResponse\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n public globalId: string|null;\n public alternates: string[]|null;\n public groupId: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<CustomLookupResponse>) { (Object as any).assign(this, init); }\n}\n(CustomLookupResponse as unknown)[immerable] = true;\n\nexport class ClinicalTemplatesResponse\n{\n public templateMappings: { [index:string]: string; }|null;\n public templates: { [index:string]: Template; }|null;\n\n public constructor(init?: Partial<ClinicalTemplatesResponse>) { (Object as any).assign(this, init); }\n}\n(ClinicalTemplatesResponse as unknown)[immerable] = true;\n\nexport class TemplateResponse\n{\n public id: number|null;\n public body: string|null;\n public name: string|null;\n public archived: boolean|null;\n public isReadOnly: boolean|null;\n public signatureRequired: boolean|null;\n\n public constructor(init?: Partial<TemplateResponse>) { (Object as any).assign(this, init); }\n}\n(TemplateResponse as unknown)[immerable] = true;\n\nexport class ClickAccountPaymentsStatsResponse\n{\n public unreconciledPayments: number|null;\n public partReconciledPayments: number|null;\n\n public constructor(init?: Partial<ClickAccountPaymentsStatsResponse>) { (Object as any).assign(this, init); }\n}\n(ClickAccountPaymentsStatsResponse as unknown)[immerable] = true;\n\nexport class ClickAccountInvoiceStatsResponse\n{\n public unpaidInvoices: number|null;\n public partPaidInvoices: number|null;\n public accountBalance: number|null;\n\n public constructor(init?: Partial<ClickAccountInvoiceStatsResponse>) { (Object as any).assign(this, init); }\n}\n(ClickAccountInvoiceStatsResponse as unknown)[immerable] = true;\n\nexport class ClickAccountUninvoicedChargesCountResponse\n{\n public uninvoicedCharges: number|null;\n\n public constructor(init?: Partial<ClickAccountUninvoicedChargesCountResponse>) { (Object as any).assign(this, init); }\n}\n(ClickAccountUninvoicedChargesCountResponse as unknown)[immerable] = true;\n\nexport class CasePrintingStats\n{\n public image: number|null;\n public consultation: number|null;\n\n public constructor(init?: Partial<CasePrintingStats>) { (Object as any).assign(this, init); }\n}\n(CasePrintingStats as unknown)[immerable] = true;\n\nexport class HistoryResult\n{\n public id: number|null;\n public type: string|null;\n public date: string|null;\n public data: Object|null;\n\n public constructor(init?: Partial<HistoryResult>) { (Object as any).assign(this, init); }\n}\n(HistoryResult as unknown)[immerable] = true;\n\nexport class CaseAuditDetails\n{\n public auditUserName: string|null;\n public auditDate: string|null;\n public auditNotes: string|null;\n\n public constructor(init?: Partial<CaseAuditDetails>) { (Object as any).assign(this, init); }\n}\n(CaseAuditDetails as unknown)[immerable] = true;\n\nexport class CasePrintingResponse\n{\n public stats: CasePrintingStats|null;\n public details: CaseWithCustomerPractitionerLocationDetails|null;\n public templates: { [index:string]: { [index:string]: string; }; }|null;\n public content: HistoryResult[]|null;\n public postCloseNotes: PostCloseNotesWithUser[]|null;\n public closedUser: string|null;\n public closedDate: string|null;\n public auditDetails: CaseAuditDetails|null;\n public scores: CasePrintingScore<ClinicalScoreEntry>[]|null;\n public goals: CasePrintingGoal<GoalEntry>[]|null;\n\n public constructor(init?: Partial<CasePrintingResponse>) { (Object as any).assign(this, init); }\n}\n(CasePrintingResponse as unknown)[immerable] = true;\n\nexport class CaseReportTemplate\n{\n public type: number|null;\n public mode: string|null;\n public title: string|null;\n public template: string|null;\n public sections: string[]|null;\n public mandatoryFieldOverrides: { [index:string]: { [index:string]: boolean; }; }|null;\n public customLists: { [index:string]: { [index:string]: string; }; }|null;\n public lists: { [index:string]: NestedLookupDto; }|null;\n\n public constructor(init?: Partial<CaseReportTemplate>) { (Object as any).assign(this, init); }\n}\n(CaseReportTemplate as unknown)[immerable] = true;\n\nexport class CaseReportSectionTemplate\n{\n public id: string|null;\n public name: string|null;\n public body: string|null;\n public timeStamp: string|null;\n public bookerId: string|null;\n\n public constructor(init?: Partial<CaseReportSectionTemplate>) { (Object as any).assign(this, init); }\n}\n(CaseReportSectionTemplate as unknown)[immerable] = true;\n\nexport class CaseReportSearchResponse\n{\n public referralStatus: number|null;\n public bookerName: string|null;\n public bookerId: string|null;\n public treatments: HistoryResult[]|null;\n public attachments: AttachmentFile[]|null;\n public allowed: { [index:string]: string; }|null;\n public reports: { [index:string]: CaseReport; }|null;\n public templates: { [index:string]: CaseReportTemplate; }|null;\n public sections: { [index:string]: CaseReportSectionTemplate; }|null;\n public linkAppointmentsToReports: boolean|null;\n\n public constructor(init?: Partial<CaseReportSearchResponse>) { (Object as any).assign(this, init); }\n}\n(CaseReportSearchResponse as unknown)[immerable] = true;\n\nexport class CaseDashboardResponse\n{\n public appointmentCount: number|null;\n public appointmentStartTime: string|null;\n public appointmentsWithoutConsultations: number|null;\n public auth: string|null;\n public bodySiteText: string|null;\n public closed: boolean|null;\n public customerId: number|null;\n public dateOfAdmission: string|null;\n public diagnosis: string|null;\n public diagnosisCode: string|null;\n public dischargeDate: string|null;\n public firstAppointmentId: number|null;\n public id: number|null;\n public incompleteNotes: boolean|null;\n public name: string|null;\n public numberOfAppointments: number|null;\n public unclosedConsultations: number|null;\n public status: number|null;\n public lastConsultationDate: string|null;\n\n public constructor(init?: Partial<CaseDashboardResponse>) { (Object as any).assign(this, init); }\n}\n(CaseDashboardResponse as unknown)[immerable] = true;\n\nexport class Alert implements IHasId\n{\n public id: number|null;\n public userId: number|null;\n public createdByUserId: number|null;\n public discriminatorType: string|null;\n public objectId: number|null;\n public title: string|null;\n public notes: string|null;\n public createdDateTime: string|null;\n public startDateTime: string|null;\n public requiresAcknowledgement: boolean|null;\n public complete: boolean|null;\n public expiryDateTime: string|null;\n public diaryDateTime: string|null;\n public includeInMyWork: boolean|null;\n public forYourEyesOnly: boolean|null;\n public flagType: number|null;\n public serviceTypeId: number|null;\n // @Ignore()\n public future: boolean|null;\n\n public constructor(init?: Partial<Alert>) { (Object as any).assign(this, init); }\n}\n(Alert as unknown)[immerable] = true;\n\nexport class AutoSaveResult\n{\n public flag: boolean|null;\n public alert: Alert|null;\n public question: Object|null;\n\n public constructor(init?: Partial<AutoSaveResult>) { (Object as any).assign(this, init); }\n}\n(AutoSaveResult as unknown)[immerable] = true;\n\nexport class CaseDropDownResposne\n{\n public id: number|null;\n public bodySite: string|null;\n public admissionDate: string|null;\n public dischargeDate: string|null;\n public description: string|null;\n public customerId: number|null;\n public serviceTypeId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CaseDropDownResposne>) { (Object as any).assign(this, init); }\n}\n(CaseDropDownResposne as unknown)[immerable] = true;\n\nexport class CustomerBackgroundResponse\n{\n public id: number|null;\n public customerId: number|null;\n public data: { [index:string]: Object; }|null;\n public modifiedBy: number|null;\n public lastModified: string|null;\n public templateId: string|null;\n public userFullName: string|null;\n public highlight: { [index:string]: number[]; }|null;\n\n public constructor(init?: Partial<CustomerBackgroundResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerBackgroundResponse as unknown)[immerable] = true;\n\nexport interface IPatientInfoResponse\n{\n id: number|null;\n responseType: string|null;\n date: string|null;\n pinned: boolean|null;\n description: string|null;\n title: string|null;\n serviceTypeId: number|null;\n customerId: number|null;\n}\n\nexport class DiagnosisCodeTempResponse\n{\n public key: string|null;\n public type: string|null;\n public json: string|null;\n\n public constructor(init?: Partial<DiagnosisCodeTempResponse>) { (Object as any).assign(this, init); }\n}\n(DiagnosisCodeTempResponse as unknown)[immerable] = true;\n\nexport class AssessmentResult\n{\n public id: number|null;\n public treatmentId: number|null;\n public type: string|null;\n public title: string|null;\n public notes: string|null;\n public date: string|null;\n\n public constructor(init?: Partial<AssessmentResult>) { (Object as any).assign(this, init); }\n}\n(AssessmentResult as unknown)[immerable] = true;\n\nexport class CaseConsultationItem\n{\n public id: number|null;\n public title: string|null;\n public templateId: string|null;\n public date: string|null;\n public type: ConsultationItemType|null;\n public data: { [index:string]: Object; }|null;\n public highlights: { [index:string]: number[]; }|null;\n\n public constructor(init?: Partial<CaseConsultationItem>) { (Object as any).assign(this, init); }\n}\n(CaseConsultationItem as unknown)[immerable] = true;\n\nexport interface ICascade\n{\n data: { [index:string]: Object; }|null;\n}\n\nexport class ScoreEntryResponse\n{\n public id: number|null;\n public scoreId: number|null;\n public score: number|null;\n public dateAdded: string|null;\n public patientSubmitted: boolean|null;\n\n public constructor(init?: Partial<ScoreEntryResponse>) { (Object as any).assign(this, init); }\n}\n(ScoreEntryResponse as unknown)[immerable] = true;\n\nexport class ScoreResponse implements IHasId\n{\n public id: number|null;\n public title: string|null;\n public dateAdded: string|null;\n public dateCompleted: string|null;\n public caseId: number|null;\n public entries: ScoreEntryResponse[]|null;\n public min: number|null;\n public max: number|null;\n public settingId: number|null;\n public isPsfs: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ScoreResponse>) { (Object as any).assign(this, init); }\n}\n(ScoreResponse as unknown)[immerable] = true;\n\nexport class ScoreSearchResponse\n{\n public order: string[]|null;\n public scores: { [index:string]: ScoreResponse; }|null;\n\n public constructor(init?: Partial<ScoreSearchResponse>) { (Object as any).assign(this, init); }\n}\n(ScoreSearchResponse as unknown)[immerable] = true;\n\nexport class GoalEntryResponse\n{\n public id: number|null;\n public notes: string|null;\n public goalId: number|null;\n public completionPercentage: number|null;\n public dateAdded: string|null;\n public patientSubmitted: boolean|null;\n\n public constructor(init?: Partial<GoalEntryResponse>) { (Object as any).assign(this, init); }\n}\n(GoalEntryResponse as unknown)[immerable] = true;\n\nexport class GoalResponse implements IHasId\n{\n public id: number|null;\n public title: string|null;\n public dateAdded: string|null;\n public dateCompleted: string|null;\n public averaged: boolean|null;\n public caseId: number|null;\n public entries: GoalEntryResponse[]|null;\n public isPsfs: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<GoalResponse>) { (Object as any).assign(this, init); }\n}\n(GoalResponse as unknown)[immerable] = true;\n\nexport class GoalSearchResponse\n{\n public order: string[]|null;\n public goals: { [index:string]: GoalResponse; }|null;\n\n public constructor(init?: Partial<GoalSearchResponse>) { (Object as any).assign(this, init); }\n}\n(GoalSearchResponse as unknown)[immerable] = true;\n\nexport class SMSBulkActionResponse\n{\n\n public constructor(init?: Partial<SMSBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(SMSBulkActionResponse as unknown)[immerable] = true;\n\nexport class EmailBulkActionResponse\n{\n\n public constructor(init?: Partial<EmailBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(EmailBulkActionResponse as unknown)[immerable] = true;\n\nexport class ContactBulkActionResponse\n{\n\n public constructor(init?: Partial<ContactBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(ContactBulkActionResponse as unknown)[immerable] = true;\n\nexport class FormBulkActionResponse\n{\n\n public constructor(init?: Partial<FormBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(FormBulkActionResponse as unknown)[immerable] = true;\n\nexport class TagBulkActionResponse\n{\n\n public constructor(init?: Partial<TagBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(TagBulkActionResponse as unknown)[immerable] = true;\n\nexport class MailChimpSubscriptionBulkActionResponse\n{\n\n public constructor(init?: Partial<MailChimpSubscriptionBulkActionResponse>) { (Object as any).assign(this, init); }\n}\n(MailChimpSubscriptionBulkActionResponse as unknown)[immerable] = true;\n\nexport class AutomationJob implements IHasGuidId\n{\n public id: string|null;\n public createdAt: string|null;\n public dueAt: string|null;\n public executedAt: string|null;\n public isComplete: boolean|null;\n public isError: boolean|null;\n public isActive: boolean|null;\n public errorMessage: string|null;\n public hangfireJobId: string|null;\n public entityType: AutomationEventEntityType|null;\n public actionType: EventActionType|null;\n public entityId: number|null;\n public name: string|null;\n public patientName: string|null;\n public isBulkAction: boolean|null;\n public automationJobTriggerUserId: number|null;\n\n public constructor(init?: Partial<AutomationJob>) { (Object as any).assign(this, init); }\n}\n(AutomationJob as unknown)[immerable] = true;\n\nexport class WebinarResponse\n{\n public id: number|null;\n public title: string|null;\n public date: string|null;\n public text: string|null;\n public src: string|null;\n\n public constructor(init?: Partial<WebinarResponse>) { (Object as any).assign(this, init); }\n}\n(WebinarResponse as unknown)[immerable] = true;\n\nexport class SimpleUser\n{\n public id: number|null;\n public name: string|null;\n public fullName: string|null;\n public type: string|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<SimpleUser>) { (Object as any).assign(this, init); }\n}\n(SimpleUser as unknown)[immerable] = true;\n\nexport class PublicKeyCredentialDescriptor\n{\n public type: PublicKeyCredentialType|null;\n public id: string|null;\n\n public constructor(init?: Partial<PublicKeyCredentialDescriptor>) { (Object as any).assign(this, init); }\n}\n(PublicKeyCredentialDescriptor as unknown)[immerable] = true;\n\nexport enum UserVerificationRequirement\n{\n Required = 'required',\n Preferred = 'preferred',\n Discouraged = 'discouraged',\n}\n\nexport class Fido2ResponseBase\n{\n public status: string|null;\n public errorMessage: string|null;\n\n public constructor(init?: Partial<Fido2ResponseBase>) { (Object as any).assign(this, init); }\n}\n\nexport class AssertionVerificationResult extends Fido2ResponseBase\n{\n public credentialId: string|null;\n public counter: number|null;\n\n public constructor(init?: Partial<AssertionVerificationResult>) { super(init); (Object as any).assign(this, init); }\n}\n(AssertionVerificationResult as unknown)[immerable] = true;\n\nexport class Fido2User\n{\n public name: string|null;\n public id: string|null;\n public displayName: string|null;\n\n public constructor(init?: Partial<Fido2User>) { (Object as any).assign(this, init); }\n}\n(Fido2User as unknown)[immerable] = true;\n\nexport class AttestationVerificationSuccess extends AssertionVerificationResult\n{\n public publicKey: string|null;\n public user: Fido2User|null;\n public credType: string|null;\n public aaGuid: string|null;\n public attestationCertificate: X509Certificate2|null;\n public attestationCertificateChain: X509Certificate2[]|null;\n\n public constructor(init?: Partial<AttestationVerificationSuccess>) { super(init); (Object as any).assign(this, init); }\n}\n(AttestationVerificationSuccess as unknown)[immerable] = true;\n\nexport class CredentialMakeResult extends Fido2ResponseBase\n{\n public result: AttestationVerificationSuccess|null;\n\n public constructor(init?: Partial<CredentialMakeResult>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class LicenseDetailsResponse\n{\n public license: License|null;\n\n public constructor(init?: Partial<LicenseDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(LicenseDetailsResponse as unknown)[immerable] = true;\n\nexport class LicenceModule\n{\n public name: string|null;\n public description: string|null;\n public dependencies: LicenceModule[]|null;\n\n public constructor(init?: Partial<LicenceModule>) { (Object as any).assign(this, init); }\n}\n(LicenceModule as unknown)[immerable] = true;\n\nexport class ModularLicence\n{\n public name: string|null;\n public description: string|null;\n public number: string|null;\n public type: string|null;\n public modules: LicenceModule[]|null;\n\n public constructor(init?: Partial<ModularLicence>) { (Object as any).assign(this, init); }\n}\n(ModularLicence as unknown)[immerable] = true;\n\nexport class CustomAttributeDto\n{\n public id: string|null;\n public name: string|null;\n public type: string|null;\n public typeFriendlyName: string|null;\n\n public constructor(init?: Partial<CustomAttributeDto>) { (Object as any).assign(this, init); }\n}\n(CustomAttributeDto as unknown)[immerable] = true;\n\nexport class ConfigureCustomAttributeDto extends CustomAttributeDto\n{\n public inUse: boolean|null;\n\n public constructor(init?: Partial<ConfigureCustomAttributeDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ConfigureCustomAttributeDto as unknown)[immerable] = true;\n\nexport class GetCustomAttributeListsResponse\n{\n public id: string|null;\n public niceName: string|null;\n public values: ConfigureCustomAttributeDto[]|null;\n\n public constructor(init?: Partial<GetCustomAttributeListsResponse>) { (Object as any).assign(this, init); }\n}\n(GetCustomAttributeListsResponse as unknown)[immerable] = true;\n\nexport class CustomAttributes implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public name: string|null;\n public typeId: string|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<CustomAttributes>) { (Object as any).assign(this, init); }\n}\n(CustomAttributes as unknown)[immerable] = true;\n\nexport enum TokenStatus\n{\n PotentialChange = 'PotentialChange',\n AwaitingToken = 'AwaitingToken',\n Available = 'Available',\n Expired = 'Expired',\n}\n\nexport class TokenSearchResponse\n{\n public id: string|null;\n public customerId: number|null;\n public pan: string|null;\n public token: string|null;\n public merchant: string|null;\n public expiryDate: string|null;\n public tokenStatus: TokenStatus|null;\n\n public constructor(init?: Partial<TokenSearchResponse>) { (Object as any).assign(this, init); }\n}\n(TokenSearchResponse as unknown)[immerable] = true;\n\nexport class TokenRegisterResponse\n{\n public id: string|null;\n public customerId: number|null;\n public pan: string|null;\n public token: string|null;\n public merchant: string|null;\n public expiryDate: string|null;\n\n public constructor(init?: Partial<TokenRegisterResponse>) { (Object as any).assign(this, init); }\n}\n(TokenRegisterResponse as unknown)[immerable] = true;\n\nexport enum AppointmentBillingType\n{\n None = 'None',\n CaseflowManaged = 'CaseflowManaged',\n ClinicManaged = 'ClinicManaged',\n}\n\nexport class AppointmentDetailsResponse\n{\n public id: number|null;\n public locationId: number|null;\n public bookingMethod: string|null;\n public bookedByName: string|null;\n public firstAppointment: boolean|null;\n public groupName: string|null;\n public authId: number|null;\n public authCode: string|null;\n public caseId: number|null;\n public casePractitionerId: number|null;\n public prontoAuditId: string|null;\n public prontoAppointmentId: string|null;\n public prontoServiceId: string|null;\n public meta: { [index:string]: Object; }|null;\n public isVideo: boolean|null;\n public videoCode: string|null;\n public discountCodeId: string|null;\n public discountCodeAppliedDate: string|null;\n public discountCodeAdvance: boolean|null;\n public videoLink: string|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingPassword: string|null;\n public authMaxTreatments: number|null;\n public authMaxValue: number|null;\n public authValueRemaining: number|null;\n public authStartDate: string|null;\n public authExpiryDate: string|null;\n public authLeft: number|null;\n public reminderDate: string|null;\n public reminderType: string|null;\n public videoMeetingHostJoinUrl: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n public videoMeetingId: string|null;\n public caseReference: string|null;\n public stockId: string|null;\n public stockReference: string|null;\n public stockTotalPrice: string|null;\n public casePractitioner: string|null;\n public caseBodySite: string|null;\n public caseDateOfAdmission: string|null;\n public caseFirstAppointmentId: number|null;\n public caseNumberOfAppointments: number|null;\n public classSessionId: number|null;\n public isFirstAppointmentCase: boolean|null;\n public stockDescription: string|null;\n public batchNo: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public roomId: number|null;\n public practitionerId: number|null;\n public type: string|null;\n public patient: RestrictedCustomerDetails|null;\n public name: string|null;\n public prepaymentStatus: string|null;\n public appointmentBillingType: AppointmentBillingType|null;\n\n public constructor(init?: Partial<AppointmentDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentDetailsResponse as unknown)[immerable] = true;\n\nexport class AppointmentCreateClickCaseResponse\n{\n public caseId: number|null;\n\n public constructor(init?: Partial<AppointmentCreateClickCaseResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentCreateClickCaseResponse as unknown)[immerable] = true;\n\nexport class Tm3BookingAudit\n{\n public id: string|null;\n public userId: number|null;\n public appointmentId: string|null;\n public appointmentStartDateTime: string|null;\n public appointmentBookingDateTime: string|null;\n public appointmentCustomerId: string|null;\n public customerReference: string|null;\n public bookingType: string|null;\n public serviceId: string|null;\n public referrerReference: string|null;\n public locationId: string|null;\n public targetId: string|null;\n public bookerId: string|null;\n public referralStatus: number|null;\n public auditClash: boolean|null;\n public triageReport: string|null;\n public initialReport: string|null;\n public rfatReport: string|null;\n public dischargeReport: string|null;\n public needsAction: boolean|null;\n public appointments: ReferralAppointment[]|null;\n public authorisations: ReferralAuthorisation[]|null;\n public serviceCharges: { [index:string]: ServiceCharge; }|null;\n public workflowId: number|null;\n public reminderSentType: number|null;\n public initialReportSubmissionDueDate: string|null;\n public firstReminderSentDate: string|null;\n public finalReminderSentDate: string|null;\n public expiredReminderSentDate: string|null;\n public referrerAlwaysRequiresAuthorisations: boolean|null;\n\n public constructor(init?: Partial<Tm3BookingAudit>) { (Object as any).assign(this, init); }\n}\n(Tm3BookingAudit as unknown)[immerable] = true;\n\nexport class AppointmentBookingInfoResponse\n{\n public customer: GeneralCustomerResponse|null;\n public defaultCharge: StockResponse|null;\n public authCodes: TreatmentAuthResponse[]|null;\n public prePaid: StockResponse[]|null;\n public cases: AppointmentCaseResponse[]|null;\n public prontoBookings: Tm3BookingAudit[]|null;\n public meta: { [index:string]: Object; }|null;\n\n public constructor(init?: Partial<AppointmentBookingInfoResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentBookingInfoResponse as unknown)[immerable] = true;\n\nexport class CreateTemporaryAppointmentResponse\n{\n public id: number|null;\n public backgroundJobId: string|null;\n\n public constructor(init?: Partial<CreateTemporaryAppointmentResponse>) { (Object as any).assign(this, init); }\n}\n(CreateTemporaryAppointmentResponse as unknown)[immerable] = true;\n\nexport class AppointmentPrepaidIncomeResponse\n{\n public merchantReference: string|null;\n public data: { [index:string]: string; }|null;\n public paymentIntentId: string|null;\n public isPrepayment: boolean|null;\n\n public constructor(init?: Partial<AppointmentPrepaidIncomeResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentPrepaidIncomeResponse as unknown)[immerable] = true;\n\nexport class CaseAlertFlagsResponse\n{\n public quickPicks: Lookup[]|null;\n public id: number|null;\n public description: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<CaseAlertFlagsResponse>) { (Object as any).assign(this, init); }\n}\n(CaseAlertFlagsResponse as unknown)[immerable] = true;\n\nexport class GetAllAdvancedSearchFiltersResponse\n{\n public existingFilterResults: SearchFilter[]|null;\n public searchConditions: SearchFilterCondition[]|null;\n\n public constructor(init?: Partial<GetAllAdvancedSearchFiltersResponse>) { (Object as any).assign(this, init); }\n}\n(GetAllAdvancedSearchFiltersResponse as unknown)[immerable] = true;\n\nexport class VaultSessionResponse\n{\n public sessionToken: string|null;\n\n public constructor(init?: Partial<VaultSessionResponse>) { (Object as any).assign(this, init); }\n}\n(VaultSessionResponse as unknown)[immerable] = true;\n\nexport class GetInitialRegistrationSessionTokenResponse extends VaultSessionResponse\n{\n\n public constructor(init?: Partial<GetInitialRegistrationSessionTokenResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(GetInitialRegistrationSessionTokenResponse as unknown)[immerable] = true;\n\nexport enum TrackingCategoryStatus\n{\n Active = 'Active',\n Archived = 'Archived',\n Deleted = 'Deleted',\n}\n\nexport class AccountingTrackingCategory\n{\n public trackingCategoryID: string|null;\n public name: string|null;\n public status: TrackingCategoryStatus|null;\n\n public constructor(init?: Partial<AccountingTrackingCategory>) { (Object as any).assign(this, init); }\n}\n(AccountingTrackingCategory as unknown)[immerable] = true;\n\nexport class AccountingSystemProviderInfo\n{\n public displayName: string|null;\n public accountingSystemName: AccountingSystemProviderName|null;\n public imageUrl: string|null;\n public serviceId: string|null;\n\n public constructor(init?: Partial<AccountingSystemProviderInfo>) { (Object as any).assign(this, init); }\n}\n(AccountingSystemProviderInfo as unknown)[immerable] = true;\n\nexport class AllAccountingConfigAndSettings\n{\n public accountingSettings: AccountingSettingInfo[]|null;\n public allowedAccountingIntegrations: AccountingSystemProviderInfo[]|null;\n\n public constructor(init?: Partial<AllAccountingConfigAndSettings>) { (Object as any).assign(this, init); }\n}\n(AllAccountingConfigAndSettings as unknown)[immerable] = true;\n\nexport enum AccountingPaymentType\n{\n Overpayment = 'Overpayment',\n Prepayment = 'Prepayment',\n Refund = 'Refund',\n}\n\nexport class IncomingAccountingPaymentResponse\n{\n public accountingPaymentType: AccountingPaymentType|null;\n public paymentDate: string|null;\n public totalAmount: number|null;\n public incomingPaymentId: string|null;\n public paymentMethod: string|null;\n public invoiceAllocationAmount: number|null;\n public remainingAmount: number|null;\n public paymentStatus: string|null;\n\n public constructor(init?: Partial<IncomingAccountingPaymentResponse>) { (Object as any).assign(this, init); }\n}\n(IncomingAccountingPaymentResponse as unknown)[immerable] = true;\n\nexport enum AccountingApiSyncState\n{\n Initiated = 'Initiated',\n Success = 'Success',\n Failure = 'Failure',\n RateLimit = 'RateLimit',\n PayFailure = 'PayFailure',\n}\n\nexport enum InvoiceTransactionEvent\n{\n None = 'None',\n NewInvoiceCreate = 'NewInvoiceCreate',\n InvoiceUpdate = 'InvoiceUpdate',\n InvoiceDelete = 'InvoiceDelete',\n InvoiceTransfer = 'InvoiceTransfer',\n InvoiceChange = 'InvoiceChange',\n UseCharge = 'UseCharge',\n CreateCharges = 'CreateCharges',\n ChargeRemove = 'ChargeRemove',\n ChargeDelete = 'ChargeDelete',\n ChargeUpdate = 'ChargeUpdate',\n}\n\nexport enum PaymentTransactionEvent\n{\n None = 'None',\n PaymentCreate = 'PaymentCreate',\n PaymentUpdate = 'PaymentUpdate',\n PaymentDelete = 'PaymentDelete',\n PaymentReconcile = 'PaymentReconcile',\n MultiplePaymentsPerInvoiceReconcile = 'MultiplePaymentsPerInvoiceReconcile',\n PaymentUpdateReconciliation = 'PaymentUpdateReconciliation',\n PaymentUnReconcile = 'PaymentUnReconcile',\n PaymentRefund = 'PaymentRefund',\n}\n\nexport class InvoiceWithAccountingSystemInfo extends Invoice\n{\n public invoiceId: number|null;\n public systemId: string|null;\n public systemName: AccountingSystemProviderName|null;\n public systemInvoiceStatus: string|null;\n public accountingSystemInvoiceId: string|null;\n\n public constructor(init?: Partial<InvoiceWithAccountingSystemInfo>) { super(init); (Object as any).assign(this, init); }\n}\n(InvoiceWithAccountingSystemInfo as unknown)[immerable] = true;\n\nexport class IncomeWithAccountingSystemInfo extends Income\n{\n public incomeId: number|null;\n public systemId: string|null;\n public systemName: AccountingSystemProviderName|null;\n public accountingSystemPaymentId: string|null;\n public accountingPaymentType: AccountingPaymentType|null;\n public systemPaymentStatus: string|null;\n\n public constructor(init?: Partial<IncomeWithAccountingSystemInfo>) { super(init); (Object as any).assign(this, init); }\n}\n(IncomeWithAccountingSystemInfo as unknown)[immerable] = true;\n\nexport class BillingItemWithAccountingSystemInfo extends BillingItem\n{\n public billingItemId: number|null;\n public systemId: string|null;\n public systemName: AccountingSystemProviderName|null;\n public accountingSystemLineItemId: string|null;\n public accountingSystemCreditNoteId: string|null;\n public creditNoteAllocationId: string|null;\n\n public constructor(init?: Partial<BillingItemWithAccountingSystemInfo>) { super(init); (Object as any).assign(this, init); }\n}\n(BillingItemWithAccountingSystemInfo as unknown)[immerable] = true;\n\nexport class InvoicePayment implements IHasId\n{\n public id: number|null;\n public invoiceId: number|null;\n public paymentId: number|null;\n public refundId: number|null;\n public amount: number|null;\n public paymentLocationID: number|null;\n\n public constructor(init?: Partial<InvoicePayment>) { (Object as any).assign(this, init); }\n}\n(InvoicePayment as unknown)[immerable] = true;\n\nexport class IncomeWithInvoicePayment extends InvoicePayment\n{\n public paymentMethod: string|null;\n public otherPaymentMethod: string|null;\n public date: string|null;\n public reference: string|null;\n public paidBy: string|null;\n public notes: string|null;\n public cardType: string|null;\n public cardNumber: string|null;\n public expiry: string|null;\n public chequeNumber: string|null;\n public migrated: boolean|null;\n public paymentAmount: number|null;\n public transferred: string|null;\n public lodgementReference: string|null;\n public merchantReference: string|null;\n public status: string|null;\n public accountingSystemInvoiceId: string|null;\n public accountingSystemPaymentId: string|null;\n\n public constructor(init?: Partial<IncomeWithInvoicePayment>) { super(init); (Object as any).assign(this, init); }\n}\n(IncomeWithInvoicePayment as unknown)[immerable] = true;\n\nexport class InvoicePaymentWithAccountingSystemInfo extends IncomeWithInvoicePayment\n{\n public invoicePaymentId: number|null;\n public systemId: string|null;\n public systemName: AccountingSystemProviderName|null;\n public accountingSystemAllocationId: string|null;\n\n public constructor(init?: Partial<InvoicePaymentWithAccountingSystemInfo>) { super(init); (Object as any).assign(this, init); }\n}\n(InvoicePaymentWithAccountingSystemInfo as unknown)[immerable] = true;\n\nexport class AccountingTransactionSyncJobRequest\n{\n public batchId: string|null;\n public invoiceId: number|null;\n public transferredInvoiceId: number|null;\n public invoiceEvent: InvoiceTransactionEvent|null;\n public paymentId: number|null;\n public refundPaymentId: number|null;\n public paymentEvent: PaymentTransactionEvent|null;\n public paymentType: AccountingPaymentType|null;\n public chargeIdToRemove: number|null;\n public invoicesToReconcile: number[]|null;\n public multiplePaymentsToReconcile: number[]|null;\n public invoiceToDelete: InvoiceWithAccountingSystemInfo|null;\n public paymentToDelete: IncomeWithAccountingSystemInfo|null;\n public chargeToDelete: BillingItemWithAccountingSystemInfo|null;\n public isCreditTypeBillingItem: boolean|null;\n public billingItemCategory: string|null;\n public creditNoteIdToReconcile: number|null;\n public invoicePaymentsToUnReconcile: InvoicePaymentWithAccountingSystemInfo[]|null;\n public subTransactionProcess: AccountingTransactionSyncJobRequest|null;\n\n public constructor(init?: Partial<AccountingTransactionSyncJobRequest>) { (Object as any).assign(this, init); }\n}\n(AccountingTransactionSyncJobRequest as unknown)[immerable] = true;\n\nexport class AccountingApiSyncHistory implements IHasId\n{\n public id: number|null;\n public batchId: string|null;\n public syncDateTime: string|null;\n public systemName: AccountingSystemProviderName|null;\n public apiSyncState: AccountingApiSyncState|null;\n public transactionDto: AccountingTransactionSyncJobRequest|null;\n public invoiceId: number|null;\n public paymentId: number|null;\n public invoiceEvent: InvoiceTransactionEvent|null;\n public paymentEvent: PaymentTransactionEvent|null;\n public requestUrl: string|null;\n public requestDescription: string|null;\n public requestPayload: string|null;\n public requestDuration: number|null;\n public statusCode: string|null;\n public responsePayload: string|null;\n public error: string|null;\n\n public constructor(init?: Partial<AccountingApiSyncHistory>) { (Object as any).assign(this, init); }\n}\n(AccountingApiSyncHistory as unknown)[immerable] = true;\n\nexport class AccountingApiSyncHistorySearchResponse extends AccountingApiSyncHistory\n{\n\n public constructor(init?: Partial<AccountingApiSyncHistorySearchResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(AccountingApiSyncHistorySearchResponse as unknown)[immerable] = true;\n\nexport class PhioConfigResponse\n{\n public baseUrl: string|null;\n public accountName: string|null;\n public email: string|null;\n\n public constructor(init?: Partial<PhioConfigResponse>) { (Object as any).assign(this, init); }\n}\n(PhioConfigResponse as unknown)[immerable] = true;\n\nexport class SubscriptionResponse\n{\n public id: number|null;\n public status: SubscriptionStatus|null;\n public startDate: string|null;\n public expiryDate: string|null;\n public name: string|null;\n public packageId: string|null;\n public totalExVat: number|null;\n public vatRate: number|null;\n public totalIncVat: number|null;\n public locationId: number|null;\n public locationName: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public customer: CustomerLiteDto|null;\n public practitionerId: number|null;\n public nextDue: string|null;\n public subscriptionInterval: number|null;\n public subscriptionIntervalUnit: SubscriptionRecurrenceInterval|null;\n public earliestAllowedCancellationDate: string|null;\n public lastRunOn: string|null;\n public bundles: PackageBundleResponse[]|null;\n public customerId: number|null;\n public invoiceStatus: string|null;\n public invoiceStatusText: string|null;\n\n public constructor(init?: Partial<SubscriptionResponse>) { (Object as any).assign(this, init); }\n}\n(SubscriptionResponse as unknown)[immerable] = true;\n\nexport class SubscriptionHistoryResponse\n{\n public billingItemItemId: number|null;\n public billingItemTotal: number|null;\n public invoiceId: number|null;\n public invoiceStatus: string|null;\n public paymentMethod: string|null;\n public billingItemDate: string|null;\n public invoiceDate: string|null;\n public fullyPaidDate: string|null;\n public invoiceReference: string|null;\n public invoiceStatusName: string|null;\n\n public constructor(init?: Partial<SubscriptionHistoryResponse>) { (Object as any).assign(this, init); }\n}\n(SubscriptionHistoryResponse as unknown)[immerable] = true;\n\nexport class SquareOAuthResponse\n{\n public success: boolean|null;\n public errorMessage: string|null;\n\n public constructor(init?: Partial<SquareOAuthResponse>) { (Object as any).assign(this, init); }\n}\n(SquareOAuthResponse as unknown)[immerable] = true;\n\nexport class SquareOAuthPermissionsResponse\n{\n public permissions: string[]|null;\n\n public constructor(init?: Partial<SquareOAuthPermissionsResponse>) { (Object as any).assign(this, init); }\n}\n(SquareOAuthPermissionsResponse as unknown)[immerable] = true;\n\nexport class BasicCardDetailsResponse\n{\n public cardExists: boolean|null;\n public last4: string|null;\n\n public constructor(init?: Partial<BasicCardDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(BasicCardDetailsResponse as unknown)[immerable] = true;\n\nexport class FullCardDetailsResponse extends CardDetails\n{\n public cardExists: boolean|null;\n\n public constructor(init?: Partial<FullCardDetailsResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(FullCardDetailsResponse as unknown)[immerable] = true;\n\nexport class DeleteCardDetailsResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<DeleteCardDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(DeleteCardDetailsResponse as unknown)[immerable] = true;\n\nexport class PackageResponseBase\n{\n public id: number|null;\n public reference: string|null;\n public totalPrice: number|null;\n public description: string|null;\n public appointmentLength: number|null;\n public groupLocationLocationId: number|null;\n public locationId: number|null;\n public colour: number|null;\n public online: boolean|null;\n public onlineGuid: string|null;\n public inUse: boolean|null;\n public priceExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public costAmount: number|null;\n public costVATRate: number|null;\n public costExVAT: number|null;\n public costVATAmount: number|null;\n public longDescription: string|null;\n public ledgerCode: string|null;\n public category: string|null;\n public level: number|null;\n public minimumLevel: number|null;\n public displayInPriceList: boolean|null;\n public totalWorth: number|null;\n public supplierId: number|null;\n public serviceTypeId: number|null;\n public isPrivateCharge: boolean|null;\n public stockIsCancel: boolean|null;\n public stockIsFirst: boolean|null;\n public stockIsFollowUp: boolean|null;\n public stockIsDNA: boolean|null;\n public isMultiple: boolean|null;\n public groupName: string|null;\n public overrides: StockOverrideResponse[]|null;\n public colourCss: string|null;\n public validForDaysFromPurchase: number|null;\n public isSubscriptionType: boolean|null;\n public subscriptionInterval: number|null;\n public subscriptionIntervalUnit: SubscriptionRecurrenceInterval|null;\n public hasMinimumTerm: boolean|null;\n public minimumTermValue: number|null;\n public minimumTermInterval: number|null;\n public minimumTermIntervalUnit: SubscriptionRecurrenceInterval|null;\n public hasMaximumTerm: boolean|null;\n public maximumTermValue: number|null;\n public maximumTermInterval: number|null;\n public maximumTermIntervalUnit: SubscriptionRecurrenceInterval|null;\n public onePerCustomer: boolean|null;\n public newCustomersOnly: boolean|null;\n public allowDiscountCodes: boolean|null;\n public hasValidityPeriod: boolean|null;\n public validFrom: string|null;\n public validTo: string|null;\n public termsAndConditionsFormId: string|null;\n public updateExistingSubscriptionsToUseNewBundles: boolean|null;\n public urlSlug: string|null;\n public imageName: string|null;\n public ledgerCodeOverrides: AccountingStockLedgerLookup[]|null;\n public legderCodeAccountId: string|null;\n public creditAmount: number|null;\n public packageType: PackageType|null;\n public excludeNonPrivateCharges: boolean|null;\n public excludedClassTypeIds: number[]|null;\n public excludedStockIds: number[]|null;\n public excludedStockOnlineIds: string[]|null;\n\n public constructor(init?: Partial<PackageResponseBase>) { (Object as any).assign(this, init); }\n}\n(PackageResponseBase as unknown)[immerable] = true;\n\nexport class PackageResponse extends PackageResponseBase\n{\n public bundles: PackageBundleResponse[]|null;\n public expirationValue: number|null;\n public quantityThreshold: number|null;\n public excludedStockNames: string[]|null;\n public excludedClassTypeNames: string[]|null;\n\n public constructor(init?: Partial<PackageResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(PackageResponse as unknown)[immerable] = true;\n\nexport class OnlineAppointmentHistoryResult\n{\n public appointmentId: number|null;\n public classAttendanceId: number|null;\n public isCourse: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public status: number|null;\n public locationName: string|null;\n public onlineGuid: string|null;\n public locationGuid: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public practitionerName: string|null;\n public totalPrice: number|null;\n public overridePrice: number|null;\n public name: string|null;\n public type: string|null;\n public day: number|null;\n public prePaidId: number|null;\n public serviceId: string|null;\n public canCancel: boolean|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public isVideo: boolean|null;\n public videoCode: string|null;\n public isCaseflow: boolean|null;\n // @Ignore()\n public isConnectService: boolean|null;\n\n public bookingMethod: string|null;\n public billingItemId: number|null;\n\n public constructor(init?: Partial<OnlineAppointmentHistoryResult>) { (Object as any).assign(this, init); }\n}\n(OnlineAppointmentHistoryResult as unknown)[immerable] = true;\n\nexport class ClassAttendanceResponse\n{\n public id: number|null;\n public attendeeId: number|null;\n public hasAttended: boolean|null;\n public dna: boolean|null;\n public hasBilled: boolean|null;\n public hasPaid: boolean|null;\n public sessionId: number|null;\n public invoiceId: number|null;\n public invoiceStatus: string|null;\n public billingItemId: number|null;\n public prePaidId: number|null;\n public prePaymentIncomeId: number|null;\n public customer: CustomerLiteDto|null;\n public customerId: number|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public treatmentId: number|null;\n public treatmentClosed: boolean|null;\n public caseClosed: boolean|null;\n public treatmentClosedDate: string|null;\n public caseClosedDate: string|null;\n public isTemp: boolean|null;\n public bookingMethod: string|null;\n public hasCreditAvailable: boolean|null;\n public customerEmail: string|null;\n public customerMobileTelephone: string|null;\n public customerSMSEnabled: boolean|null;\n public canCommunicate: boolean|null;\n public isCancelled: boolean|null;\n public classTypeId: number|null;\n public owesCredit: boolean|null;\n\n public constructor(init?: Partial<ClassAttendanceResponse>) { (Object as any).assign(this, init); }\n}\n(ClassAttendanceResponse as unknown)[immerable] = true;\n\nexport class WaitingListWithDetails extends WaitingList\n{\n public stockDescription: string|null;\n public appointmentLength: number|null;\n public onlineGuid: string|null;\n public classTypeName: string|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public appointmentStatus: number|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public mobileTelephone: string|null;\n public email: string|null;\n public smsEnabled: boolean|null;\n public canCommunicate: boolean|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<WaitingListWithDetails>) { super(init); (Object as any).assign(this, init); }\n}\n(WaitingListWithDetails as unknown)[immerable] = true;\n\nexport class ClassSessionBaseResponse\n{\n public id: number|null;\n public courseId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public appointmentId: number|null;\n public classTypeId: number|null;\n public locationName: string|null;\n public roomName: string|null;\n public locationId: number|null;\n public roomId: number|null;\n public practitionerId: number|null;\n public gender: string|null;\n public practitionerOnlineGuid: string|null;\n public minAttendees: number|null;\n public maxAttendees: number|null;\n public isAvailableOnline: boolean|null;\n public type: ClassTypeResponse|null;\n public attendance: ClassAttendanceResponse[]|null;\n public cancelled: ClassAttendanceResponse[]|null;\n public enrolledCustomerIds: number[]|null;\n public waitingListEnrolled: WaitingListWithDetails[]|null;\n public appointmentStatus: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public isVideo: boolean|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingHostJoinUrl: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n\n public constructor(init?: Partial<ClassSessionBaseResponse>) { (Object as any).assign(this, init); }\n}\n(ClassSessionBaseResponse as unknown)[immerable] = true;\n\nexport class CourseAttendeeResponse\n{\n public id: number|null;\n public customerId: number|null;\n public name: string|null;\n public hasBilled: boolean|null;\n public hasPaid: boolean|null;\n public courseId: number|null;\n public courseSessionId: number|null;\n public invoiceId: number|null;\n public billingItemId: number|null;\n public prePaidId: number|null;\n public invoiceStatus: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public customerEmail: string|null;\n public customerMobileTelephone: string|null;\n public customerSMSEnabled: boolean|null;\n public canCommunicate: boolean|null;\n\n public constructor(init?: Partial<CourseAttendeeResponse>) { (Object as any).assign(this, init); }\n}\n(CourseAttendeeResponse as unknown)[immerable] = true;\n\nexport class CourseResponse\n{\n public id: number|null;\n public online: boolean|null;\n public startDate: string|null;\n public type: ClassTypeResponse|null;\n public sessions: ClassSessionBaseResponse[]|null;\n public courseAttendees: CourseAttendeeResponse[]|null;\n public totalAttendance: number|null;\n public waitingListEnrolled: WaitingListWithDetails[]|null;\n public locationName: string|null;\n public roomName: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public roomId: number|null;\n public minAttendees: number|null;\n public maxAttendees: number|null;\n public locationGuid: string|null;\n public classTypeId: number|null;\n public practitionerName: string|null;\n\n public constructor(init?: Partial<CourseResponse>) { (Object as any).assign(this, init); }\n}\n(CourseResponse as unknown)[immerable] = true;\n\nexport class WaitingListResponse\n{\n public lists: { [index:string]: WaitingListWithDetails[]; }|null;\n\n public constructor(init?: Partial<WaitingListResponse>) { (Object as any).assign(this, init); }\n}\n(WaitingListResponse as unknown)[immerable] = true;\n\nexport class OnlineLocationDto\n{\n public id: number|null;\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public address: string|null;\n public telephone: string|null;\n public email: string|null;\n public web: string|null;\n public fax: string|null;\n public status: number|null;\n public onlineGuid: string|null;\n public facilities: string|null;\n public locationLat: number|null;\n public locationLong: number|null;\n public latLong: number[]|null;\n public hasCoordinates: boolean|null;\n public isMainLocation: boolean|null;\n public merchantReference: string|null;\n\n public constructor(init?: Partial<OnlineLocationDto>) { (Object as any).assign(this, init); }\n}\n(OnlineLocationDto as unknown)[immerable] = true;\n\nexport class OnlineWorkflowCaseDetails\n{\n public id: number|null;\n public maxTreatments: number|null;\n public usedTreatments: number|null;\n public groupId: number|null;\n public creationDate: string|null;\n public locationId: string|null;\n public productId: string|null;\n public productServiceId: string|null;\n public capturePointServiceId: string|null;\n public connectServiceId: string|null;\n public isFollowUp: boolean|null;\n public code: string|null;\n public canBook: boolean|null;\n public canBookFirstAppointment: boolean|null;\n\n public constructor(init?: Partial<OnlineWorkflowCaseDetails>) { (Object as any).assign(this, init); }\n}\n(OnlineWorkflowCaseDetails as unknown)[immerable] = true;\n\nexport class BusinessCategoryResponse\n{\n public isMatch: boolean|null;\n public reason: string|null;\n public categories: OnlineServiceCategory[]|null;\n public services: OnlineClinicService[]|null;\n\n public constructor(init?: Partial<BusinessCategoryResponse>) { (Object as any).assign(this, init); }\n}\n(BusinessCategoryResponse as unknown)[immerable] = true;\n\nexport class MyDiaryResponse\n{\n public appointments: OnlineAppointmentHistoryResult[]|null;\n public classes: OnlineAppointmentHistoryResult[]|null;\n public courses: CourseResponse[]|null;\n public waitingLists: WaitingListResponse|null;\n public additionalLocations: OnlineLocationDto[]|null;\n public workflowCases: OnlineWorkflowCaseDetails[]|null;\n public customerId: number|null;\n public services: BusinessCategoryResponse|null;\n\n public constructor(init?: Partial<MyDiaryResponse>) { (Object as any).assign(this, init); }\n}\n(MyDiaryResponse as unknown)[immerable] = true;\n\nexport class AppointmentSummary\n{\n public startDateTime: string|null;\n public endDateTime: string|null;\n public locationName: string|null;\n public locationAddress1: string|null;\n public locationAddress2: string|null;\n public locationEmail: string|null;\n public email: string|null;\n public reference: string|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public id: number|null;\n public mobileNumber: string|null;\n public customerId: number|null;\n public smsEnabled: boolean|null;\n public status: number|null;\n public stockId: number|null;\n public isNetworkBooking: boolean|null;\n\n public constructor(init?: Partial<AppointmentSummary>) { (Object as any).assign(this, init); }\n}\n(AppointmentSummary as unknown)[immerable] = true;\n\nexport class OnlinePatientFormResponse\n{\n public lookups: LookupResponse[]|null;\n public nestedLists: NestedLookup[]|null;\n public id: number|null;\n public globalId: string|null;\n public templateId: string|null;\n public reportData: string|null;\n public submissionDate: string|null;\n public completionDate: string|null;\n public lastEditedDate: string|null;\n public lastEdited: string|null;\n public patientId: number|null;\n public caseId: number|null;\n public status: number|null;\n public templateName: string|null;\n public templateDescription: string|null;\n public templateBody: string|null;\n public templateType: string|null;\n public psfs: Psfs[]|null;\n public templateFormat: BlockTemplateFormat|null;\n\n public constructor(init?: Partial<OnlinePatientFormResponse>) { (Object as any).assign(this, init); }\n}\n(OnlinePatientFormResponse as unknown)[immerable] = true;\n\nexport class OnlineCancellationOptions\n{\n public chargeApplies: boolean|null;\n public isPrePaid: boolean|null;\n public prePaidId: number|null;\n public totalPaid: number|null;\n public cancellationCharge: number|null;\n public cancellationChargeExVat: number|null;\n public stockId: number|null;\n\n public constructor(init?: Partial<OnlineCancellationOptions>) { (Object as any).assign(this, init); }\n}\n(OnlineCancellationOptions as unknown)[immerable] = true;\n\nexport class OnlineCancellationOptionsResponse\n{\n public cancellationOptions: OnlineCancellationOptions|null;\n public cardDetails: CardDetails|null;\n public cancellationReasons: string[]|null;\n\n public constructor(init?: Partial<OnlineCancellationOptionsResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineCancellationOptionsResponse as unknown)[immerable] = true;\n\nexport class OnlineInvoiceBillingItem\n{\n public itemPrice: number|null;\n public description: string|null;\n\n public constructor(init?: Partial<OnlineInvoiceBillingItem>) { (Object as any).assign(this, init); }\n}\n(OnlineInvoiceBillingItem as unknown)[immerable] = true;\n\nexport class OnlineInvoice\n{\n public id: number|null;\n public price: number|null;\n public date: string|null;\n public location: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public isReceipt: boolean|null;\n public items: OnlineInvoiceBillingItem[]|null;\n\n public constructor(init?: Partial<OnlineInvoice>) { (Object as any).assign(this, init); }\n}\n(OnlineInvoice as unknown)[immerable] = true;\n\nexport class OnlineInvoiceListResponse\n{\n public receipts: OnlineInvoice[]|null;\n\n public constructor(init?: Partial<OnlineInvoiceListResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineInvoiceListResponse as unknown)[immerable] = true;\n\nexport class OnlinePaymentDetailsResponse\n{\n public cardDetails: CardDetails|null;\n public packages: PackageResponse[]|null;\n public hasCredit: boolean|null;\n public creditsAvailable: number|null;\n public hasPrePaid: boolean|null;\n public hasFutureCredit: boolean|null;\n public stockCreditValue: number|null;\n\n public constructor(init?: Partial<OnlinePaymentDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(OnlinePaymentDetailsResponse as unknown)[immerable] = true;\n\nexport class PackageBundleStatusResponse\n{\n public quantity: number|null;\n public used: number|null;\n public total: number|null;\n public type: PackageBundleItemType|null;\n public items: PackageBundleItemResponse[]|null;\n public packageId: string|null;\n\n public constructor(init?: Partial<PackageBundleStatusResponse>) { (Object as any).assign(this, init); }\n}\n(PackageBundleStatusResponse as unknown)[immerable] = true;\n\nexport class CustomerPackagesResponse\n{\n public id: string|null;\n public imageName: string|null;\n public colour: number|null;\n public colourCss: string|null;\n public description: string|null;\n public totalPrice: number|null;\n public bundles: PackageBundleStatusResponse[]|null;\n public expiryDate: string|null;\n public isSubscription: boolean|null;\n public prePaidId: number|null;\n public billingItemId: number|null;\n public urlSlug: string|null;\n public status: PrePaidStatus|null;\n public validForDaysFromPurchase: number|null;\n public packageType: PackageType|null;\n public creditAmount: number|null;\n public creditsUsed: number|null;\n public excludedStockNames: string[]|null;\n public excludedClassTypeNames: string[]|null;\n\n public constructor(init?: Partial<CustomerPackagesResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerPackagesResponse as unknown)[immerable] = true;\n\nexport class CustomerSubscriptionResponse extends CustomerPackagesResponse\n{\n public subscriptionId: number|null;\n public ableToCancel: boolean|null;\n public subscriptionStatus: SubscriptionStatus|null;\n public subscriptionInterval: number|null;\n public earliestAllowedCancellationDate: string|null;\n public subscriptionIntervalUnit: SubscriptionRecurrenceInterval|null;\n\n public constructor(init?: Partial<CustomerSubscriptionResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(CustomerSubscriptionResponse as unknown)[immerable] = true;\n\nexport class OnlineMyPackagesResponse\n{\n public packages: CustomerPackagesResponse[]|null;\n public subscriptions: CustomerSubscriptionResponse[]|null;\n\n public constructor(init?: Partial<OnlineMyPackagesResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineMyPackagesResponse as unknown)[immerable] = true;\n\nexport class BuyPackageResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<BuyPackageResponse>) { (Object as any).assign(this, init); }\n}\n(BuyPackageResponse as unknown)[immerable] = true;\n\nexport class ToursModel\n{\n public homeScreenTour1: boolean|null;\n public diaryWorkingTimeTour1: boolean|null;\n public diaryCreateTour1: boolean|null;\n public diaryEditTour1: boolean|null;\n public diaryCompleteTour1: boolean|null;\n public diaryEventTour1: boolean|null;\n public invoiceWizardTour1: boolean|null;\n public licenseAgreement: boolean|null;\n public previewNewUx: boolean|null;\n public licenseAgreement0419: boolean|null;\n public seenWelcomeScreen: boolean|null;\n\n public constructor(init?: Partial<ToursModel>) { (Object as any).assign(this, init); }\n}\n(ToursModel as unknown)[immerable] = true;\n\nexport class User implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public name: string|null;\n public fullName: string|null;\n public current: boolean|null;\n public temporaryPassword: string|null;\n public migrated: boolean|null;\n public email: string|null;\n public online: boolean|null;\n public type: string|null;\n public typeId: number|null;\n public salt: string|null;\n public passwordHash: string|null;\n public locationId: number|null;\n // @Ignore()\n public locationGuid: string|null;\n\n public practitionerId: number|null;\n // @Ignore()\n public practitionerGuid: string|null;\n\n public position: string|null;\n public mobileNumber: string|null;\n public permissionId: number|null;\n // @Ignore()\n public permissionGuid: string|null;\n\n public passwordScore: number|null;\n public passwordExpiry: string|null;\n public tours: ToursModel|null;\n public saltBytes: string|null;\n public version: number|null;\n public status: number|null;\n // @Ignore()\n public onlineGuid: string|null;\n\n public globalGuid: string|null;\n public level: string|null;\n public verified: boolean|null;\n public avatar: string|null;\n public firstName: string|null;\n public lastName: string|null;\n public twoFactorSecret: string|null;\n public signatureRxIntegrationCode: string|null;\n public pinHash: string|null;\n public signature: string|null;\n\n public constructor(init?: Partial<User>) { (Object as any).assign(this, init); }\n}\n(User as unknown)[immerable] = true;\n\nexport class OnlineReportTemplateItem\n{\n public id: string|null;\n public body: string|null;\n public name: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<OnlineReportTemplateItem>) { (Object as any).assign(this, init); }\n}\n(OnlineReportTemplateItem as unknown)[immerable] = true;\n\nexport class CaseflowTemplate\n{\n public id: string|null;\n public name: string|null;\n public type: string|null;\n public groupGlobalId: string|null;\n public isActive: boolean|null;\n public isRemoved: boolean|null;\n public mandatoryFieldOverrides: { [index:string]: { [index:string]: boolean; }; }|null;\n public labelOverrides: { [index:string]: { [index:string]: string; }; }|null;\n public customLists: { [index:string]: { [index:string]: string; }; }|null;\n public sections: OnlineReportTemplateItem[]|null;\n public saveSections: string[]|null;\n public lists: { [index:string]: NestedLookup; }|null;\n public allowsAttachments: boolean|null;\n public requiresAttachment: boolean|null;\n public attachmentPromptText: string|null;\n public serviceTypeId: string|null;\n\n public constructor(init?: Partial<CaseflowTemplate>) { (Object as any).assign(this, init); }\n}\n(CaseflowTemplate as unknown)[immerable] = true;\n\nexport class OnlineCaseflowFormResponse\n{\n public lookups: LookupResponse[]|null;\n public nestedLists: NestedLookup[]|null;\n public productId: string|null;\n public template: CaseflowTemplate|null;\n\n public constructor(init?: Partial<OnlineCaseflowFormResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineCaseflowFormResponse as unknown)[immerable] = true;\n\nexport class OnlineRole\n{\n public id: string|null;\n public role: WorkflowContactType|null;\n public name: string|null;\n public stream: string|null;\n public canRefer: boolean|null;\n public isFinancial: boolean|null;\n public isAdministrative: boolean|null;\n public isClinical: boolean|null;\n public isClinicalAdmin: boolean|null;\n\n public constructor(init?: Partial<OnlineRole>) { (Object as any).assign(this, init); }\n}\n(OnlineRole as unknown)[immerable] = true;\n\nexport class OnlineCaseflowContact extends MedicalContactResponse\n{\n public canRefer: boolean|null;\n public isFinancial: boolean|null;\n public isAdmin: boolean|null;\n public isClinical: boolean|null;\n public role: string|null;\n public roleDescription: string|null;\n public groupName: string|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<OnlineCaseflowContact>) { super(init); (Object as any).assign(this, init); }\n}\n(OnlineCaseflowContact as unknown)[immerable] = true;\n\nexport class OnlineCategoryResponse\n{\n public categories: OnlineServiceCategory[]|null;\n public services: OnlineClinicService[]|null;\n\n public constructor(init?: Partial<OnlineCategoryResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineCategoryResponse as unknown)[immerable] = true;\n\nexport class OnlinePractitionerDto\n{\n public id: string|null;\n public pId: number|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public name: string|null;\n public locationId: string|null;\n public practitionerId: string|null;\n public gender: string|null;\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<OnlinePractitionerDto>) { (Object as any).assign(this, init); }\n}\n(OnlinePractitionerDto as unknown)[immerable] = true;\n\nexport class OnlineInitialResponse extends OnlineCategoryResponse\n{\n public locations: OnlineLocationDto[]|null;\n public practitioners: OnlinePractitionerDto[]|null;\n public sections: OnlineSection[]|null;\n public packages: PackageResponse[]|null;\n public lookups: Lookup[]|null;\n public isWaitingListEnabled: boolean|null;\n public isCaseflow: boolean|null;\n public isMfaEnabled: boolean|null;\n\n public constructor(init?: Partial<OnlineInitialResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(OnlineInitialResponse as unknown)[immerable] = true;\n\nexport class AvailabilitySession\n{\n public date: string|null;\n public locationId: string|null;\n public practitionerId: string|null;\n\n public constructor(init?: Partial<AvailabilitySession>) { (Object as any).assign(this, init); }\n}\n(AvailabilitySession as unknown)[immerable] = true;\n\nexport class LocationFacility\n{\n public id: string|null;\n public name: string|null;\n public icon: string|null;\n\n public constructor(init?: Partial<LocationFacility>) { (Object as any).assign(this, init); }\n}\n(LocationFacility as unknown)[immerable] = true;\n\nexport class OnlineNetworkLocation\n{\n public distance: number|null;\n public locationBusinessId: string|null;\n public locationId: string|null;\n public name: string|null;\n public publicDisplayName: string|null;\n public networkId: string|null;\n public networkName: string|null;\n public latLong: string|null;\n public hasCoordinates: boolean|null;\n public address: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public locationProntoStatus: string|null;\n public telephone: string|null;\n public locationFacilities: LocationFacility[]|null;\n\n public constructor(init?: Partial<OnlineNetworkLocation>) { (Object as any).assign(this, init); }\n}\n(OnlineNetworkLocation as unknown)[immerable] = true;\n\nexport class AppointmentDto\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public name: string|null;\n public customerId: string|null;\n public practitionerId: number|null;\n public practitionerGuid: string|null;\n public locationId: number|null;\n public locationGuid: string|null;\n public status: number|null;\n public type: string|null;\n public reference: string|null;\n public roomId: number|null;\n public stockId: string|null;\n public caseId: number|null;\n public groupId: number|null;\n public bookedBy: number|null;\n public authId: number|null;\n public serviceTypeId: number|null;\n public firstAppointment: boolean|null;\n public bookingMethod: string|null;\n public bookingDateTime: string|null;\n public completedTime: string|null;\n public duration: number|null;\n public comment: string|null;\n public appointmentType: AppointmentType|null;\n public backgroundJobId: string|null;\n public videoCode: string|null;\n\n public constructor(init?: Partial<AppointmentDto>) { (Object as any).assign(this, init); }\n}\n(AppointmentDto as unknown)[immerable] = true;\n\nexport enum RegistrationStatus\n{\n New = 0,\n QuickRegister = 1,\n Default = 2,\n NotAllowed = 3,\n MfaChallenge = 4,\n Exists = -1,\n}\n\nexport class GetUserByEmailOrMobileResponse\n{\n public status: RegistrationStatus|null;\n public statusCode: number|null;\n\n public constructor(init?: Partial<GetUserByEmailOrMobileResponse>) { (Object as any).assign(this, init); }\n}\n(GetUserByEmailOrMobileResponse as unknown)[immerable] = true;\n\nexport class OnlineRegisterValidationResponse\n{\n public emailValid: boolean|null;\n public mobileNumberValid: boolean|null;\n public message: string|null;\n\n public constructor(init?: Partial<OnlineRegisterValidationResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineRegisterValidationResponse as unknown)[immerable] = true;\n\nexport class OnlineWaitingListReservationConfirmResponse\n{\n public startDateTime: string|null;\n public endDateTime: string|null;\n public stockId: string|null;\n public courseId: number|null;\n public classSessionId: number|null;\n public hasClassSessionId: boolean|null;\n public stockDescription: string|null;\n public classTypeName: string|null;\n public bookingDateTime: string|null;\n public reservationEndDateTime: string|null;\n public duration: number|null;\n public appointmentId: number|null;\n public locationName: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public appointmentStatus: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public isExpired: boolean|null;\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerName: string|null;\n public waitingListStatus: WaitingListStatus|null;\n public waitingListSubStatus: WaitingListSubStatus|null;\n public waitingListType: WaitingListType|null;\n public courseSessions: ClassSessionBaseResponse[]|null;\n public totalPrice: number|null;\n public priceExVAT: number|null;\n public linkedToAppointmentId: number|null;\n public waitingListPaid: boolean|null;\n\n public constructor(init?: Partial<OnlineWaitingListReservationConfirmResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineWaitingListReservationConfirmResponse as unknown)[immerable] = true;\n\nexport class ChasedPaymentDTO\n{\n public paymentUrlCode: string|null;\n public paymentAmount: number|null;\n public paymentStatus: number|null;\n public locationId: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<ChasedPaymentDTO>) { (Object as any).assign(this, init); }\n}\n(ChasedPaymentDTO as unknown)[immerable] = true;\n\nexport class GetSquareCustomerDetailsResponse\n{\n public addressLines: string[]|null;\n public familyName: string|null;\n public givenName: string|null;\n public email: string|null;\n public country: string|null;\n public phone: string|null;\n public region: string|null;\n public city: string|null;\n\n public constructor(init?: Partial<GetSquareCustomerDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(GetSquareCustomerDetailsResponse as unknown)[immerable] = true;\n\nexport enum OnlineAutoLoginAuthenticationResult\n{\n Success = 'Success',\n Fail = 'Fail',\n AccessCodeDoesntMatch = 'AccessCodeDoesntMatch',\n TokenDoesNotMatch = 'TokenDoesNotMatch',\n AccessCodeNotProvided = 'AccessCodeNotProvided',\n Expired = 'Expired',\n Redirect = 'Redirect',\n}\n\nexport class MsBillingItemResponse implements IHasId\n{\n public id: number|null;\n public date: string|null;\n public description: string|null;\n public totalExVAT: number|null;\n public quantity: number|null;\n public itemPrice: number|null;\n public vatRate: number|null;\n public totalVAT: number|null;\n public total: number|null;\n\n public constructor(init?: Partial<MsBillingItemResponse>) { (Object as any).assign(this, init); }\n}\n(MsBillingItemResponse as unknown)[immerable] = true;\n\nexport class MsInvoiceResponse\n{\n public id: number|null;\n public reference: string|null;\n public addressTo: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public date: string|null;\n public dueDate: string|null;\n public fullyPaidDate: string|null;\n public totalExcludingVAT: number|null;\n public vatAmount: number|null;\n public grandTotal: number|null;\n public amountPaid: number|null;\n public status: string|null;\n public paymentMethod: string|null;\n public locationId: number|null;\n public currencySymbol: string|null;\n public vatNumber: string|null;\n public salesStatus: string|null;\n public purchaseOrderNumber: string|null;\n public billingItems: MsBillingItemResponse[]|null;\n public payments: Income[]|null;\n public isBespoke: boolean|null;\n public creditNoteAmount: number|null;\n\n public constructor(init?: Partial<MsInvoiceResponse>) { (Object as any).assign(this, init); }\n}\n(MsInvoiceResponse as unknown)[immerable] = true;\n\nexport class Tm3License implements IHasId\n{\n public id: number|null;\n public noOfDiarys: number|null;\n public modules: string[]|null;\n public firstDiaryMonthly: number|null;\n public additionalDiaryMonthly: number|null;\n public firstDiaryMonthlyOverride: number|null;\n public additionalDiaryMonthlyOverride: number|null;\n public totalMonthly: number|null;\n public totalMonthlyPreDiscount: number|null;\n public totalMonthlyOverride: number|null;\n public totalMonthlyVatAmount: number|null;\n public creationDate: string|null;\n\n public constructor(init?: Partial<Tm3License>) { (Object as any).assign(this, init); }\n}\n(Tm3License as unknown)[immerable] = true;\n\nexport class GetClientPricingResponse\n{\n public basePrice: number|null;\n public additionalPrice: number|null;\n public basePriceWithVAT: number|null;\n public additionalPriceWithVAT: number|null;\n public vatRate: number|null;\n public smsRate: number|null;\n public downgrading: number|null;\n public upgrading: number|null;\n\n public constructor(init?: Partial<GetClientPricingResponse>) { (Object as any).assign(this, init); }\n}\n(GetClientPricingResponse as unknown)[immerable] = true;\n\nexport class ConfirmClientSignUpResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ConfirmClientSignUpResponse>) { (Object as any).assign(this, init); }\n}\n(ConfirmClientSignUpResponse as unknown)[immerable] = true;\n\nexport class SaveClientPaymentDetailsResponse\n{\n public clientSecret: string|null;\n\n public constructor(init?: Partial<SaveClientPaymentDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(SaveClientPaymentDetailsResponse as unknown)[immerable] = true;\n\nexport class ClickPPCDetailsResponse\n{\n public telehealthRate: number|null;\n public smsRate: number|null;\n public cardCommission: string|null;\n public formsRate: number|null;\n\n public constructor(init?: Partial<ClickPPCDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(ClickPPCDetailsResponse as unknown)[immerable] = true;\n\nexport class ClickUpgradeDetailsResponse\n{\n public upfront: number|null;\n public monthly: number|null;\n public cardCommission: string|null;\n\n public constructor(init?: Partial<ClickUpgradeDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(ClickUpgradeDetailsResponse as unknown)[immerable] = true;\n\nexport class ClickTrialResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ClickTrialResponse>) { (Object as any).assign(this, init); }\n}\n(ClickTrialResponse as unknown)[immerable] = true;\n\nexport class ClickDowngradeResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ClickDowngradeResponse>) { (Object as any).assign(this, init); }\n}\n(ClickDowngradeResponse as unknown)[immerable] = true;\n\nexport class ClientDowngradeToSingleLicenseResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ClientDowngradeToSingleLicenseResponse>) { (Object as any).assign(this, init); }\n}\n(ClientDowngradeToSingleLicenseResponse as unknown)[immerable] = true;\n\nexport class ClientNoLongerWantsToCancelResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ClientNoLongerWantsToCancelResponse>) { (Object as any).assign(this, init); }\n}\n(ClientNoLongerWantsToCancelResponse as unknown)[immerable] = true;\n\nexport class ConfirmClientCancellationResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ConfirmClientCancellationResponse>) { (Object as any).assign(this, init); }\n}\n(ConfirmClientCancellationResponse as unknown)[immerable] = true;\n\nexport class MSCurrencyResponse\n{\n public currencySymbol: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<MSCurrencyResponse>) { (Object as any).assign(this, init); }\n}\n(MSCurrencyResponse as unknown)[immerable] = true;\n\nexport class MSSubscriptionResponse\n{\n public date: string|null;\n\n public constructor(init?: Partial<MSSubscriptionResponse>) { (Object as any).assign(this, init); }\n}\n(MSSubscriptionResponse as unknown)[immerable] = true;\n\nexport class CreditAutoTopUpAmountResponse\n{\n public number: number|null;\n\n public constructor(init?: Partial<CreditAutoTopUpAmountResponse>) { (Object as any).assign(this, init); }\n}\n(CreditAutoTopUpAmountResponse as unknown)[immerable] = true;\n\nexport class SMSOrderHistoryResponse\n{\n\n public constructor(init?: Partial<SMSOrderHistoryResponse>) { (Object as any).assign(this, init); }\n}\n(SMSOrderHistoryResponse as unknown)[immerable] = true;\n\nexport class BundleOption\n{\n public number: number|null;\n public totalExVAT: number|null;\n public vatAmount: number|null;\n public total: number|null;\n public bundleType: string|null;\n\n public constructor(init?: Partial<BundleOption>) { (Object as any).assign(this, init); }\n}\n(BundleOption as unknown)[immerable] = true;\n\nexport class SMSBundleOptionsResponse\n{\n public bundles: BundleOption[]|null;\n public remaining: number|null;\n\n public constructor(init?: Partial<SMSBundleOptionsResponse>) { (Object as any).assign(this, init); }\n}\n(SMSBundleOptionsResponse as unknown)[immerable] = true;\n\nexport class ExtraSystemCreditResponse\n{\n public amountPurchased: number|null;\n public purchaseDate: string|null;\n public amountRemaining: number|null;\n public expiryDate: string|null;\n\n public constructor(init?: Partial<ExtraSystemCreditResponse>) { (Object as any).assign(this, init); }\n}\n(ExtraSystemCreditResponse as unknown)[immerable] = true;\n\nexport class SystemCreditBundleOptionsResponse\n{\n public bundles: BundleOption[]|null;\n public remaining: number|null;\n public total: number|null;\n public extras: ExtraSystemCreditResponse[]|null;\n\n public constructor(init?: Partial<SystemCreditBundleOptionsResponse>) { (Object as any).assign(this, init); }\n}\n(SystemCreditBundleOptionsResponse as unknown)[immerable] = true;\n\nexport class CreditOrderHistoryResponse\n{\n\n public constructor(init?: Partial<CreditOrderHistoryResponse>) { (Object as any).assign(this, init); }\n}\n(CreditOrderHistoryResponse as unknown)[immerable] = true;\n\nexport class PayPerClickDetail\n{\n public id: number|null;\n public date: string|null;\n public itemType: string|null;\n public itemId: number|null;\n public itemGuid: string|null;\n public userId: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public locationName: string|null;\n public practitionerName: string|null;\n public userName: string|null;\n public includedInAllowance: boolean|null;\n public itemReference: string|null;\n public content: string|null;\n public value: number|null;\n\n public constructor(init?: Partial<PayPerClickDetail>) { (Object as any).assign(this, init); }\n}\n(PayPerClickDetail as unknown)[immerable] = true;\n\nexport class PayPerClickStats\n{\n public activePractitioners: number|null;\n public paygPractitioners: number|null;\n public appointments: number|null;\n public paygAppointments: number|null;\n public classes: number|null;\n public paygClasses: number|null;\n public systemCredits: number|null;\n\n public constructor(init?: Partial<PayPerClickStats>) { (Object as any).assign(this, init); }\n}\n(PayPerClickStats as unknown)[immerable] = true;\n\nexport class PayPerClickStatsResponse\n{\n public thisMonth: PayPerClickStats|null;\n public lastMonth: PayPerClickStats|null;\n\n public constructor(init?: Partial<PayPerClickStatsResponse>) { (Object as any).assign(this, init); }\n}\n(PayPerClickStatsResponse as unknown)[immerable] = true;\n\nexport class UnrestrictedUserResponse\n{\n public unrestricted: number[]|null;\n\n public constructor(init?: Partial<UnrestrictedUserResponse>) { (Object as any).assign(this, init); }\n}\n(UnrestrictedUserResponse as unknown)[immerable] = true;\n\nexport class DiaryAnalysisReport\n{\n public locationStatus: number|null;\n public locationName: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerStatus: number|null;\n // @Ignore()\n public appointmentClassification: string|null;\n\n public groupId: number|null;\n public groupName: string|null;\n public roomDescription: string|null;\n // @Ignore()\n public patientName: string|null;\n\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public email: string|null;\n public dateOfBirth: string|null;\n public ageGrouping: string|null;\n public startDateTime: string|null;\n public appointmentName: string|null;\n // @Ignore()\n public details: string|null;\n\n public notes: string|null;\n public appointmentStatus: AppointmentStatus|null;\n public stockDescription: string|null;\n public isFirstAppointment: boolean|null;\n // @Ignore()\n public appointmentDescription: string|null;\n\n // @Ignore()\n public treatmentType: string|null;\n\n public appointmentType: string|null;\n // @Ignore()\n public diaryEventCategory: string|null;\n\n public bookingMethod: string|null;\n public bookingMethodText: string|null;\n public reason: string|null;\n // @Ignore()\n public cancellationReason: string|null;\n\n public username: string|null;\n // @Ignore()\n public bookedBy: string|null;\n\n public stockId: number|null;\n public projectedIncome: number|null;\n public authLeft: number|null;\n public _cancelMethod: string|null;\n // @Ignore()\n public cancelMethod: string|null;\n\n public _lastActionDateTime: string|null;\n // @Ignore()\n public lastActionDateTime: string|null;\n\n public _lastActionUser: string|null;\n // @Ignore()\n public lastActionUser: string|null;\n\n public _prepaymentStatus: string|null;\n // @Ignore()\n public prepaymentStatus: string|null;\n\n public _recallStatus: string|null;\n // @Ignore()\n public recallStatus: string|null;\n\n public constructor(init?: Partial<DiaryAnalysisReport>) { (Object as any).assign(this, init); }\n}\n(DiaryAnalysisReport as unknown)[immerable] = true;\n\nexport class DiaryAnalysisResponse\n{\n public results: DiaryAnalysisReport[]|null;\n public total: number|null;\n public totals: { [index:string]: number; }|null;\n\n public constructor(init?: Partial<DiaryAnalysisResponse>) { (Object as any).assign(this, init); }\n}\n(DiaryAnalysisResponse as unknown)[immerable] = true;\n\nexport class NonReturningReportResponse\n{\n public customerReference: string|null;\n public customerName: string|null;\n public totalAppointments: number|null;\n public lastAppointmentDate: string|null;\n public totalCharges: number|null;\n public practitionerName: string|null;\n public practitionerId: number|null;\n public locationName: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<NonReturningReportResponse>) { (Object as any).assign(this, init); }\n}\n(NonReturningReportResponse as unknown)[immerable] = true;\n\nexport enum TrafficAttendance\n{\n High = 'High',\n Low = 'Low',\n}\n\nexport class TrafficReportResponse\n{\n public customerId: number|null;\n public accountId: number|null;\n public patientName: string|null;\n public totalAppointments: number|null;\n public booked: number|null;\n public completed: number|null;\n public dna: number|null;\n public cancelled: number|null;\n public totalClasses: number|null;\n public billedClient: number|null;\n public billedGroup: number|null;\n public attendance: TrafficAttendance|null;\n public totalClassAttendance: number|null;\n public totalEvents: number|null;\n public bookingMethod: string|null;\n\n public constructor(init?: Partial<TrafficReportResponse>) { (Object as any).assign(this, init); }\n}\n(TrafficReportResponse as unknown)[immerable] = true;\n\nexport class AutopayReportResult\n{\n public customerTitle: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n // @Ignore()\n public customerName: string|null;\n\n public nextDue: string|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public name: string|null;\n public totalIncVat: number|null;\n public status: SubscriptionStatus|null;\n // @Ignore()\n public number: string|null;\n\n public locationId: number|null;\n public locationName: string|null;\n public practitionerId: number|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n public expiresSoon: boolean|null;\n public hasStripe: boolean|null;\n public cardExpiresSoon: boolean|null;\n public expiryYear: number|null;\n public expiryMonth: number|null;\n public stripeCustomerId: string|null;\n public packageId: string|null;\n\n public constructor(init?: Partial<AutopayReportResult>) { (Object as any).assign(this, init); }\n}\n(AutopayReportResult as unknown)[immerable] = true;\n\nexport class GetSettingsResponse extends OnlineSettings\n{\n public connectUrl: string|null;\n\n public constructor(init?: Partial<GetSettingsResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(GetSettingsResponse as unknown)[immerable] = true;\n\nexport class CanDeleteImageResponse\n{\n public isLogo: boolean|null;\n public isOffer: boolean|null;\n public isTitle: boolean|null;\n public packages: string[]|null;\n public categories: string[]|null;\n public services: string[]|null;\n\n public constructor(init?: Partial<CanDeleteImageResponse>) { (Object as any).assign(this, init); }\n}\n(CanDeleteImageResponse as unknown)[immerable] = true;\n\nexport class BusinessSettingsIdResponse\n{\n public settingsId: number|null;\n\n public constructor(init?: Partial<BusinessSettingsIdResponse>) { (Object as any).assign(this, init); }\n}\n(BusinessSettingsIdResponse as unknown)[immerable] = true;\n\nexport class ClassSearchResult\n{\n public id: number|null;\n public appointmentId: number|null;\n public courseId: number|null;\n public classTypeId: number|null;\n public stockId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public status: number|null;\n public locationId: number|null;\n public locationName: string|null;\n public onlineGuid: string|null;\n public price: number|null;\n public priceExVat: number|null;\n public creditValue: number|null;\n public practitionerId: number|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public practitionerName: string|null;\n public practitionerGender: string|null;\n // @Ignore()\n public practGender: Gender|null;\n\n public isCourse: boolean|null;\n public name: string|null;\n public defaultMinAttendees: number|null;\n public defaultMaxAttendees: number|null;\n public stockOnlineGuid: string|null;\n public waitingListEnrolled: WaitingListWithDetails[]|null;\n public practitionerOnlineGuid: string|null;\n public isAttending: boolean|null;\n public courseSessionIndex: number|null;\n public courseTotalSessions: number|null;\n public serviceId: string|null;\n\n public constructor(init?: Partial<ClassSearchResult>) { (Object as any).assign(this, init); }\n}\n(ClassSearchResult as unknown)[immerable] = true;\n\nexport class ClassTypeBase implements IHasId\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public imageUrl: string|null;\n public isCourse: boolean|null;\n public termsAndConditionsFormId: string|null;\n public colour: number|null;\n public defaultSessionLength: number|null;\n public defaultMinAttendees: number|null;\n public defaultMaxAttendees: number|null;\n public isAvailableOnline: boolean|null;\n public cancellationChargeApplies: boolean|null;\n public cancellationHours: number|null;\n public cancellationStockId: number|null;\n public isCurrent: boolean|null;\n public isFavourite: boolean|null;\n public serviceTypeId: number|null;\n public isVideo: boolean|null;\n\n public constructor(init?: Partial<ClassTypeBase>) { (Object as any).assign(this, init); }\n}\n\nexport class ClassType extends ClassTypeBase\n{\n public lateTransferChargeApplies: boolean|null;\n public lateTransferHours: number|null;\n public allowPayPerSession: boolean|null;\n public stockId: number|null;\n public numberOfSessions: number|null;\n\n public constructor(init?: Partial<ClassType>) { super(init); (Object as any).assign(this, init); }\n}\n(ClassType as unknown)[immerable] = true;\n\nexport class ClassSearchResponse\n{\n public classes: ClassSearchResult[]|null;\n public locationIds: string[]|null;\n public attendance: { [index:number]: number; }|null;\n public classInfo: ClassType|null;\n public courseAppointmentDates: { [index:number]: string[]; }|null;\n\n public constructor(init?: Partial<ClassSearchResponse>) { (Object as any).assign(this, init); }\n}\n(ClassSearchResponse as unknown)[immerable] = true;\n\nexport class SimilarClass\n{\n public classSessionId: number|null;\n public startDateTime: string|null;\n\n public constructor(init?: Partial<SimilarClass>) { (Object as any).assign(this, init); }\n}\n(SimilarClass as unknown)[immerable] = true;\n\n// @DataContract\nexport class ConvertSessionToTokenResponse\n{\n // @DataMember(Order=1)\n public meta: { [index:string]: string; }|null;\n\n // @DataMember(Order=2)\n public accessToken: string|null;\n\n // @DataMember(Order=3)\n public refreshToken: string|null;\n\n // @DataMember(Order=4)\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<ConvertSessionToTokenResponse>) { (Object as any).assign(this, init); }\n}\n(ConvertSessionToTokenResponse as unknown)[immerable] = true;\n\nexport class ZoomSaveStateResponse\n{\n public apiKey: string|null;\n public redirectUri: string|null;\n\n public constructor(init?: Partial<ZoomSaveStateResponse>) { (Object as any).assign(this, init); }\n}\n(ZoomSaveStateResponse as unknown)[immerable] = true;\n\nexport enum ZoomUserType\n{\n Basic = 1,\n Licensed = 2,\n OnPrem = 3,\n}\n\nexport class ZoomUser\n{\n public id: string|null;\n public firstName: string|null;\n public lastName: string|null;\n public email: string|null;\n public type: ZoomUserType|null;\n public status: string|null;\n public pmi: number|null;\n public timezone: string|null;\n public dept: string|null;\n public createdAt: string|null;\n public lastLoginTime: string|null;\n public lastClientVersion: string|null;\n public groupIds: string[]|null;\n public verified: number|null;\n public accountId: string|null;\n public fullName: string|null;\n\n public constructor(init?: Partial<ZoomUser>) { (Object as any).assign(this, init); }\n}\n(ZoomUser as unknown)[immerable] = true;\n\nexport class ZoomReauthResponse extends ZoomSaveStateResponse\n{\n public isInvalid: boolean|null;\n\n public constructor(init?: Partial<ZoomReauthResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(ZoomReauthResponse as unknown)[immerable] = true;\n\nexport class WaitingListByIdResponse extends WaitingList\n{\n\n public constructor(init?: Partial<WaitingListByIdResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(WaitingListByIdResponse as unknown)[immerable] = true;\n\nexport class WaitingListStateHistory implements IHasId\n{\n public id: number|null;\n public waitingListId: number|null;\n public customerId: number|null;\n public description: string|null;\n public listType: WaitingListType|null;\n public stockId: number|null;\n public classTypeId: number|null;\n public temporaryClassSessionId: number|null;\n public temporaryCourseId: number|null;\n public temporaryAppointmentId: number|null;\n public status: WaitingListStatus|null;\n public subStatus: WaitingListSubStatus|null;\n public notificationType: WaitingListNotificationType|null;\n public dateUpdated: string|null;\n public startDateTime: string|null;\n public pauseUntilDateTime: string|null;\n\n public constructor(init?: Partial<WaitingListStateHistory>) { (Object as any).assign(this, init); }\n}\n(WaitingListStateHistory as unknown)[immerable] = true;\n\nexport class WaitingListStateHistoryResponse extends WaitingListStateHistory\n{\n\n public constructor(init?: Partial<WaitingListStateHistoryResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(WaitingListStateHistoryResponse as unknown)[immerable] = true;\n\nexport class AllowedIP implements IHasId\n{\n public id: number|null;\n public address: string|null;\n\n public constructor(init?: Partial<AllowedIP>) { (Object as any).assign(this, init); }\n}\n(AllowedIP as unknown)[immerable] = true;\n\nexport class AllowedIPResponse\n{\n public allowed: AllowedIP[]|null;\n\n public constructor(init?: Partial<AllowedIPResponse>) { (Object as any).assign(this, init); }\n}\n(AllowedIPResponse as unknown)[immerable] = true;\n\nexport class EmbeddableDashboardToken\n{\n public token: string|null;\n\n public constructor(init?: Partial<EmbeddableDashboardToken>) { (Object as any).assign(this, init); }\n}\n(EmbeddableDashboardToken as unknown)[immerable] = true;\n\nexport class SystemLog implements IHasId\n{\n public id: number|null;\n public description: string|null;\n public requestId: string|null;\n public requestUrl: string|null;\n public requestMethod: string|null;\n public requestPayload: string|null;\n public responseStatus: string|null;\n public responsePayload: string|null;\n public date: string|null;\n public exception: string|null;\n public duration: number|null;\n public customerId: number|null;\n public objectId: number|null;\n public objectType: string|null;\n\n public constructor(init?: Partial<SystemLog>) { (Object as any).assign(this, init); }\n}\n(SystemLog as unknown)[immerable] = true;\n\nexport class SystemLogWithCustomerName extends SystemLog\n{\n public name: string|null;\n public forename: string|null;\n public surname: string|null;\n\n public constructor(init?: Partial<SystemLogWithCustomerName>) { super(init); (Object as any).assign(this, init); }\n}\n(SystemLogWithCustomerName as unknown)[immerable] = true;\n\nexport class SquareGetDeviceCodeResponse\n{\n public code: string|null;\n\n public constructor(init?: Partial<SquareGetDeviceCodeResponse>) { (Object as any).assign(this, init); }\n}\n(SquareGetDeviceCodeResponse as unknown)[immerable] = true;\n\nexport class TerminalPairingResponse\n{\n public deviceCode: string|null;\n public paired: boolean|null;\n\n public constructor(init?: Partial<TerminalPairingResponse>) { (Object as any).assign(this, init); }\n}\n(TerminalPairingResponse as unknown)[immerable] = true;\n\nexport class Terminal implements IHasId\n{\n public id: number|null;\n public merchantId: string|null;\n public locationId: number|null;\n public deviceCode: string|null;\n public name: string|null;\n public pairedAt: string|null;\n public inUse: boolean|null;\n public provider: PaymentProviderName|null;\n\n public constructor(init?: Partial<Terminal>) { (Object as any).assign(this, init); }\n}\n(Terminal as unknown)[immerable] = true;\n\nexport class SquareTerminalPaymentResponse\n{\n public checkoutId: string|null;\n\n public constructor(init?: Partial<SquareTerminalPaymentResponse>) { (Object as any).assign(this, init); }\n}\n(SquareTerminalPaymentResponse as unknown)[immerable] = true;\n\nexport class ChangeCardResponse\n{\n public details: CardDetails|null;\n public paymentMethodId: string|null;\n public clientSecret: string|null;\n public paymentIntentId: string|null;\n\n public constructor(init?: Partial<ChangeCardResponse>) { (Object as any).assign(this, init); }\n}\n(ChangeCardResponse as unknown)[immerable] = true;\n\nexport class ClearAcceptConfigResponse\n{\n public scriptUrl: string|null;\n\n public constructor(init?: Partial<ClearAcceptConfigResponse>) { (Object as any).assign(this, init); }\n}\n(ClearAcceptConfigResponse as unknown)[immerable] = true;\n\nexport class ApiCredentials implements IHasGuidId\n{\n public id: string|null;\n public secret: string|null;\n public createdDate: string|null;\n public expiryDate: string|null;\n public cancelledDate: string|null;\n public notes: string|null;\n public isSoftDeleted: boolean|null;\n public isOutboundOnly: boolean|null;\n // @Ignore()\n public isValid: boolean|null;\n\n public userId: number|null;\n\n public constructor(init?: Partial<ApiCredentials>) { (Object as any).assign(this, init); }\n}\n(ApiCredentials as unknown)[immerable] = true;\n\nexport class ClickBillResponse\n{\n public invoiceId: number|null;\n public invoiceStatus: string|null;\n public serviceName: string|null;\n public serviceTotalPrice: string|null;\n\n public constructor(init?: Partial<ClickBillResponse>) { (Object as any).assign(this, init); }\n}\n(ClickBillResponse as unknown)[immerable] = true;\n\nexport class ClickDownloadInvoiceResponse\n{\n public invoiceId: number|null;\n public pdfReceipt: string|null;\n\n public constructor(init?: Partial<ClickDownloadInvoiceResponse>) { (Object as any).assign(this, init); }\n}\n(ClickDownloadInvoiceResponse as unknown)[immerable] = true;\n\nexport class ClickCreatePaymentResponse\n{\n public paymentId: number|null;\n public pdfReceipt: string|null;\n\n public constructor(init?: Partial<ClickCreatePaymentResponse>) { (Object as any).assign(this, init); }\n}\n(ClickCreatePaymentResponse as unknown)[immerable] = true;\n\nexport class ClickCommunicationResponse\n{\n public subject: string|null;\n public to: string[]|null;\n public cc: string[]|null;\n public attachments: AttachmentGroup|null;\n public messageBody: string|null;\n\n public constructor(init?: Partial<ClickCommunicationResponse>) { (Object as any).assign(this, init); }\n}\n(ClickCommunicationResponse as unknown)[immerable] = true;\n\nexport class CreateClassResponse\n{\n public success: boolean|null;\n public clashes: string[]|null;\n public session: ClassSessionBaseResponse|null;\n\n public constructor(init?: Partial<CreateClassResponse>) { (Object as any).assign(this, init); }\n}\n(CreateClassResponse as unknown)[immerable] = true;\n\nexport class GetDesktopClassResponse\n{\n public name: string|null;\n public maxAttendees: number|null;\n\n public constructor(init?: Partial<GetDesktopClassResponse>) { (Object as any).assign(this, init); }\n}\n(GetDesktopClassResponse as unknown)[immerable] = true;\n\nexport enum AddingAttendeeResponse\n{\n SpaceAvailable = 'SpaceAvailable',\n SessionFull = 'SessionFull',\n AlreadyRegistered = 'AlreadyRegistered',\n PreviouslyCancelled = 'PreviouslyCancelled',\n}\n\nexport class AddingAttendeeToSessionErrors\n{\n public classSessionId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public availability: AddingAttendeeResponse|null;\n public errorMessage: string|null;\n public isSessionInThePast: boolean|null;\n\n public constructor(init?: Partial<AddingAttendeeToSessionErrors>) { (Object as any).assign(this, init); }\n}\n(AddingAttendeeToSessionErrors as unknown)[immerable] = true;\n\nexport class AddStudentToClassSessionResponse implements IClassFinanceResponse\n{\n public invoiceId: number|null;\n public paymentId: number|null;\n public clashMode: ClashMode|null;\n public errors: AddingAttendeeToSessionErrors[]|null;\n public hasErrors: boolean|null;\n public hasSessionFullErrors: boolean|null;\n public isAlreadyOnWaitingList: boolean|null;\n public hasSessionsInThePastErrors: boolean|null;\n public hasSpacesAvailable: boolean|null;\n public success: boolean|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<AddStudentToClassSessionResponse>) { (Object as any).assign(this, init); }\n}\n(AddStudentToClassSessionResponse as unknown)[immerable] = true;\n\nexport class EditClassResponse\n{\n public success: boolean|null;\n public clashes: ClassSessionBaseResponse[]|null;\n public session: ClassSessionBaseResponse|null;\n\n public constructor(init?: Partial<EditClassResponse>) { (Object as any).assign(this, init); }\n}\n(EditClassResponse as unknown)[immerable] = true;\n\nexport class PayForClassResponse implements IClassFinanceResponse\n{\n public invoiceId: number|null;\n public paymentId: number|null;\n public prePaidId: number|null;\n public billingItemId: number|null;\n\n public constructor(init?: Partial<PayForClassResponse>) { (Object as any).assign(this, init); }\n}\n(PayForClassResponse as unknown)[immerable] = true;\n\nexport class ClassCommunicationResponse\n{\n public customerId: number|null;\n public customerEmail: string|null;\n public customerMobileTelephone: string|null;\n public customerSMSEnabled: boolean|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n // @Ignore()\n public name: string|null;\n\n public constructor(init?: Partial<ClassCommunicationResponse>) { (Object as any).assign(this, init); }\n}\n(ClassCommunicationResponse as unknown)[immerable] = true;\n\nexport class PrePaidItemsForClassResponse\n{\n public packageName: string|null;\n public totalPrice: number|null;\n public itemDescription: string|null;\n public itemsLeft: number|null;\n public id: number|null;\n\n public constructor(init?: Partial<PrePaidItemsForClassResponse>) { (Object as any).assign(this, init); }\n}\n(PrePaidItemsForClassResponse as unknown)[immerable] = true;\n\nexport class AddStudentToCourseResponse implements IClassFinanceResponse\n{\n public result: CourseResponse|null;\n public invoiceId: number|null;\n public paymentId: number|null;\n public errors: AddingAttendeeToSessionErrors[]|null;\n public clashMode: ClashMode|null;\n public hasErrors: boolean|null;\n public hasSessionFullErrors: boolean|null;\n public isAlreadyOnWaitingList: boolean|null;\n public hasSpacesAvailableInAllSessions: boolean|null;\n public success: boolean|null;\n\n public constructor(init?: Partial<AddStudentToCourseResponse>) { (Object as any).assign(this, init); }\n}\n(AddStudentToCourseResponse as unknown)[immerable] = true;\n\nexport class EditCourseResponse\n{\n public success: boolean|null;\n public clashes: ClassSessionBaseResponse[]|null;\n public course: CourseResponse|null;\n\n public constructor(init?: Partial<EditCourseResponse>) { (Object as any).assign(this, init); }\n}\n(EditCourseResponse as unknown)[immerable] = true;\n\nexport class CreateCourseResponse\n{\n public success: boolean|null;\n public clashes: string[]|null;\n public session: ClassSessionBaseResponse|null;\n\n public constructor(init?: Partial<CreateCourseResponse>) { (Object as any).assign(this, init); }\n}\n(CreateCourseResponse as unknown)[immerable] = true;\n\nexport class RemoveStudentFromClassResponse implements IClassFinanceResponse\n{\n public invoiceId: number|null;\n public paymentId: number|null;\n public billingItemId: number|null;\n\n public constructor(init?: Partial<RemoveStudentFromClassResponse>) { (Object as any).assign(this, init); }\n}\n(RemoveStudentFromClassResponse as unknown)[immerable] = true;\n\nexport class GraphDataSet\n{\n public label: string|null;\n public fill: string|null;\n public borderColor: string|null;\n public yAxisID: string|null;\n public tension: string|null;\n public data: number[]|null;\n\n public constructor(init?: Partial<GraphDataSet>) { (Object as any).assign(this, init); }\n}\n(GraphDataSet as unknown)[immerable] = true;\n\nexport class DashboardGraphData\n{\n public labels: string[]|null;\n public datasets: GraphDataSet[]|null;\n\n public constructor(init?: Partial<DashboardGraphData>) { (Object as any).assign(this, init); }\n}\n(DashboardGraphData as unknown)[immerable] = true;\n\nexport class SearchReferralPortalDashboardStatisticsResponse\n{\n public activeReferrals: number|null;\n public reportApprovals: number|null;\n public authorisationsNeeded: number|null;\n public actionsRequired: number|null;\n public data: DashboardGraphData|null;\n\n public constructor(init?: Partial<SearchReferralPortalDashboardStatisticsResponse>) { (Object as any).assign(this, init); }\n}\n(SearchReferralPortalDashboardStatisticsResponse as unknown)[immerable] = true;\n\nexport class FormUrlResponse\n{\n public id: string|null;\n public communicationTemplate: string|null;\n public url: string|null;\n\n public constructor(init?: Partial<FormUrlResponse>) { (Object as any).assign(this, init); }\n}\n(FormUrlResponse as unknown)[immerable] = true;\n\nexport class NM_LocationFacility implements IHasGuidId\n{\n public id: string|null;\n public name: string|null;\n public description: string|null;\n public icon: string|null;\n\n public constructor(init?: Partial<NM_LocationFacility>) { (Object as any).assign(this, init); }\n}\n(NM_LocationFacility as unknown)[immerable] = true;\n\nexport class BookingOffers implements IHasGuidId\n{\n public id: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public businessId: string|null;\n public networkId: string|null;\n public locationId: string|null;\n public clinicianId: string|null;\n public clinicAccepted: boolean|null;\n public clinicRejectionReason: string|null;\n public patientAccepted: boolean|null;\n public patientRejectionReason: string|null;\n public bookingAuditId: string|null;\n public clinicAcceptedDate: string|null;\n public patientResponseEnabled: boolean|null;\n\n public constructor(init?: Partial<BookingOffers>) { (Object as any).assign(this, init); }\n}\n(BookingOffers as unknown)[immerable] = true;\n\nexport class BookingOfferWithDetails extends BookingOffers\n{\n public businessName: string|null;\n public locationName: string|null;\n public locationAddressLine1: string|null;\n public locationAddressLine2: string|null;\n public locationAddressLine3: string|null;\n public locationAddressLine4: string|null;\n public locationAddressLine5: string|null;\n public locationPostCode: string|null;\n public clinicianTitle: string|null;\n public clinicianForename: string|null;\n public clinicianSurname: string|null;\n public clinicianName: string|null;\n public clinicianEmail: string|null;\n public clinicianPhone: string|null;\n public productServiceId: string|null;\n public locationProntoStatus: LocationProntoStatus|null;\n\n public constructor(init?: Partial<BookingOfferWithDetails>) { super(init); (Object as any).assign(this, init); }\n}\n(BookingOfferWithDetails as unknown)[immerable] = true;\n\nexport class UkGeoCodeResponse\n{\n public location: string|null;\n public easting: number|null;\n public northing: number|null;\n public latitude: number|null;\n public longitude: number|null;\n public osGrid: string|null;\n public accuracy: string|null;\n\n public constructor(init?: Partial<UkGeoCodeResponse>) { (Object as any).assign(this, init); }\n}\n(UkGeoCodeResponse as unknown)[immerable] = true;\n\nexport class CoordinatesResponse\n{\n public success: boolean|null;\n public latitude: number|null;\n public longitude: number|null;\n\n public constructor(init?: Partial<CoordinatesResponse>) { (Object as any).assign(this, init); }\n}\n(CoordinatesResponse as unknown)[immerable] = true;\n\nexport class RetrieveNearestResponse\n{\n public yourId: string|null;\n public name: string|null;\n public description: string|null;\n public distance: number|null;\n public time: number|null;\n public easting: number|null;\n public northing: number|null;\n public latitude: number|null;\n public longitude: number|null;\n\n public constructor(init?: Partial<RetrieveNearestResponse>) { (Object as any).assign(this, init); }\n}\n(RetrieveNearestResponse as unknown)[immerable] = true;\n\nexport class RoleResponse\n{\n public id: string|null;\n public role: WorkflowContactType|null;\n public name: string|null;\n public stream: string|null;\n public canRefer: boolean|null;\n public isFinancial: boolean|null;\n public isAdministrative: boolean|null;\n public isClinical: boolean|null;\n public isClinicalAdmin: boolean|null;\n\n public constructor(init?: Partial<RoleResponse>) { (Object as any).assign(this, init); }\n}\n(RoleResponse as unknown)[immerable] = true;\n\nexport class WorkflowContactDto\n{\n public id: number|null;\n public role: NotificationType|null;\n public roleDescription: string|null;\n public reference: string|null;\n public contactType: WorkflowContactType|null;\n public contactTypeId: number|null;\n public contactTypeGuid: string|null;\n public isAdministrative: boolean|null;\n public isPatient: boolean|null;\n public isClinical: boolean|null;\n public isFinancial: boolean|null;\n public isNetwork: boolean|null;\n public isClinicalAdmin: boolean|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public email: string|null;\n public telephone: string|null;\n public groupId: number|null;\n public subWorkflowId: number|null;\n public name: string|null;\n\n public constructor(init?: Partial<WorkflowContactDto>) { (Object as any).assign(this, init); }\n}\n(WorkflowContactDto as unknown)[immerable] = true;\n\nexport class BusinessContactsResponse\n{\n public id: number|null;\n public name: string|null;\n public businessName: string|null;\n public address: string|null;\n public role: string|null;\n\n public constructor(init?: Partial<BusinessContactsResponse>) { (Object as any).assign(this, init); }\n}\n(BusinessContactsResponse as unknown)[immerable] = true;\n\nexport class CustomerGroupResponse extends GroupResponse\n{\n public referralPortalClientGuid: string|null;\n public referralPortalEnabled: boolean|null;\n\n public constructor(init?: Partial<CustomerGroupResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(CustomerGroupResponse as unknown)[immerable] = true;\n\nexport class CustomerFlagResponse\n{\n public customerFlag: CustomerFlag|null;\n\n public constructor(init?: Partial<CustomerFlagResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerFlagResponse as unknown)[immerable] = true;\n\nexport class ProcessDto\n{\n public id: string|null;\n public name: string|null;\n public isHold: boolean|null;\n public code: string|null;\n public stages: ProcessStageDto[]|null;\n public supplementaryActions: ProcessActionDto[]|null;\n public initialAction: ProcessActionDto|null;\n public metadata: { [index:string]: string; }|null;\n public current: boolean|null;\n\n public constructor(init?: Partial<ProcessDto>) { (Object as any).assign(this, init); }\n}\n(ProcessDto as unknown)[immerable] = true;\n\nexport class ReferralDto\n{\n public id: number|null;\n public createdDate: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public dateOfBirth: string|null;\n public email: string|null;\n public phone: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postcode: string|null;\n public reference: string|null;\n public type: string|null;\n public portalId: number|null;\n public groupId: number|null;\n public gender: string|null;\n public packageId: number|null;\n public bodySite: string|null;\n public isValid: boolean|null;\n public data: string|null;\n\n public constructor(init?: Partial<ReferralDto>) { (Object as any).assign(this, init); }\n}\n(ReferralDto as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/reports-definitions/{Id}\", \"PUT\")\nexport class CaseflowTemplateDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public name: string|null;\n public type: string|null;\n public groupGlobalId: string|null;\n public isActive: boolean|null;\n public isRemoved: boolean|null;\n public mandatoryFieldOverrides: { [index:string]: { [index:string]: boolean; }; }|null;\n public labelOverrides: { [index:string]: { [index:string]: string; }; }|null;\n public customLists: { [index:string]: { [index:string]: string; }; }|null;\n public sections: ReportTemplateItem[]|null;\n public saveSections: string[]|null;\n public lists: { [index:string]: NestedLookup; }|null;\n public allowsAttachments: boolean|null;\n public requiresAttachment: boolean|null;\n public attachmentPromptText: string|null;\n public serviceTypeId: string|null;\n\n public constructor(init?: Partial<CaseflowTemplateDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowTemplateDto'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CaseflowTemplateDto as unknown)[immerable] = true;\n\nexport class ReferralDataResponse\n{\n public data: JsonField|null;\n public template: CaseflowTemplateDto|null;\n\n public constructor(init?: Partial<ReferralDataResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralDataResponse as unknown)[immerable] = true;\n\nexport class WorkingHoursDto\n{\n public day: number|null;\n public startTime: string|null;\n public endTime: string|null;\n\n public constructor(init?: Partial<WorkingHoursDto>) { (Object as any).assign(this, init); }\n}\n(WorkingHoursDto as unknown)[immerable] = true;\n\nexport class NonWorkingDateDto\n{\n public id: number|null;\n public date: string|null;\n\n public constructor(init?: Partial<NonWorkingDateDto>) { (Object as any).assign(this, init); }\n}\n(NonWorkingDateDto as unknown)[immerable] = true;\n\nexport enum ReportStatus\n{\n Incomplete = 'Incomplete',\n Valid = 'Valid',\n Accepted = 'Accepted',\n Rejected = 'Rejected',\n Acknowleged = 'Acknowleged',\n Queried = 'Queried',\n Resubmitted = 'Resubmitted',\n Published = 'Published',\n}\n\nexport class WorkflowReportWithTemplateDataDto\n{\n public id: number|null;\n public templateId: string|null;\n public templateName: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public rating: number|null;\n public requiresApproval: boolean|null;\n public approved: boolean|null;\n public createdDate: string|null;\n public lastUpdateDate: string|null;\n public createdBy: number|null;\n public lastUpdatedBy: number|null;\n public data: string|null;\n public template: CaseflowTemplateDto|null;\n public prontoReportId: string|null;\n public prontoReportRootId: string|null;\n public isDraft: boolean|null;\n public createdByNMLocationId: string|null;\n public status: ReportStatus|null;\n public lastUpdatedByName: string|null;\n public createdByName: string|null;\n public clinicName: string|null;\n public availableOnBusinessPortal: boolean|null;\n\n public constructor(init?: Partial<WorkflowReportWithTemplateDataDto>) { (Object as any).assign(this, init); }\n}\n(WorkflowReportWithTemplateDataDto as unknown)[immerable] = true;\n\nexport class ProductTemplateSummaryDto\n{\n public templateId: string|null;\n public name: string|null;\n public description: string|null;\n public serviceId: string|null;\n\n public constructor(init?: Partial<ProductTemplateSummaryDto>) { (Object as any).assign(this, init); }\n}\n(ProductTemplateSummaryDto as unknown)[immerable] = true;\n\nexport class GetCreateReportTemplateAndDraftDataResponse\n{\n public template: CaseflowTemplateDto|null;\n public isDraft: boolean|null;\n public draftData: JsonField|null;\n public draftReportId: number|null;\n public lastUpdateDate: string|null;\n\n public constructor(init?: Partial<GetCreateReportTemplateAndDraftDataResponse>) { (Object as any).assign(this, init); }\n}\n(GetCreateReportTemplateAndDraftDataResponse as unknown)[immerable] = true;\n\nexport class ReportSummaryDto\n{\n public id: number|null;\n public templateId: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public createdDate: string|null;\n public lastUpdateDate: string|null;\n public createdBy: number|null;\n public lastUpdatedBy: number|null;\n public templateName: string|null;\n public createdByName: string|null;\n public lastUpdatedByName: string|null;\n public isDraft: boolean|null;\n public approved: boolean|null;\n public clinicName: string|null;\n public status: ReportStatus|null;\n public availableOnBusinessPortal: boolean|null;\n\n public constructor(init?: Partial<ReportSummaryDto>) { (Object as any).assign(this, init); }\n}\n(ReportSummaryDto as unknown)[immerable] = true;\n\nexport class WorkflowReportDto\n{\n public id: number|null;\n public templateId: string|null;\n public templateName: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public rating: number|null;\n public approved: boolean|null;\n public createdDate: string|null;\n public lastUpdateDate: string|null;\n public createdBy: number|null;\n public lastUpdatedBy: number|null;\n public data: string|null;\n\n public constructor(init?: Partial<WorkflowReportDto>) { (Object as any).assign(this, init); }\n}\n(WorkflowReportDto as unknown)[immerable] = true;\n\nexport class WorkflowAuditDto\n{\n public id: number|null;\n public previousStatus: ProcessStatusDto|null;\n public userId: string|null;\n public date: string|null;\n public nextActionDate: string|null;\n public endDateTime: string|null;\n public duration: number|null;\n public startDateTime: string|null;\n public title: string|null;\n public reason: string|null;\n public notes: string|null;\n public type: number|null;\n public activityType: number|null;\n public activityPath: string|null;\n public direction: number|null;\n public actionId: number|null;\n public workflowId: number|null;\n public masterWorkflowId: number|null;\n public contact: string|null;\n public workflowIsDominantAction: boolean|null;\n public isDominantAction: boolean|null;\n public teamId: string|null;\n public isPinned: boolean|null;\n public parentAuditId: number|null;\n\n public constructor(init?: Partial<WorkflowAuditDto>) { (Object as any).assign(this, init); }\n}\n(WorkflowAuditDto as unknown)[immerable] = true;\n\nexport class WorkflowAuditWithLinkedDetailsDto extends WorkflowAuditDto\n{\n public userFullName: string|null;\n public childrenAudits: WorkflowAuditDto[]|null;\n public hasChildren: boolean|null;\n\n public constructor(init?: Partial<WorkflowAuditWithLinkedDetailsDto>) { super(init); (Object as any).assign(this, init); }\n}\n(WorkflowAuditWithLinkedDetailsDto as unknown)[immerable] = true;\n\nexport class WorkflowCase extends Case\n{\n public workflowId: number|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<WorkflowCase>) { super(init); (Object as any).assign(this, init); }\n}\n(WorkflowCase as unknown)[immerable] = true;\n\nexport class WorkflowCaseResponse\n{\n public restricted: boolean|null;\n public reference: number|null;\n public case: WorkflowCase|null;\n public scores: CaseScoreGoalResponse[]|null;\n public goals: CaseScoreGoalResponse[]|null;\n\n public constructor(init?: Partial<WorkflowCaseResponse>) { (Object as any).assign(this, init); }\n}\n(WorkflowCaseResponse as unknown)[immerable] = true;\n\nexport class CustomerDto\n{\n public id: number|null;\n public locationId: number|null;\n public forename: string|null;\n public surname: string|null;\n public title: string|null;\n public dateOfBirth: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public useInvoiceAddress: boolean|null;\n public invoiceAddressLine1: string|null;\n public invoiceAddressLine2: string|null;\n public invoiceAddressLine3: string|null;\n public invoiceAddressLine4: string|null;\n public invoicePostCode: string|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public email: string|null;\n public enquiry: string|null;\n public accountId: number|null;\n public registrationDate: string|null;\n public category: string|null;\n public reference: string|null;\n public alert: boolean|null;\n public status: number|null;\n public employer: string|null;\n public groupId: number|null;\n public groupReference: string|null;\n public height: number|null;\n public weight: number|null;\n public hospitalNumber: string|null;\n public niNumber: string|null;\n public insuranceNumber: string|null;\n public medication: string|null;\n public previousInjuries: string|null;\n public notes: string|null;\n public defaultCharge: string|null;\n public practitionerId: number|null;\n public billTo: string|null;\n public invoicePeriod: string|null;\n public lastAppointmentDate: string|null;\n public migrated: boolean|null;\n public online: boolean|null;\n public smsEnabled: boolean|null;\n public flag: CustomerFlag|null;\n public cardNo: string|null;\n public invoiceFrequency: number|null;\n public invoiceDeadline: string|null;\n public alternativeRef1: string|null;\n public alternativeRef2: string|null;\n public alternativeRef3: string|null;\n public alternativeRef4: string|null;\n public consent: string|null;\n public transferred: string|null;\n public cancellationNotify: string|null;\n public securityLevel: number|null;\n public loyaltyPoints: number|null;\n public membershipCardNo: string|null;\n public extendedNotes: boolean|null;\n public provisional: boolean|null;\n public provisionalGroupName: string|null;\n public groupDepartment: string|null;\n public groupSite: string|null;\n public addressLine5: string|null;\n public invoiceAddressLine5: string|null;\n public groupCategoryLookupId: number|null;\n public prontoCustomerId: string|null;\n\n public constructor(init?: Partial<CustomerDto>) { (Object as any).assign(this, init); }\n}\n(CustomerDto as unknown)[immerable] = true;\n\nexport class PatientMatchResultDto extends CustomerDto\n{\n public phoneNumber: string|null;\n public score: number|null;\n\n public constructor(init?: Partial<PatientMatchResultDto>) { super(init); (Object as any).assign(this, init); }\n}\n(PatientMatchResultDto as unknown)[immerable] = true;\n\nexport class AutoMatchResult\n{\n public autoMatch: boolean|null;\n public customerId: number|null;\n public autoMatchProperties: string[]|null;\n public matches: PatientMatchResultDto[]|null;\n\n public constructor(init?: Partial<AutoMatchResult>) { (Object as any).assign(this, init); }\n}\n(AutoMatchResult as unknown)[immerable] = true;\n\nexport class InvoiceWithAccountInfo extends Invoice\n{\n public accountType: string|null;\n public accountTypeId: number|null;\n public accountingSystemInvoiceId: string|null;\n\n public constructor(init?: Partial<InvoiceWithAccountInfo>) { super(init); (Object as any).assign(this, init); }\n}\n(InvoiceWithAccountInfo as unknown)[immerable] = true;\n\nexport class InvoiceWithTemplate extends InvoiceWithAccountInfo\n{\n public templatePath: string|null;\n public templateName: string|null;\n\n public constructor(init?: Partial<InvoiceWithTemplate>) { super(init); (Object as any).assign(this, init); }\n}\n(InvoiceWithTemplate as unknown)[immerable] = true;\n\nexport class ReferralPricingDto\n{\n public id: string|null;\n public networkLocationId: string|null;\n public workflowId: number|null;\n public pricing: CapturePointPrice[]|null;\n\n public constructor(init?: Partial<ReferralPricingDto>) { (Object as any).assign(this, init); }\n}\n(ReferralPricingDto as unknown)[immerable] = true;\n\nexport class ReferralPricingWithDetailsDto extends ReferralPricingDto\n{\n public locationName: string|null;\n\n public constructor(init?: Partial<ReferralPricingWithDetailsDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ReferralPricingWithDetailsDto as unknown)[immerable] = true;\n\nexport class WorkflowSummary\n{\n public processId: string|null;\n public subId: number|null;\n public id: number|null;\n public referrerRef: string|null;\n public team: string|null;\n public name: string|null;\n public currentStatus: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public customerFullName: string|null;\n public client: string|null;\n public referralDate: string|null;\n public overallOwner: string|null;\n public currentUser: string|null;\n public nextActionDate: string|null;\n public lastActionDate: string|null;\n public serviceName: string|null;\n public dob: string|null;\n public bodySite: string|null;\n public closed: boolean|null;\n public distributorName: string|null;\n\n public constructor(init?: Partial<WorkflowSummary>) { (Object as any).assign(this, init); }\n}\n(WorkflowSummary as unknown)[immerable] = true;\n\nexport class WorkflowSearchFieldsResponse\n{\n public keyValuePairs: { [index:string]: string; }[]|null;\n\n public constructor(init?: Partial<WorkflowSearchFieldsResponse>) { (Object as any).assign(this, init); }\n}\n(WorkflowSearchFieldsResponse as unknown)[immerable] = true;\n\nexport class ScoresGoalsSettings implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public type: string|null;\n public name: string|null;\n public max: number|null;\n public min: number|null;\n public enabled: boolean|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<ScoresGoalsSettings>) { (Object as any).assign(this, init); }\n}\n(ScoresGoalsSettings as unknown)[immerable] = true;\n\nexport class ScoresGoalsSettingsWithFieldName extends ScoresGoalsSettings\n{\n public fieldName: string|null;\n\n public constructor(init?: Partial<ScoresGoalsSettingsWithFieldName>) { super(init); (Object as any).assign(this, init); }\n}\n(ScoresGoalsSettingsWithFieldName as unknown)[immerable] = true;\n\nexport class WorkflowReportWithScoresGoalsSettingsDto extends WorkflowReportWithTemplateDataDto\n{\n public name: string|null;\n public scoresAndGoals: ScoresGoalsSettingsWithFieldName[]|null;\n\n public constructor(init?: Partial<WorkflowReportWithScoresGoalsSettingsDto>) { super(init); (Object as any).assign(this, init); }\n}\n(WorkflowReportWithScoresGoalsSettingsDto as unknown)[immerable] = true;\n\nexport class SubWorkflowWithLinkedDataDto extends SubWorkflowDto\n{\n public reports: WorkflowReportWithScoresGoalsSettingsDto[]|null;\n public scores: ScoreResponse[]|null;\n public goals: GoalResponse[]|null;\n public caseId: number|null;\n\n public constructor(init?: Partial<SubWorkflowWithLinkedDataDto>) { super(init); (Object as any).assign(this, init); }\n}\n(SubWorkflowWithLinkedDataDto as unknown)[immerable] = true;\n\nexport class WorkflowWithDataSearchResponse\n{\n public id: number|null;\n public subworkflows: SubWorkflowWithLinkedDataDto[]|null;\n public name: string|null;\n public customerId: number|null;\n public productName: string|null;\n public groupName: string|null;\n\n public constructor(init?: Partial<WorkflowWithDataSearchResponse>) { (Object as any).assign(this, init); }\n}\n(WorkflowWithDataSearchResponse as unknown)[immerable] = true;\n\nexport class SubWorkflowWitLinkedDetailsDto extends SubWorkflowDto\n{\n public userFullName: string|null;\n public currentStatusName: string|null;\n public teamName: string|null;\n public clinicName: string|null;\n\n public constructor(init?: Partial<SubWorkflowWitLinkedDetailsDto>) { super(init); (Object as any).assign(this, init); }\n}\n(SubWorkflowWitLinkedDetailsDto as unknown)[immerable] = true;\n\nexport class WorkflowServiceDto\n{\n public id: number|null;\n public startDate: string|null;\n public serviceTypeId: number|null;\n public primaryChildWorkflowId: number|null;\n public clinicLocationId: number|null;\n public clinicPractitionerId: number|null;\n public discriminatorType: string|null;\n public caseId: number|null;\n\n public constructor(init?: Partial<WorkflowServiceDto>) { (Object as any).assign(this, init); }\n}\n(WorkflowServiceDto as unknown)[immerable] = true;\n\nexport class WorkflowServiceWithLinkedDetailsDto extends WorkflowServiceDto\n{\n public serviceTypeName: string|null;\n public clinicLocationName: string|null;\n public clinicPractitionerTitle: string|null;\n public clinicPractitionerForename: string|null;\n public clinicPractionerSurname: string|null;\n public clinicPractitionerFullName: string|null;\n\n public constructor(init?: Partial<WorkflowServiceWithLinkedDetailsDto>) { super(init); (Object as any).assign(this, init); }\n}\n(WorkflowServiceWithLinkedDetailsDto as unknown)[immerable] = true;\n\nexport class CannedSearchResponse\n{\n public id: number|null;\n public guid: string|null;\n public name: string|null;\n public description: string|null;\n public params: string|null;\n public userId: string|null;\n public teamId: string|null;\n public total: number|null;\n\n public constructor(init?: Partial<CannedSearchResponse>) { (Object as any).assign(this, init); }\n}\n(CannedSearchResponse as unknown)[immerable] = true;\n\nexport class WorkflowCannedSearch implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public guid: string|null;\n public name: string|null;\n public description: string|null;\n public params: string|null;\n public teamId: string|null;\n public userId: string|null;\n public resultCount: number|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<WorkflowCannedSearch>) { (Object as any).assign(this, init); }\n}\n(WorkflowCannedSearch as unknown)[immerable] = true;\n\nexport class ProductService implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public productId: string|null;\n public contractId: string|null;\n public basedOnServiceId: string|null;\n public processId: string|null;\n public name: string|null;\n public displayName: string|null;\n public description: string|null;\n public isActive: boolean|null;\n public isLocationBased: boolean|null;\n public isPlaceHolderService: boolean|null;\n public hasFollowUps: boolean|null;\n public code: string|null;\n public caseflowProductServiceTypes: string[]|null;\n public mode: ProductServiceMode|null;\n public firstAppointmentService: string|null;\n public followUpAppointmentService: string|null;\n public portalBookingMode: PortalBookingModes|null;\n public sessionTypeRestriction: string[]|null;\n public portalReferralDefaultActionId: string|null;\n public portalReferralWithBookingDefaultActionId: string|null;\n public manualReferralDefaultActionId: string|null;\n public sla_AppointmentOffer_Value: number|null;\n public sla_AppointmentOffer_Units: string|null;\n public sla_AppointmentOffer_RelativeTo: string|null;\n public sla_AppointmentDistanceMiles: number|null;\n public reports: { [index:string]: string; }|null;\n public canBillCancellation: boolean|null;\n public cancellationDays: number|null;\n public maxCancellationsBeforeDischarge: number|null;\n public canBillDna: boolean|null;\n public dnaDays: number|null;\n public maxDnasBeforeDischarge: number|null;\n public cancellationAndDnaLimitBeforeAction: number|null;\n public isCombinedDnaCancellationLimit: boolean|null;\n public requireAuthorisation: boolean|null;\n public defaultAuthorisation: number|null;\n public requireInitialReportAfter1stAppointment: boolean|null;\n public initialAuthorisation: number|null;\n public subsequentAuthorisation: number|null;\n public requireReasonIfNotUsingFirstAppointmentOffered: boolean|null;\n public requireReasonIfNotUsingPreferredNetwork: boolean|null;\n public shouldCreateClinicalRecord: boolean|null;\n public chargeTypeFirstAppointment: string|null;\n public chargeTypeFollowUpAppointment: string|null;\n public chargeTypeInitialCancellation: string|null;\n public chargeTypeInitialDna: string|null;\n public chargeTypeFollowupCancellation: string|null;\n public chargeTypeFollowupDna: string|null;\n public internalAppointmentTimeBuffer: number|null;\n public authorisationsExpire: boolean|null;\n public authorisationExpirationDays: number|null;\n public overrideGroupCancelDNASettings: boolean|null;\n public authorisationBillGroupDNA: boolean|null;\n public authorisationBillGroupCancellation: boolean|null;\n public authorisationIncludeInNewReferrals: boolean|null;\n public overrideGroupAuthUsageSettings: boolean|null;\n public authorisationCancellationAffectsAuthCount: boolean|null;\n public authorisationCancellationAffectsAuthCountDays: number|null;\n public authorisationCancellationAlwaysAffectsAuthCount: boolean|null;\n public authorisationDnaAffectsAuthCount: boolean|null;\n public serviceTypeId: number|null;\n // @Ignore()\n public serviceTypeGuid: string|null;\n\n public subWorkflowReopenExpiration: number|null;\n public subWorkflowReopenExpirationFormat: DateInterval|null;\n public externalIdentifier: string|null;\n public skipAuthCreationOnWorkflowCreation: boolean|null;\n public canReReferClinic: boolean|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public patientPortalReferralWithoutBookingDefaultActionId: string|null;\n public patientPortalReferralWithBookingDefaultActionId: string|null;\n public digitalTriageProviderId: string|null;\n public digitalTriageReportTemplateKey: string|null;\n public productServiceTypeId: string|null;\n\n public constructor(init?: Partial<ProductService>) { (Object as any).assign(this, init); }\n}\n(ProductService as unknown)[immerable] = true;\n\nexport class TeamResponse\n{\n public id: string|null;\n public name: string|null;\n public assignmentCode: string|null;\n public defaultTeamLeader: string|null;\n public defaultTeamLeaderName: string|null;\n public users: TeamUserDto[]|null;\n public isCurrent: boolean|null;\n\n public constructor(init?: Partial<TeamResponse>) { (Object as any).assign(this, init); }\n}\n(TeamResponse as unknown)[immerable] = true;\n\nexport class ResponseBase<T>\n{\n // @ApiMember(ExcludeInSchema=true)\n public responseStatus: ResponseStatus|null;\n\n /** @description This will be returned when there is a single result available. (e.g. get single object by id) */\n // @ApiMember(Description=\"This will be returned when there is a single result available. (e.g. get single object by id)\")\n public result: T|null;\n\n /** @description This will be returned when there is a multiple results available (e.g. search or listing requests). */\n // @ApiMember(Description=\"This will be returned when there is a multiple results available (e.g. search or listing requests).\")\n public results: T[]|null;\n\n /** @description This will be returned when there is a multiple results available (e.g. search or listing requests). */\n // @ApiMember(Description=\"This will be returned when there is a multiple results available (e.g. search or listing requests).\")\n public total: number|null;\n\n /** @description This will be return the amount of skipped rows when paginating */\n // @ApiMember(Description=\"This will be return the amount of skipped rows when paginating\")\n public skip: number|null;\n\n public constructor(init?: Partial<ResponseBase<T>>) { (Object as any).assign(this, init); }\n}\n\nexport class EnvironmentStatus\n{\n public hasStatus: boolean|null;\n public commitHash: string|null;\n public branch: string|null;\n public isProduction: boolean|null;\n public importExportStatus: ImportExportStatus|null;\n\n public constructor(init?: Partial<EnvironmentStatus>) { (Object as any).assign(this, init); }\n}\n(EnvironmentStatus as unknown)[immerable] = true;\n\nexport class SemanticVersion\n{\n public major: number|null;\n public minor: number|null;\n public patch: number|null;\n public releaseLabels: string[];\n public release: string;\n public isPrerelease: boolean|null;\n public hasMetadata: boolean|null;\n public metadata: string|null;\n\n public constructor(init?: Partial<SemanticVersion>) { (Object as any).assign(this, init); }\n}\n(SemanticVersion as unknown)[immerable] = true;\n\nexport class EnvironmentVersion implements IHasGuidId\n{\n public id: string|null;\n public commitHash: string|null;\n public branch: string|null;\n public date: string|null;\n public isApplied: boolean|null;\n public applyLogId: string|null;\n public isHidden: boolean|null;\n public isSoftDeleted: boolean|null;\n public message: string|null;\n // @Ignore()\n public semVer: SemanticVersion|null;\n\n public constructor(init?: Partial<EnvironmentVersion>) { (Object as any).assign(this, init); }\n}\n(EnvironmentVersion as unknown)[immerable] = true;\n\nexport class RegisterEnvironmentResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<RegisterEnvironmentResponse>) { (Object as any).assign(this, init); }\n}\n(RegisterEnvironmentResponse as unknown)[immerable] = true;\n\nexport class GetServiceLocationsResponse\n{\n public locationOnlineGuid: string|null;\n public locationName: string|null;\n\n public constructor(init?: Partial<GetServiceLocationsResponse>) { (Object as any).assign(this, init); }\n}\n(GetServiceLocationsResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalUserResponse\n{\n public id: number|null;\n public userName: string|null;\n public current: boolean|null;\n public level: string|null;\n public email: string|null;\n public mobileNumber: string|null;\n public avatar: string|null;\n public firstName: string|null;\n public lastName: string|null;\n public fullName: string|null;\n public userGlobalGuid: string|null;\n public groups: number[]|null;\n public twoFactorEnabled: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalUserResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalUserResponse as unknown)[immerable] = true;\n\nexport class DocumentListingFile extends File\n{\n public listingId: string|null;\n\n public constructor(init?: Partial<DocumentListingFile>) { super(init); (Object as any).assign(this, init); }\n}\n(DocumentListingFile as unknown)[immerable] = true;\n\nexport class ReferralCommsTemplateResponse\n{\n public templateText: string|null;\n\n public constructor(init?: Partial<ReferralCommsTemplateResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralCommsTemplateResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalAuthorisationDto\n{\n public remainingCount: number|null;\n public maxCount: number|null;\n\n public constructor(init?: Partial<ReferralPortalAuthorisationDto>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalAuthorisationDto as unknown)[immerable] = true;\n\n// @Flags()\nexport enum ReferralActionType\n{\n AuthorisationRequest = 1,\n ReportRequest = 2,\n}\n\nexport class ReferralActionDto\n{\n public id: string|null;\n public workflowId: number|null;\n public subworkflowId: number|null;\n public type: ReferralActionType|null;\n public typeId: number|null;\n public typeName: string|null;\n public amount: number|null;\n\n public constructor(init?: Partial<ReferralActionDto>) { (Object as any).assign(this, init); }\n}\n(ReferralActionDto as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralResponse\n{\n public id: number|null;\n public groupId: number|null;\n public childGroupId: number|null;\n public createdById: number|null;\n public ownerId: string|null;\n public templateId: string|null;\n public template: CaseflowTemplateDto|null;\n public createdDate: string|null;\n public lastUpdated: string|null;\n public status: string|null;\n public isClosed: boolean|null;\n public isDeleted: boolean|null;\n public reportApprovalRequired: boolean|null;\n public authorisationApprovalRequired: boolean|null;\n public requiresAction: boolean|null;\n public numberOfSessionsRequested: number|null;\n public referralData: JsonField|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public dateOfBirth: string|null;\n public email: string|null;\n public phone: string|null;\n public mobileTelephone: string|null;\n public workTelephone: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postcode: string|null;\n public reference: string|null;\n public firstOfferedDate: string|null;\n public ownerName: string|null;\n public fullName: string|null;\n public authorisations: ReferralPortalAuthorisationDto|null;\n public reports: WorkflowReportDto[]|null;\n public actions: ReferralActionDto[]|null;\n public allowedServiceIds: string[]|null;\n public autoLoginUrl: string|null;\n\n public constructor(init?: Partial<ReferralPortalReferralResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalReferralResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralAppointmentResponse\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n /** @description The service provider that is delivering this appointment. */\n // @ApiMember(Description=\"The service provider that is delivering this appointment.\")\n public provider: string|null;\n\n /** @description The service being delivered in the appointment */\n // @ApiMember(Description=\"The service being delivered in the appointment\")\n public service: string|null;\n\n /** @description This will be set to `true` if the Appointment is a Video type appointment, and has an associated `VideoUrl`. */\n // @ApiMember(Description=\"This will be set to `true` if the Appointment is a Video type appointment, and has an associated `VideoUrl`.\")\n public isVideo: boolean|null;\n\n /** @description The URL that can be used to join the appointment video call. */\n // @ApiMember(Description=\"The URL that can be used to join the appointment video call.\")\n public videoUrl: string|null;\n\n public status: AppointmentStatus|null;\n\n public constructor(init?: Partial<ReferralPortalReferralAppointmentResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalReferralAppointmentResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralReportResponse\n{\n public id: number|null;\n public name: string|null;\n public created: string|null;\n public lastUpdated: string|null;\n\n public constructor(init?: Partial<ReferralPortalReferralReportResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalReferralReportResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalReportBodyResponse\n{\n public id: number|null;\n public template: CaseflowTemplateDto|null;\n public data: JsonField|null;\n\n public constructor(init?: Partial<ReferralPortalReportBodyResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalReportBodyResponse as unknown)[immerable] = true;\n\nexport class GroupDto\n{\n public id: number|null;\n public name: string|null;\n public contactName: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public groupInvoices: string|null;\n public addressTo: string|null;\n public invoicePeriod: string|null;\n public telephone: string|null;\n public fax: string|null;\n public email: string|null;\n public web: string|null;\n public contractNumber: string|null;\n public firstAppointmentCharge: number|null;\n public accountId: number|null;\n public followUpAppointmentCharge: number|null;\n public invoicefrequency: number|null;\n public invoiceWPId: number|null;\n public showVAT: boolean|null;\n public showReferrals: boolean|null;\n public notes: string|null;\n public alert: boolean|null;\n public totalClients: number|null;\n public migrated: boolean|null;\n public hicapsNumber: string|null;\n public locationId: number|null;\n public transferred: string|null;\n public authorisationCode: string|null;\n public profileId: number|null;\n public defaultMaxTreatments: number|null;\n public classification: string|null;\n public invoiceTemplate: string|null;\n public online: boolean|null;\n public onlineDisplayName: string|null;\n public notificationEmail: string|null;\n public parentId: number|null;\n public addressLine5: string|null;\n public paysForDnaCancel: boolean|null;\n public cancellationHours: number|null;\n public paysForDNA: boolean|null;\n public paysForCancel: boolean|null;\n public abbreviationPrefix: string|null;\n public dueDaysOverrIde: number|null;\n public accountCode: string|null;\n public onlineGuid: string|null;\n public globalId: string|null;\n public tM3InvoiceTemplate: string|null;\n public discriminatorType: string|null;\n public referralPortalRegistered: boolean|null;\n public referralPortalClientGuId: string|null;\n public referralPortalEnabled: boolean|null;\n public referralSlaHours: number|null;\n public defaultCaseOwnerId: number|null;\n public minorUpperAgeLimit: number|null;\n public adolescentUpperAgeLimit: number|null;\n public financialAddress: string|null;\n\n public constructor(init?: Partial<GroupDto>) { (Object as any).assign(this, init); }\n}\n(GroupDto as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralSearchResponse implements IHasGuidId\n{\n public id: string|null;\n public referralId: number|null;\n public workflowId: number|null;\n public group: GroupDto|null;\n public ownerId: number|null;\n public ownerName: string|null;\n public createdByUserId: number|null;\n public groupId: string|null;\n public createdDate: string|null;\n public lastUpdated: string|null;\n public templateId: string|null;\n public isClosed: boolean|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public dateOfBirth: string|null;\n public email: string|null;\n public phone: string|null;\n public mobileTelephone: string|null;\n public workTelephone: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postcode: string|null;\n public reference: string|null;\n public status: string|null;\n public productName: string|null;\n public patientName: string|null;\n\n public constructor(init?: Partial<ReferralPortalReferralSearchResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalReferralSearchResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalAuditResponse\n{\n public id: string|null;\n public type: ReferralPortalAuditType|null;\n public typeId: number|null;\n public typeGuid: string|null;\n public userId: string|null;\n public userName: string|null;\n public date: string|null;\n public message: string|null;\n public title: string|null;\n\n public constructor(init?: Partial<ReferralPortalAuditResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalAuditResponse as unknown)[immerable] = true;\n\nexport class ContractWithActiveStatusDto extends ContractDto\n{\n public isActive: boolean|null;\n public origin: ContractOrigin|null;\n\n public constructor(init?: Partial<ContractWithActiveStatusDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ContractWithActiveStatusDto as unknown)[immerable] = true;\n\nexport class ReferralPortalProductResponse\n{\n // @ApiMember(Format=\"uuid\")\n public productId: string|null;\n\n /** @description The `ServiceId` is used for finding locations and appointment availability. A product can have many services associated with e.g. (Triage, Virtual Treatment and In Person Treatment). This endpoint returns the currently available `ServiceId` for the current product. This is typically the first service of the pathway for the product. */\n // @ApiMember(Description=\"The `ServiceId` is used for finding locations and appointment availability. \\n A product can have many services associated with e.g. (Triage, Virtual Treatment and In Person Treatment). \\n This endpoint returns the currently available `ServiceId` for the current product. \\n This is typically the first service of the pathway for the product.\", Format=\"uuid\")\n public serviceId: string|null;\n\n /** @description Location based services are ones where services are delivered in person, and physical proximity is an important factor. You may require post code search, or mapping to identifier suitable service providers when using a location based service. */\n // @ApiMember(Description=\"Location based services are ones where services are delivered in person, and \\n physical proximity is an important factor. You may require post code search, \\n or mapping to identifier suitable service providers when using a location based service.\")\n public isLocationBased: boolean|null;\n\n public name: string|null;\n /** @description A link to the `Referral Form Id`. As referral forms can depend on product and service, this can be used to retrieve the form, and which can provide the additional fields that might be required */\n // @ApiMember(Description=\"A link to the `Referral Form Id`. As referral forms can depend on product and service, \\n this can be used to retrieve the form, and which can provide the additional fields that \\n might be required\", Format=\"uuid\")\n public referralForm: string|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public slaAppointmentDistanceMiles: number|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public slaAppointmentOfferRelativeTo: string|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public slaAppointmentOfferUnits: string|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public slaAppointmentOfferValue: number|null;\n\n /** @description A friendly identifier that be used to locate the correct service. Note that this needs configured in the Caseflow Product Service. */\n // @ApiMember(Description=\"A friendly identifier that be used to locate the correct service. Note that this needs configured in the Caseflow Product Service.\")\n public externalIdentifier: string|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public portalBookingMode: PortalBookingModes|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public canSendSMS: boolean|null;\n\n /** @description Only used by portal */\n // @ApiMember(Description=\"Only used by portal\", ExcludeInSchema=true)\n public canSendEmail: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalProductResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalProductResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalAppointmentSearchResult extends AppointmentSearchResult\n{\n public inSla: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalAppointmentSearchResult>) { super(init); (Object as any).assign(this, init); }\n}\n(ReferralPortalAppointmentSearchResult as unknown)[immerable] = true;\n\nexport class ReferralPortalLocationResponse\n{\n public id: string|null;\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public appointment: ReferralPortalAppointmentSearchResult|null;\n public appointmentInSla: boolean|null;\n public latLong: string|null;\n public linkedLocationId: string|null;\n\n public constructor(init?: Partial<ReferralPortalLocationResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalLocationResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalReserveAppointmentResponse\n{\n public appointment: AppointmentDto|null;\n\n public constructor(init?: Partial<ReferralPortalReserveAppointmentResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalReserveAppointmentResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalTemporaryFileResponse\n{\n public id: string|null;\n\n public constructor(init?: Partial<ReferralPortalTemporaryFileResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalTemporaryFileResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalTemporaryFileListingResponse\n{\n public directory: FolderResult|null;\n\n public constructor(init?: Partial<ReferralPortalTemporaryFileListingResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalTemporaryFileListingResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalTemporaryFileDeleteResponse\n{\n public success: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalTemporaryFileDeleteResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalTemporaryFileDeleteResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalCompaniesResponse\n{\n public id: number|null;\n public parentId: number|null;\n public logo: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<ReferralPortalCompaniesResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalCompaniesResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalSettingsResponse\n{\n public referrerName: string|null;\n public location: string|null;\n public twoFactorAuthRequired: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalSettingsResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalSettingsResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalFieldsResponse\n{\n public fieldName: string|null;\n public required: boolean|null;\n public isEmail: boolean|null;\n public maxLength: number|null;\n public min: number|null;\n public max: number|null;\n public regex: string|null;\n public label: string|null;\n public type: string|null;\n public listSrc: string|null;\n\n public constructor(init?: Partial<ReferralPortalFieldsResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalFieldsResponse as unknown)[immerable] = true;\n\nexport class CaseflowGroup extends Group\n{\n public referralPortalRegistered: boolean|null;\n public referralPortalClientGuid: string|null;\n public referralPortalEnabled: boolean|null;\n public referralSlaHours: number|null;\n public defaultCaseOwnerId: string|null;\n public minorUpperAgeLimit: number|null;\n public adolescentUpperAgeLimit: number|null;\n public secret: string|null;\n public isDistributor: boolean|null;\n public distributorGroupId: number|null;\n public billDistributor: boolean|null;\n // @Ignore()\n public distributorGroupGuid: string|null;\n\n public constructor(init?: Partial<CaseflowGroup>) { super(init); (Object as any).assign(this, init); }\n}\n(CaseflowGroup as unknown)[immerable] = true;\n\nexport class ReferralPortalStatusResponse\n{\n public twoFactorAuthenticationEnabled: boolean|null;\n public referralPortalEnabled: boolean|null;\n public caseflowReferralPortalRegistered: boolean|null;\n public caseflowReferralPortalEnabled: boolean|null;\n public groupName: string|null;\n\n public constructor(init?: Partial<ReferralPortalStatusResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalStatusResponse as unknown)[immerable] = true;\n\nexport class UserClientDto\n{\n public clientName: string|null;\n public clientGuid: string|null;\n\n public constructor(init?: Partial<UserClientDto>) { (Object as any).assign(this, init); }\n}\n(UserClientDto as unknown)[immerable] = true;\n\nexport class ReferralPortalUser\n{\n public id: number|null;\n public firstName: string|null;\n public lastName: string|null;\n public name: string|null;\n public email: string|null;\n public businessName: string|null;\n public clientGuid: string|null;\n public userId: string|null;\n public lastLoginDate: string|null;\n public userType: ReferralPortalUserType|null;\n public enabled: boolean|null;\n public isTwoFactorRegistered: boolean|null;\n public loginAttempts: number|null;\n public childCustomers: UserClientDto[]|null;\n\n public constructor(init?: Partial<ReferralPortalUser>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalUser as unknown)[immerable] = true;\n\nexport class WorkflowReferral implements IHasId\n{\n public id: number|null;\n public createdDate: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public dateOfBirth: string|null;\n public email: string|null;\n public phone: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postcode: string|null;\n public reference: string|null;\n public reference2: string|null;\n public type: string|null;\n public portalId: number|null;\n public groupId: number|null;\n public gender: string|null;\n public packageId: number|null;\n public bodySite: string|null;\n public data: JsonField|null;\n public templateId: string|null;\n public isValid: boolean|null;\n\n public constructor(init?: Partial<WorkflowReferral>) { (Object as any).assign(this, init); }\n}\n(WorkflowReferral as unknown)[immerable] = true;\n\nexport class ReferralPortalSharedFilesDownloadResponse\n{\n public file: string|null;\n public pathExtension: string|null;\n public mimeType: string|null;\n\n public constructor(init?: Partial<ReferralPortalSharedFilesDownloadResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalSharedFilesDownloadResponse as unknown)[immerable] = true;\n\nexport class NoBookingConfirmationSummary\n{\n public locationName: string|null;\n public locationAddress1: string|null;\n public locationAddress2: string|null;\n public locationEmail: string|null;\n public email: string|null;\n public reference: string|null;\n public locationId: number|null;\n public id: number|null;\n public mobileNumber: string|null;\n public customerId: number|null;\n public smsEnabled: boolean|null;\n public status: number|null;\n public stockId: number|null;\n public isNetworkBooking: boolean|null;\n\n public constructor(init?: Partial<NoBookingConfirmationSummary>) { (Object as any).assign(this, init); }\n}\n(NoBookingConfirmationSummary as unknown)[immerable] = true;\n\nexport class BusinessSearchResultDto\n{\n public id: string|null;\n public name: string|null;\n public address: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public matchingLocation: string|null;\n public matchingClinician: number|null;\n public locations: number|null;\n public clinicians: number|null;\n public status: BusinessStatus|null;\n public prontoStatus: ProntoStatus|null;\n public isCompliant: boolean|null;\n\n public constructor(init?: Partial<BusinessSearchResultDto>) { (Object as any).assign(this, init); }\n}\n(BusinessSearchResultDto as unknown)[immerable] = true;\n\nexport class ComplianceDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public businessId: string|null;\n public type: ComplianceType|null;\n public complianceChecked: string|null;\n public complianceCheckedUserName: string|null;\n public complianceCheckedUserId: number|null;\n public complianceData: { [index:string]: string; }|null;\n public complianceCheckedExpiryDate: string|null;\n\n public constructor(init?: Partial<ComplianceDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ComplianceDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ComplianceDto as unknown)[immerable] = true;\n\nexport class NM_Audit implements IReturn<ResponseBase<T>>, IHasGuidId\n{\n public id: string|null;\n public businessId: string|null;\n public action: string|null;\n public userId: number|null;\n public date: string|null;\n public expiryDate: string|null;\n public passed: boolean|null;\n public failed: boolean|null;\n public type: string|null;\n public auditor: string|null;\n public notes: string|null;\n\n public constructor(init?: Partial<NM_Audit>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NM_Audit'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NM_Audit as unknown)[immerable] = true;\n\nexport class ComplianceWithAuditDto extends ComplianceDto\n{\n public lastAudit: NM_Audit|null;\n\n public constructor(init?: Partial<ComplianceWithAuditDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ComplianceWithAuditDto as unknown)[immerable] = true;\n\nexport class ComplianceListWithAuditDto\n{\n public businessId: string|null;\n public isCompliant: boolean|null;\n public compliances: ComplianceWithAuditDto[]|null;\n\n public constructor(init?: Partial<ComplianceListWithAuditDto>) { (Object as any).assign(this, init); }\n}\n(ComplianceListWithAuditDto as unknown)[immerable] = true;\n\nexport class BusinessLocationDto\n{\n public businessId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<BusinessLocationDto>) { (Object as any).assign(this, init); }\n}\n(BusinessLocationDto as unknown)[immerable] = true;\n\nexport enum WithinSla\n{\n True = 'True',\n False = 'False',\n Unknown = 'Unknown',\n}\n\nexport class BasicNetworkLocationSearchResult implements INetworkLocationSearch\n{\n public locationId: string|null;\n public name: string|null;\n public clinicianFullName: string|null;\n public clinicianGuid: string|null;\n public distance: number|null;\n public distanceWithinSla: WithinSla|null;\n public locationBusinessId: string|null;\n public locationProntoStatus: LocationProntoStatus|null;\n public networkId: string|null;\n public networkName: string|null;\n public roadDistance: number|null;\n\n public constructor(init?: Partial<BasicNetworkLocationSearchResult>) { (Object as any).assign(this, init); }\n}\n(BasicNetworkLocationSearchResult as unknown)[immerable] = true;\n\nexport class ExternalReferences\n{\n public externalRef: string|null;\n public externalRef2: string|null;\n public externalRef3: string|null;\n public externalRef4: string|null;\n public externalNotes: string|null;\n\n public constructor(init?: Partial<ExternalReferences>) { (Object as any).assign(this, init); }\n}\n(ExternalReferences as unknown)[immerable] = true;\n\nexport class NM_Clinician extends ExternalReferences implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public hcpcNumber: string|null;\n public hcpcExpiryDate: string|null;\n public crbReference: string|null;\n public crbExpiryDate: string|null;\n public photo: string|null;\n public status: string|null;\n public isIndividualSpecialist: boolean|null;\n public vehicleReg: string|null;\n public vehicleMake: string|null;\n public vehicleModel: string|null;\n public vehicleColour: string|null;\n public proofOfEligibilityToWork: boolean|null;\n public proofOfEligibilityToWorkComment: string|null;\n public proofOfAddress: boolean|null;\n public proofOfAddressComment: string|null;\n public businessId: string|null;\n public deletedAt: string|null;\n public prontoPractitionerId: string|null;\n public isCompliant: boolean|null;\n public dateSetInactive: string|null;\n public emailAddress: string|null;\n public phoneNumber: string|null;\n public altPhoneNumber1: string|null;\n public altPhoneNumber2: string|null;\n public dateAdded: string|null;\n public dbsAdultBarredList: boolean|null;\n public dbsChildrenBarredList: boolean|null;\n public isAvailableOnline: boolean|null;\n public publicDisplayName: string|null;\n public additionalData: string|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<NM_Clinician>) { super(init); (Object as any).assign(this, init); }\n}\n(NM_Clinician as unknown)[immerable] = true;\n\nexport class NM_Specialism extends ExternalReferences implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public name: string|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<NM_Specialism>) { super(init); (Object as any).assign(this, init); }\n}\n(NM_Specialism as unknown)[immerable] = true;\n\nexport class SpecialismWithClinician extends NM_Specialism\n{\n public clinicianId: string|null;\n\n public constructor(init?: Partial<SpecialismWithClinician>) { super(init); (Object as any).assign(this, init); }\n}\n(SpecialismWithClinician as unknown)[immerable] = true;\n\nexport class ClinicianWithLocationAndSpecialism extends NM_Clinician\n{\n public locationId: string|null;\n public specialisms: SpecialismWithClinician[]|null;\n\n public constructor(init?: Partial<ClinicianWithLocationAndSpecialism>) { super(init); (Object as any).assign(this, init); }\n}\n(ClinicianWithLocationAndSpecialism as unknown)[immerable] = true;\n\nexport class NetworkLocationSearch extends BasicNetworkLocationSearchResult\n{\n public addressId: string|null;\n public status: string|null;\n public rating: number|null;\n public notes: string|null;\n public financialOverride: boolean|null;\n public telephone: string|null;\n public email: string|null;\n public treatmentRooms: string|null;\n public disabledAccess: boolean|null;\n public isResidential: boolean|null;\n public hasParking: boolean|null;\n public therapyRoomDetails: string|null;\n public directions: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine5: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public latLong: string|null;\n public fullAddress: string|null;\n public labels: string[]|null;\n public networkPreferred: boolean|null;\n public clinicians: ClinicianWithLocationAndSpecialism[]|null;\n public earliestAppointment: AppointmentSearchResult|null;\n public appointmentWithinSla: WithinSla|null;\n public linkedLocationId: string|null;\n public includeInResultsByDefault: boolean|null;\n public clinicianEmail: string|null;\n public publicDisplayName: string|null;\n public prontoPortalPaymentError: boolean|null;\n public prontoEnabled: boolean|null;\n public prontoCurrencyMatch: boolean|null;\n public facilityIds: string|null;\n public locationFacilityIds: string[]|null;\n\n public constructor(init?: Partial<NetworkLocationSearch>) { super(init); (Object as any).assign(this, init); }\n}\n(NetworkLocationSearch as unknown)[immerable] = true;\n\nexport class LinkedLocationLookupDto\n{\n public id: string|null;\n public label: string|null;\n\n public constructor(init?: Partial<LinkedLocationLookupDto>) { (Object as any).assign(this, init); }\n}\n(LinkedLocationLookupDto as unknown)[immerable] = true;\n\nexport class ProntoClinicResponse\n{\n public id: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<ProntoClinicResponse>) { (Object as any).assign(this, init); }\n}\n(ProntoClinicResponse as unknown)[immerable] = true;\n\nexport class NM_LocationSearchResponse extends ExternalReferencesDto\n{\n public id: string|null;\n public businessId: string|null;\n public location: string|null;\n public business: string|null;\n public contactNum: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public latLong: string|null;\n public status: LocationStatus|null;\n\n public constructor(init?: Partial<NM_LocationSearchResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(NM_LocationSearchResponse as unknown)[immerable] = true;\n\nexport class InternalLocationDto\n{\n public id: string|null;\n public label: string|null;\n\n public constructor(init?: Partial<InternalLocationDto>) { (Object as any).assign(this, init); }\n}\n(InternalLocationDto as unknown)[immerable] = true;\n\nexport class ProntoClinicianDto\n{\n public id: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public onlineGuid: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<ProntoClinicianDto>) { (Object as any).assign(this, init); }\n}\n(ProntoClinicianDto as unknown)[immerable] = true;\n\nexport class IncomingInvoiceResponse\n{\n public id: number|null;\n public date: string|null;\n public totalExcludingVAT: number|null;\n public vatAmount: number|null;\n public grandTotal: number|null;\n public notes: string|null;\n public reference: string|null;\n public extReference: string|null;\n public status: string|null;\n public customerId: number|null;\n public masterWorkflowId: number|null;\n public accountsExportId: number|null;\n public batchId: number|null;\n public approvalSubworkflowId: number|null;\n public prontoInvoiceId: string|null;\n public customerForename: string|null;\n public customerSurname: string|null;\n public customerTitle: string|null;\n public locationCode: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public productServiceId: string|null;\n public networkBusinessId: string|null;\n public networkLocationId: string|null;\n public networkBusinessName: string|null;\n public networkLocationName: string|null;\n public customerFullName: string|null;\n public billingItems: IncomingBillingItemDto[]|null;\n\n public constructor(init?: Partial<IncomingInvoiceResponse>) { (Object as any).assign(this, init); }\n}\n(IncomingInvoiceResponse as unknown)[immerable] = true;\n\nexport class IncomingInvoiceExportItemResponse\n{\n public status: string|null;\n public date: string|null;\n public reference: string|null;\n public customerFullName: string|null;\n public workflowRef: number|null;\n public extReference: string|null;\n public locationName: string|null;\n public networkLocationName: string|null;\n public total: number|null;\n\n public constructor(init?: Partial<IncomingInvoiceExportItemResponse>) { (Object as any).assign(this, init); }\n}\n(IncomingInvoiceExportItemResponse as unknown)[immerable] = true;\n\nexport class IncomingInvoiceExportResponse\n{\n public exportId: number|null;\n\n public constructor(init?: Partial<IncomingInvoiceExportResponse>) { (Object as any).assign(this, init); }\n}\n(IncomingInvoiceExportResponse as unknown)[immerable] = true;\n\nexport class BillingItemWithStock extends BillingItem\n{\n public stockVatRate: number|null;\n\n public constructor(init?: Partial<BillingItemWithStock>) { super(init); (Object as any).assign(this, init); }\n}\n(BillingItemWithStock as unknown)[immerable] = true;\n\nexport class PaymentImportValidationError\n{\n public index: string|null;\n public message: string|null;\n\n public constructor(init?: Partial<PaymentImportValidationError>) { (Object as any).assign(this, init); }\n}\n(PaymentImportValidationError as unknown)[immerable] = true;\n\nexport class PaymentImportResponse\n{\n public errors: PaymentImportValidationError[]|null;\n public totalAmount: number|null;\n public numberOfInvoices: number|null;\n\n public constructor(init?: Partial<PaymentImportResponse>) { (Object as any).assign(this, init); }\n}\n(PaymentImportResponse as unknown)[immerable] = true;\n\nexport class DistributorContractsResponse\n{\n public contracts: ContractWithActiveStatusDto[]|null;\n public existingContractIds: string[]|null;\n\n public constructor(init?: Partial<DistributorContractsResponse>) { (Object as any).assign(this, init); }\n}\n(DistributorContractsResponse as unknown)[immerable] = true;\n\nexport class ReportTemplateResponse\n{\n public systemLists: NestedLookup[]|null;\n public groupCustomLists: NestedLookup[]|null;\n public templates: CaseflowTemplateDto[]|null;\n\n public constructor(init?: Partial<ReportTemplateResponse>) { (Object as any).assign(this, init); }\n}\n(ReportTemplateResponse as unknown)[immerable] = true;\n\nexport enum ProductServiceReportType\n{\n Network = 'Network',\n Group = 'Group',\n}\n\nexport class ProductServiceReport implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public key: string|null;\n public name: string|null;\n public type: ProductServiceReportType|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<ProductServiceReport>) { (Object as any).assign(this, init); }\n}\n(ProductServiceReport as unknown)[immerable] = true;\n\nexport class ChargeTypeWithUsageDto extends ChargeTypeDto\n{\n public inUse: boolean|null;\n\n public constructor(init?: Partial<ChargeTypeWithUsageDto>) { super(init); (Object as any).assign(this, init); }\n}\n(ChargeTypeWithUsageDto as unknown)[immerable] = true;\n\nexport class ServiceSlaType implements IHasGuidId, IHasGlobalGuid\n{\n public id: string|null;\n public name: string|null;\n public fieldName: string|null;\n // @Ignore()\n public globalGuid: string|null;\n\n public constructor(init?: Partial<ServiceSlaType>) { (Object as any).assign(this, init); }\n}\n(ServiceSlaType as unknown)[immerable] = true;\n\nexport class CaseflowBatchMergeDataResponse\n{\n public data: Object|null;\n public template: string|null;\n public id: number|null;\n\n public constructor(init?: Partial<CaseflowBatchMergeDataResponse>) { (Object as any).assign(this, init); }\n}\n(CaseflowBatchMergeDataResponse as unknown)[immerable] = true;\n\nexport class MergeDataResponseAcceptsDynamicButReallyWantsMergeDataWhateverOfSpecificTypeSoBeCareful\n{\n public result: { [index:string]: Object; }|null;\n public defaultName: string|null;\n public defaultEmail: string[]|null;\n public patient: Object|null;\n public business: Object|null;\n public contact: Object|null;\n public practitioner: Object|null;\n public location: Object|null;\n public account: Object|null;\n public appointment: Object|null;\n public income: Object|null;\n public invoice: Object|null;\n public supplier: Object|null;\n public other: Object|null;\n public notification: Object|null;\n public case: Object|null;\n public forms: Object|null;\n public pay: Object|null;\n public waitingList: Object|null;\n public chase: Object|null;\n public stock: Object|null;\n public worksheet: Object|null;\n public vehicle: Object|null;\n public prescription: Object|null;\n\n public constructor(init?: Partial<MergeDataResponseAcceptsDynamicButReallyWantsMergeDataWhateverOfSpecificTypeSoBeCareful>) { (Object as any).assign(this, init); }\n}\n(MergeDataResponseAcceptsDynamicButReallyWantsMergeDataWhateverOfSpecificTypeSoBeCareful as unknown)[immerable] = true;\n\nexport enum AuthType\n{\n Inbound = 'Inbound',\n Outbound = 'Outbound',\n}\n\nexport class TreatmentAuthDto\n{\n public id: number|null;\n public expired: string|null;\n public maxTreatments: number|null;\n public expiryDate: string|null;\n public usedTreatments: number|null;\n public startDate: string|null;\n public groupId: number|null;\n public customerId: number|null;\n public serviceTypeId: number|null;\n public masterWorkflowId: number|null;\n public usedByAppointments: number|null;\n public providedToSpecialist: number|null;\n public externalLocationId: string|null;\n public authCode: string|null;\n public guid: string|null;\n public productServiceId: string|null;\n public treatmentsSentToPronto: number|null;\n public networkClinicName: string|null;\n public serviceName: string|null;\n public revokedCount: number|null;\n public revoked: boolean|null;\n public type: AuthType|null;\n\n public constructor(init?: Partial<TreatmentAuthDto>) { (Object as any).assign(this, init); }\n}\n(TreatmentAuthDto as unknown)[immerable] = true;\n\nexport class TreatmentAuthWithLinkedDetailsDto extends TreatmentAuthDto\n{\n public serviceCode: string|null;\n public chargeTypeFirstAppointment: string|null;\n public chargeTypeFollowUpAppointment: string|null;\n public chargeTypeInitialCancellation: string|null;\n public chargeTypeInitialDna: string|null;\n public chargeTypeFollowupCancellation: string|null;\n public chargeTypeFollowupDna: string|null;\n\n public constructor(init?: Partial<TreatmentAuthWithLinkedDetailsDto>) { super(init); (Object as any).assign(this, init); }\n}\n(TreatmentAuthWithLinkedDetailsDto as unknown)[immerable] = true;\n\nexport class CaseflowAppointmentResponse implements IHasAppointmentDates, IHasProductServiceId\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public name: string|null;\n public status: number|null;\n public type: string|null;\n public reference: string|null;\n public bookingMethod: string|null;\n public firstAppointment: boolean|null;\n public bookingDateTime: string|null;\n public completedTime: string|null;\n public duration: number|null;\n public comment: string|null;\n public title: string|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public roomId: number|null;\n public stockId: number|null;\n public practitioner: string|null;\n public practitionerStatus: number|null;\n public location: string|null;\n public roomName: string|null;\n public stock: string|null;\n public inDebt: boolean|null;\n public colour: number|null;\n public stockColour: number|null;\n public description: string|null;\n public hexColour: string|null;\n public classMax: number|null;\n public classAttendees: number|null;\n public customerAlert: boolean|null;\n public customerLastAppointment: string|null;\n public reminderSentType: string|null;\n public payAtEachAppt: boolean|null;\n public authId: number|null;\n public groupId: number|null;\n public groupAccountId: number|null;\n public groupName: string|null;\n public authCode: string|null;\n public caseId: number|null;\n public subWorkflowId: number|null;\n public masterWorkflowId: number|null;\n public prontoPractitionerOnlineGuid: string|null;\n public prontoPractitionerName: string|null;\n public prontoAuditId: string|null;\n public productServiceId: string|null;\n public networkManagementLocationName: string|null;\n public networkManagementLocationId: string|null;\n public networkManagementClinicianId: string|null;\n public networkChargeTypeId: string|null;\n public networkManagementNetworkId: string|null;\n public networkLocationChargeId: string|null;\n public prontoAppointmentId: string|null;\n public discountCodeId: string|null;\n public discountCodeAppliedDate: string|null;\n public discountCodeAdvance: boolean|null;\n public treatmentType: string|null;\n public networkClinician: string|null;\n public cancellationReason: string|null;\n public defaultChargeExVAT: number|null;\n public defaultChargeVATRate: number|null;\n public chargeExVAT: number|null;\n public chargeVATRate: number|null;\n public billingItemID: number|null;\n public incomingBillingItemId: number|null;\n public ledgerCode: string|null;\n public networkChargeLedgerCode: string|null;\n public invoiceId: number|null;\n public chargeTypeId: string|null;\n\n public constructor(init?: Partial<CaseflowAppointmentResponse>) { (Object as any).assign(this, init); }\n}\n(CaseflowAppointmentResponse as unknown)[immerable] = true;\n\nexport class BaseCaseflowAppointmentSearchResponse<AppointmentSearchResultObject>\n{\n public networkManagementLocationId: string|null;\n public networkManagementClinicianId: string|null;\n public appointment: AppointmentSearchResultObject|null;\n\n public constructor(init?: Partial<BaseCaseflowAppointmentSearchResponse<AppointmentSearchResultObject>>) { (Object as any).assign(this, init); }\n}\n\nexport class EarliestAppointmentSearchResponse extends BaseCaseflowAppointmentSearchResponse<AppointmentSearchResult>\n{\n\n public constructor(init?: Partial<EarliestAppointmentSearchResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(EarliestAppointmentSearchResponse as unknown)[immerable] = true;\n\nexport class CaseflowAppointmentFinanceResponse\n{\n public id: number|null;\n public incomingBillingItemId: number|null;\n public incomingInvoiceId: number|null;\n public incomingInvoiceStatus: string|null;\n public incomingInvoiceAccountsExportId: number|null;\n public billingItemId: number|null;\n public billingItemAccountsExportId: number|null;\n public invoiceId: number|null;\n public invoiceStatus: string|null;\n public billingItemDescription: string|null;\n\n public constructor(init?: Partial<CaseflowAppointmentFinanceResponse>) { (Object as any).assign(this, init); }\n}\n(CaseflowAppointmentFinanceResponse as unknown)[immerable] = true;\n\nexport class ClientPortalCaseResponse\n{\n public id: number|null;\n public workflowId: number|null;\n public productId: string|null;\n public reference: number|null;\n public serviceName: string|null;\n public serviceId: string|null;\n public data: { [index:string]: Object; }|null;\n public statusName: string|null;\n public statusColour: string|null;\n public hasAppointments: boolean|null;\n public capturePointServiceId: string|null;\n public digitalTriageUrl: string|null;\n public digitalTriageComplete: boolean|null;\n public currentServiceMode: ProductServiceMode|null;\n public canBookFirstAppointment: boolean|null;\n\n public constructor(init?: Partial<ClientPortalCaseResponse>) { (Object as any).assign(this, init); }\n}\n(ClientPortalCaseResponse as unknown)[immerable] = true;\n\nexport class DigitalTriageBookingResult\n{\n public url: string|null;\n public errorMessage: string|null;\n\n public constructor(init?: Partial<DigitalTriageBookingResult>) { (Object as any).assign(this, init); }\n}\n(DigitalTriageBookingResult as unknown)[immerable] = true;\n\nexport class DigitalTriageProvider\n{\n public id: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<DigitalTriageProvider>) { (Object as any).assign(this, init); }\n}\n(DigitalTriageProvider as unknown)[immerable] = true;\n\nexport class UpdatedEntities\n{\n public subWorkflow: boolean|null;\n public workflow: boolean|null;\n public referral: boolean|null;\n public appointments: boolean|null;\n public authorisations: boolean|null;\n public audits: boolean|null;\n public reports: boolean|null;\n public slas: boolean|null;\n public alerts: boolean|null;\n public pricing: boolean|null;\n public forms: boolean|null;\n\n public constructor(init?: Partial<UpdatedEntities>) { (Object as any).assign(this, init); }\n}\n(UpdatedEntities as unknown)[immerable] = true;\n\nexport class ActionExecutionErrorMessage\n{\n public message: string|null;\n\n public constructor(init?: Partial<ActionExecutionErrorMessage>) { (Object as any).assign(this, init); }\n}\n(ActionExecutionErrorMessage as unknown)[immerable] = true;\n\nexport class ActionExecutionResponse\n{\n public updatedEntities: UpdatedEntities|null;\n public nonFatalErrors: ActionExecutionErrorMessage[]|null;\n\n public constructor(init?: Partial<ActionExecutionResponse>) { (Object as any).assign(this, init); }\n}\n(ActionExecutionResponse as unknown)[immerable] = true;\n\nexport class StripeResponse\n{\n public statusCode: HttpStatusCode|null;\n public headers: HttpResponseHeaders|null;\n public content: string|null;\n public date: string|null;\n public idempotencyKey: string|null;\n public requestId: string|null;\n\n public constructor(init?: Partial<StripeResponse>) { (Object as any).assign(this, init); }\n}\n(StripeResponse as unknown)[immerable] = true;\n\nexport interface IStripeEntity\n{\n stripeResponse: StripeResponse|null;\n}\n\nexport interface IHasId\n{\n id: string|null;\n}\n\nexport interface IHasMetadata\n{\n metadata: { [index:string]: string; }|null;\n}\n\nexport interface IHasObject\n{\n object: string|null;\n}\n\nexport class CustomerResponse\n{\n\n public constructor(init?: Partial<CustomerResponse>) { (Object as any).assign(this, init); }\n}\n(CustomerResponse as unknown)[immerable] = true;\n\n// @Flags()\nexport enum LocationStatus\n{\n Active = 0,\n ActiveViewOnly = 1,\n InactiveHidden = 2,\n}\n\nexport interface IHasUsers\n{\n users: UserActivations[]|null;\n}\n\nexport class ClinicalScore implements IHasId\n{\n public id: number|null;\n public title: string|null;\n public dateAdded: string|null;\n public dateCompleted: string|null;\n public caseId: number|null;\n public settingId: number|null;\n\n public constructor(init?: Partial<ClinicalScore>) { (Object as any).assign(this, init); }\n}\n(ClinicalScore as unknown)[immerable] = true;\n\nexport class CasePrintingScore<T> extends ClinicalScore\n{\n public entries: T[]|null;\n\n public constructor(init?: Partial<CasePrintingScore<T>>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class Goal implements IHasId\n{\n public id: number|null;\n public title: string|null;\n public dateAdded: string|null;\n public dateCompleted: string|null;\n public caseId: number|null;\n public settingId: number|null;\n public averaged: boolean|null;\n\n public constructor(init?: Partial<Goal>) { (Object as any).assign(this, init); }\n}\n(Goal as unknown)[immerable] = true;\n\nexport class CasePrintingGoal<T> extends Goal\n{\n public entries: T[]|null;\n\n public constructor(init?: Partial<CasePrintingGoal<T>>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class Fido2 implements IFido2\n{\n\n public constructor(init?: Partial<Fido2>) { (Object as any).assign(this, init); }\n}\n(Fido2 as unknown)[immerable] = true;\n\nexport enum WorkflowContactType\n{\n Patient = 'Patient',\n Contact = 'Contact',\n GroupContact = 'GroupContact',\n NetworkLocation = 'NetworkLocation',\n NetworkClinician = 'NetworkClinician',\n Practitioner = 'Practitioner',\n Location = 'Location',\n Group = 'Group',\n}\n\nexport interface IClassFinanceResponse\n{\n invoiceId: number|null;\n paymentId: number|null;\n}\n\nexport interface INetworkLocationSearch\n{\n clinicianFullName: string|null;\n clinicianGuid: string|null;\n distance: number|null;\n distanceWithinSla: WithinSla|null;\n locationBusinessId: string|null;\n locationId: string|null;\n name: string|null;\n locationProntoStatus: LocationProntoStatus|null;\n networkId: string|null;\n networkName: string|null;\n roadDistance: number|null;\n}\n\nexport interface IHasAppointmentDates\n{\n startDateTime: string|null;\n endDateTime: string|null;\n bookingDateTime: string|null;\n}\n\nexport interface IHasProductServiceId\n{\n productServiceId: string|null;\n}\n\nexport enum NumericFilterConditions\n{\n IsEqualTo = 'IsEqualTo',\n IsNotEqualTo = 'IsNotEqualTo',\n IsBetween = 'IsBetween',\n IsNotBetween = 'IsNotBetween',\n IsLessThan = 'IsLessThan',\n IsLessThanOrEqual = 'IsLessThanOrEqual',\n IsGreaterThan = 'IsGreaterThan',\n IsGreaterThanOrEqual = 'IsGreaterThanOrEqual',\n}\n\nexport class NumericSearch<T>\n{\n public selectedFilterOption: NumericFilterConditions|null;\n public numericRangeValue: NumericRange<T>|null;\n\n public constructor(init?: Partial<NumericSearch<T>>) { (Object as any).assign(this, init); }\n}\n\nexport enum NetworkServiceType\n{\n Appointment = 'Appointment',\n Cancellation = 'Cancellation',\n DNA = 'DNA',\n}\n\nexport class BillingItemResponse\n{\n\n public constructor(init?: Partial<BillingItemResponse>) { (Object as any).assign(this, init); }\n}\n\nexport class AudienceMember\n{\n public id: number|null;\n public num: number|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public email: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public emailConsent: boolean|null;\n\n public constructor(init?: Partial<AudienceMember>) { (Object as any).assign(this, init); }\n}\n(AudienceMember as unknown)[immerable] = true;\n\nexport class DataPoint\n{\n public period: string|null;\n public date: string|null;\n public referral: number|null;\n public reception: number|null;\n public online: number|null;\n\n public constructor(init?: Partial<DataPoint>) { (Object as any).assign(this, init); }\n}\n(DataPoint as unknown)[immerable] = true;\n\nexport class ClassSessionWithDetails\n{\n public sessionId: number|null;\n public name: string|null;\n public description: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n // @Ignore()\n public practitionerName: string|null;\n\n public startDate: string|null;\n public endDate: string|null;\n public isVideo: boolean|null;\n public videoMeetingPassword: string|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingId: string|null;\n public videoMeetingHostJoinUrl: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n public classCapacity: number|null;\n public minAttendees: number|null;\n public totalAttendees: number|null;\n public appointmentStatus: number|null;\n public colour: number|null;\n public hexColour: string|null;\n public roomName: string|null;\n public locationName: string|null;\n\n public constructor(init?: Partial<ClassSessionWithDetails>) { (Object as any).assign(this, init); }\n}\n(ClassSessionWithDetails as unknown)[immerable] = true;\n\nexport class ReportingField\n{\n public name: string|null;\n public field: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<ReportingField>) { (Object as any).assign(this, init); }\n}\n(ReportingField as unknown)[immerable] = true;\n\nexport class ClinicalScoreEntry implements IHasId\n{\n public id: number|null;\n public scoreId: number|null;\n public score: number|null;\n public dateAdded: string|null;\n public patientSubmitted: boolean|null;\n public objectType: string|null;\n public objectId: number|null;\n\n public constructor(init?: Partial<ClinicalScoreEntry>) { (Object as any).assign(this, init); }\n}\n(ClinicalScoreEntry as unknown)[immerable] = true;\n\nexport class GoalEntry implements IHasId\n{\n public id: number|null;\n public notes: string|null;\n public goalId: number|null;\n public completionPercentage: number|null;\n public dateAdded: string|null;\n public patientSubmitted: boolean|null;\n public objectType: string|null;\n public objectId: number|null;\n\n public constructor(init?: Partial<GoalEntry>) { (Object as any).assign(this, init); }\n}\n(GoalEntry as unknown)[immerable] = true;\n\nexport interface IFido2\n{\n}\n\nexport class NumericRange<T>\n{\n public from: string|null;\n public to: string|null;\n\n public constructor(init?: Partial<NumericRange<T>>) { (Object as any).assign(this, init); }\n}\n\nexport class ZodSchemasResponse\n{\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ZodSchemasResponse>) { (Object as any).assign(this, init); }\n}\n\nexport class HttpResult\n{\n public responseText: string|null;\n public responseStream: string|null;\n public fileInfo: FileInfo|null;\n public virtualFile: IVirtualFile|null;\n public contentType: string|null;\n public headers: { [index:string]: string; }|null;\n public cookies: Cookie[]|null;\n public eTag: string|null;\n public age: string|null;\n public maxAge: string|null;\n public expires: string|null;\n public lastModified: string|null;\n public cacheControl: CacheControl|null;\n public resultScope: Func<IDisposable>|null;\n public allowsPartialResponse: boolean|null;\n public options: { [index:string]: string; }|null;\n public status: number|null;\n public statusCode: HttpStatusCode|null;\n public statusDescription: string|null;\n public response: Object|null;\n public responseFilter: IContentTypeWriter|null;\n public requestContext: IRequest|null;\n public view: string|null;\n public template: string|null;\n public paddingLength: number|null;\n public isPartialRequest: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<HttpResult>) { (Object as any).assign(this, init); }\n}\n(HttpResult as unknown)[immerable] = true;\n\n// @DataContract\nexport class AuthenticateResponse implements IHasSessionId, IHasBearerToken\n{\n // @DataMember(Order=1)\n public userId: string|null;\n\n // @DataMember(Order=2)\n public sessionId: string|null;\n\n // @DataMember(Order=3)\n public userName: string|null;\n\n // @DataMember(Order=4)\n public displayName: string|null;\n\n // @DataMember(Order=5)\n public referrerUrl: string|null;\n\n // @DataMember(Order=6)\n public bearerToken: string|null;\n\n // @DataMember(Order=7)\n public refreshToken: string|null;\n\n // @DataMember(Order=8)\n public refreshTokenExpiry: string|null;\n\n // @DataMember(Order=9)\n public profileUrl: string|null;\n\n // @DataMember(Order=10)\n public roles: string[]|null;\n\n // @DataMember(Order=11)\n public permissions: string[]|null;\n\n // @DataMember(Order=12)\n public authProvider: string|null;\n\n // @DataMember(Order=13)\n public responseStatus: ResponseStatus|null;\n\n // @DataMember(Order=14)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<AuthenticateResponse>) { (Object as any).assign(this, init); }\n}\n(AuthenticateResponse as unknown)[immerable] = true;\n\n// @Route(\"/tours/skip\")\nexport class ToursResponse\n{\n public homeScreenTour1: boolean|null;\n public diaryWorkingTimeTour1: boolean|null;\n public diaryCreateTour1: boolean|null;\n public diaryEditTour1: boolean|null;\n public diaryCompleteTour1: boolean|null;\n public diaryEventTour1: boolean|null;\n public invoiceWizardTour1: boolean|null;\n public licenseAgreement: boolean|null;\n public licenseAgreement0419: boolean|null;\n public seenWelcomeScreen: boolean|null;\n public previewNewUx: boolean|null;\n\n public constructor(init?: Partial<ToursResponse>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ToursResponse'; }\n public getMethod() { return 'PUT'; }\n public createResponse() {}\n}\n(ToursResponse as unknown)[immerable] = true;\n\nexport class OnlineCustomerDto implements IReturn<ResponseBase<T>>\n{\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public dateOfBirth: string|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public gender: string|null;\n public email: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public id: number|null;\n public group: OnlineGroupDto|null;\n public canBookAppointments: boolean|null;\n public practitionerGuid: string|null;\n public locationGuid: string|null;\n public groupReference: string|null;\n public excludedPackages: string[]|null;\n public lastAppointmentPractitionerGuid: string|null;\n public overridePayAtClinic: boolean|null;\n\n public constructor(init?: Partial<OnlineCustomerDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCustomerDto'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineCustomerDto as unknown)[immerable] = true;\n\nexport class CurrentUser extends AuthenticateResponse\n{\n public id: string|null;\n public name: string|null;\n public email: string|null;\n public mobileNumber: string|null;\n public clientId: number|null;\n public userType: string|null;\n public isAuthenticated: boolean|null;\n public isEvaluating: boolean|null;\n public settings: { [index:string]: Object; }|null;\n public practitioner: GeneralPractitionerResponse|null;\n public location: LocationResponse|null;\n public roleId: number|null;\n public practitionerId: number|null;\n public tM2UserName: string|null;\n public roleName: string|null;\n public userPermissionId: number|null;\n public tours: ToursResponse|null;\n public departments: number[]|null;\n public customer: OnlineCustomerDto|null;\n public userGlobalGuid: string|null;\n public hasTrialExpired: boolean|null;\n public needsVerified: boolean|null;\n public twoFactorSetup: boolean|null;\n public twoFactorRequired: boolean|null;\n public twoFactorAuthenticated: boolean|null;\n public hasPassKey: boolean|null;\n public twoFactorAllowSms: boolean|null;\n public avatar: string|null;\n public signatureRxIntegrationCode: string|null;\n public pinHash: string|null;\n public signature: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CurrentUser>) { super(init); (Object as any).assign(this, init); }\n}\n(CurrentUser as unknown)[immerable] = true;\n\n// @DataContract\nexport class FilesListingResponse\n{\n // @DataMember(Order=1)\n public directory: FolderResult|null;\n\n // @DataMember(Order=2)\n public file: File|null;\n\n // @DataMember(Order=3)\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<FilesListingResponse>) { (Object as any).assign(this, init); }\n}\n(FilesListingResponse as unknown)[immerable] = true;\n\nexport class CaseImagingResponse\n{\n public images: { [index:string]: CaseImagingResult; }|null;\n public custom: { [index:string]: CaseImagingResult; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CaseImagingResponse>) { (Object as any).assign(this, init); }\n}\n(CaseImagingResponse as unknown)[immerable] = true;\n\nexport class SmsResponse\n{\n public success: svcResponse|null;\n public message: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<SmsResponse>) { (Object as any).assign(this, init); }\n}\n(SmsResponse as unknown)[immerable] = true;\n\nexport class SmsConsentReponse\n{\n public hasConsent: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<SmsConsentReponse>) { (Object as any).assign(this, init); }\n}\n(SmsConsentReponse as unknown)[immerable] = true;\n\nexport class ContactRecentResponse\n{\n public contactsCount: number|null;\n public document: File|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ContactRecentResponse>) { (Object as any).assign(this, init); }\n}\n(ContactRecentResponse as unknown)[immerable] = true;\n\nexport class PatientNextAppoimentResponse\n{\n public nextAppointment: AppointmentResponse|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<PatientNextAppoimentResponse>) { (Object as any).assign(this, init); }\n}\n(PatientNextAppoimentResponse as unknown)[immerable] = true;\n\nexport class PatientRecentResponse\n{\n public nextAppointment: AppointmentResponse|null;\n public contact: MedicalContactResponse|null;\n public contactsCount: number|null;\n public bookedCount: number|null;\n public cancelledCount: number|null;\n public dnaCount: number|null;\n public completedCount: number|null;\n public auths: TreatmentAuthResponse[]|null;\n public futureAuths: TreatmentAuthResponse[]|null;\n public transactions: TransactionItemResponse[]|null;\n public cases: CaseSearchResponse[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<PatientRecentResponse>) { (Object as any).assign(this, init); }\n}\n(PatientRecentResponse as unknown)[immerable] = true;\n\nexport class RecentDocumentResponse\n{\n public document: File|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<RecentDocumentResponse>) { (Object as any).assign(this, init); }\n}\n(RecentDocumentResponse as unknown)[immerable] = true;\n\nexport class DiaryDefaultDataForUserResponse\n{\n public currentLocation: LocationResponse|null;\n public currentPractitioner: GeneralPractitionerResponse|null;\n public currentRoom: RoomResponse|null;\n public practitioners: GeneralPractitionerResponse[]|null;\n public locations: LocationResponse[]|null;\n public rooms: RoomResponse[]|null;\n public practitionerLocations: PractitionerLocation[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DiaryDefaultDataForUserResponse>) { (Object as any).assign(this, init); }\n}\n(DiaryDefaultDataForUserResponse as unknown)[immerable] = true;\n\nexport class DiaryStatsResponse\n{\n public booked: number|null;\n public complete: number|null;\n public cancel: number|null;\n public other: number|null;\n public class: number|null;\n public dna: number|null;\n public total: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DiaryStatsResponse>) { (Object as any).assign(this, init); }\n}\n(DiaryStatsResponse as unknown)[immerable] = true;\n\nexport class CalculateWorkingTimesResponse\n{\n public workingTime: string|null;\n public lastestEndDate: string|null;\n public totalSessions: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CalculateWorkingTimesResponse>) { (Object as any).assign(this, init); }\n}\n(CalculateWorkingTimesResponse as unknown)[immerable] = true;\n\nexport class Account implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public accountType: string|null;\n public name: string|null;\n public accountTypeId: number|null;\n // @Ignore()\n public accountTypeGuid: string|null;\n\n public balanceInvoiced: number|null;\n public balanceOwed: number|null;\n public transferred: string|null;\n // @Ignore()\n public uninvoicedCharges: number|null;\n\n public globalGuid: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<Account>) { (Object as any).assign(this, init); }\n}\n(Account as unknown)[immerable] = true;\n\nexport class AccountExportResponse\n{\n public exportId: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<AccountExportResponse>) { (Object as any).assign(this, init); }\n}\n(AccountExportResponse as unknown)[immerable] = true;\n\nexport class TransferResponse\n{\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<TransferResponse>) { (Object as any).assign(this, init); }\n}\n(TransferResponse as unknown)[immerable] = true;\n\nexport class ResponseEnhancerBase<T>\n{\n public db: IClientDbAccess|null;\n public hangfireJobQueueService: IHangfireJobQueueService|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ResponseEnhancerBase<T>>) { (Object as any).assign(this, init); }\n}\n\n// @DataContract\nexport class DeleteResponse\n{\n // @DataMember(Order=1)\n public success: boolean|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DeleteResponse>) { (Object as any).assign(this, init); }\n}\n(DeleteResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class CopyResponse\n{\n // @DataMember(Order=1)\n public success: boolean|null;\n\n // @DataMember(Order=2)\n public isGlobal: boolean|null;\n\n // @DataMember(Order=3)\n public renamedFiles: { [index:string]: string; }|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CopyResponse>) { (Object as any).assign(this, init); }\n}\n(CopyResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class CreateFolderResponse\n{\n // @DataMember(Order=1)\n public success: boolean|null;\n\n // @DataMember(Order=2)\n public folderName: string|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CreateFolderResponse>) { (Object as any).assign(this, init); }\n}\n(CreateFolderResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class RenameResponse\n{\n // @DataMember(Order=1)\n public success: boolean|null;\n\n // @DataMember(Order=2)\n public fileName: string|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<RenameResponse>) { (Object as any).assign(this, init); }\n}\n(RenameResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class MoveResponse\n{\n // @DataMember(Order=1)\n public success: boolean|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<MoveResponse>) { (Object as any).assign(this, init); }\n}\n(MoveResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class UploadResult\n{\n // @DataMember(Order=1)\n public paths: string[]|null;\n\n // @DataMember(Order=2)\n public uploadErrors: string[]|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<UploadResult>) { (Object as any).assign(this, init); }\n}\n(UploadResult as unknown)[immerable] = true;\n\n// @DataContract\nexport class UploadTempResult\n{\n // @DataMember(Order=1)\n public id: string|null;\n\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<UploadTempResult>) { (Object as any).assign(this, init); }\n}\n(UploadTempResult as unknown)[immerable] = true;\n\nexport class AttachmentSummaryResponse\n{\n public files: Attachment[]|null;\n public templates: Attachment[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<AttachmentSummaryResponse>) { (Object as any).assign(this, init); }\n}\n(AttachmentSummaryResponse as unknown)[immerable] = true;\n\nexport class RecentFileResponse\n{\n // @DataMember(Order=1)\n public file: File|null;\n\n // @DataMember(Order=2)\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<RecentFileResponse>) { (Object as any).assign(this, init); }\n}\n(RecentFileResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class FileResponse\n{\n // @DataMember(Order=1)\n public responseStatus: ResponseStatus|null;\n\n // @DataMember(Order=2)\n public contents: string|null;\n\n // @DataMember(Order=3)\n public contentLength: number|null;\n\n public constructor(init?: Partial<FileResponse>) { (Object as any).assign(this, init); }\n}\n(FileResponse as unknown)[immerable] = true;\n\nexport class FolderTree\n{\n public folders: FolderTree[]|null;\n public files: File[]|null;\n public name: string|null;\n public path: string|null;\n public fileCount: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<FolderTree>) { (Object as any).assign(this, init); }\n}\n(FolderTree as unknown)[immerable] = true;\n\nexport class GroupFurtherDetailsResponse\n{\n public location: string|null;\n public balanceOwed: number|null;\n public balanceInvoiced: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<GroupFurtherDetailsResponse>) { (Object as any).assign(this, init); }\n}\n(GroupFurtherDetailsResponse as unknown)[immerable] = true;\n\nexport class GroupRecentResponse\n{\n public contactsCount: number|null;\n public transactions: TransactionItemResponse[]|null;\n public accountBalance: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<GroupRecentResponse>) { (Object as any).assign(this, init); }\n}\n(GroupRecentResponse as unknown)[immerable] = true;\n\nexport class LocationStockResponse\n{\n public locations: LocResponse[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<LocationStockResponse>) { (Object as any).assign(this, init); }\n}\n(LocationStockResponse as unknown)[immerable] = true;\n\nexport class PhysiotecPractitioner implements IHasId\n{\n public id: number|null;\n public practitionerId: number|null;\n public userName: string|null;\n public password: string|null;\n public status: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<PhysiotecPractitioner>) { (Object as any).assign(this, init); }\n}\n(PhysiotecPractitioner as unknown)[immerable] = true;\n\n// @Route(\"/pronto-my-clinic-url\")\nexport class ProntoMyClinicRequest implements IReturn<ProntoMyClinicRequest>\n{\n public result: string|null;\n\n public constructor(init?: Partial<ProntoMyClinicRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoMyClinicRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ProntoMyClinicRequest(); }\n}\n(ProntoMyClinicRequest as unknown)[immerable] = true;\n\nexport class Room implements IHasId, IHasGlobalGuid\n{\n public id: number|null;\n public description: string|null;\n public locationId: number|null;\n // @Ignore()\n public locationGuid: string|null;\n\n public status: boolean|null;\n public colour: number|null;\n public discriminatorType: string|null;\n public globalGuid: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<Room>) { (Object as any).assign(this, init); }\n}\n(Room as unknown)[immerable] = true;\n\nexport class SecurityStatsResponse\n{\n public stats: SecurityStat[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<SecurityStatsResponse>) { (Object as any).assign(this, init); }\n}\n(SecurityStatsResponse as unknown)[immerable] = true;\n\nexport class StockReorderResponse\n{\n public results: StockReorder[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<StockReorderResponse>) { (Object as any).assign(this, init); }\n}\n(StockReorderResponse as unknown)[immerable] = true;\n\nexport class StockSalesResponse\n{\n public results: StockSales[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<StockSalesResponse>) { (Object as any).assign(this, init); }\n}\n(StockSalesResponse as unknown)[immerable] = true;\n\nexport class InvoiceAnalysisResponse\n{\n public results: InvoiceAnalysisReport[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<InvoiceAnalysisResponse>) { (Object as any).assign(this, init); }\n}\n(InvoiceAnalysisResponse as unknown)[immerable] = true;\n\nexport class IncomeAnalysisResponse\n{\n public results: IncomeAnalysisReport[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<IncomeAnalysisResponse>) { (Object as any).assign(this, init); }\n}\n(IncomeAnalysisResponse as unknown)[immerable] = true;\n\nexport class ExpenditureMonthSummaryResponse\n{\n public results: ExpenditureMonthSummary[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ExpenditureMonthSummaryResponse>) { (Object as any).assign(this, init); }\n}\n(ExpenditureMonthSummaryResponse as unknown)[immerable] = true;\n\nexport class ExpenditureAnalysisResponse\n{\n public results: ExpenditureAnalysisReportDto[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ExpenditureAnalysisResponse>) { (Object as any).assign(this, init); }\n}\n(ExpenditureAnalysisResponse as unknown)[immerable] = true;\n\nexport class AgedDebtorsResponse\n{\n public results: AgedDebtors[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<AgedDebtorsResponse>) { (Object as any).assign(this, init); }\n}\n(AgedDebtorsResponse as unknown)[immerable] = true;\n\nexport class DebtorsByAccountResponse\n{\n public results: DebtorsByAccount[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DebtorsByAccountResponse>) { (Object as any).assign(this, init); }\n}\n(DebtorsByAccountResponse as unknown)[immerable] = true;\n\nexport class DebtorsOnADateResponse\n{\n public results: DebtorsOnADate[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DebtorsOnADateResponse>) { (Object as any).assign(this, init); }\n}\n(DebtorsOnADateResponse as unknown)[immerable] = true;\n\nexport class ChargeAnalysisResponse\n{\n public results: ChargesAnalysisReport[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ChargeAnalysisResponse>) { (Object as any).assign(this, init); }\n}\n(ChargeAnalysisResponse as unknown)[immerable] = true;\n\nexport class AdmissionsAnalysisReportResponse\n{\n public results: AdmissionsAnalysisReport[]|null;\n public total: number|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<AdmissionsAnalysisReportResponse>) { (Object as any).assign(this, init); }\n}\n(AdmissionsAnalysisReportResponse as unknown)[immerable] = true;\n\nexport class CasesDueForReviewReportResponse\n{\n public results: CasesDueForReviewReport[]|null;\n public total: number|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CasesDueForReviewReportResponse>) { (Object as any).assign(this, init); }\n}\n(CasesDueForReviewReportResponse as unknown)[immerable] = true;\n\nexport class LapsedPatientsReportResponse\n{\n public results: LapsedPatientsReport[]|null;\n public totals: { [index:string]: number; }|null;\n public total: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<LapsedPatientsReportResponse>) { (Object as any).assign(this, init); }\n}\n(LapsedPatientsReportResponse as unknown)[immerable] = true;\n\nexport class ClientBirthdayResponse\n{\n public results: ClientBirthdayReport[]|null;\n public totals: { [index:string]: number; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ClientBirthdayResponse>) { (Object as any).assign(this, init); }\n}\n(ClientBirthdayResponse as unknown)[immerable] = true;\n\nexport class Location implements IHasId, ILocationId, IHasGlobalGuid\n{\n public id: number|null;\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public email: string|null;\n public web: string|null;\n public fax: string|null;\n public status: number|null;\n public onlineGuid: string|null;\n public dnaStockId: number|null;\n public cancelStockId: number|null;\n // @Ignore()\n public dnaStockGuid: string|null;\n\n // @Ignore()\n public cancelStockGuid: string|null;\n\n public isNetworkLocation: boolean|null;\n public isTemplateLocation: boolean|null;\n public directions: string|null;\n public services: string|null;\n public region: string|null;\n public reminderTemplateEmail_TM3: string|null;\n public reminderTemplateSMS_TM3: string|null;\n public facilities: string|null;\n public locationLong: number|null;\n public locationLat: number|null;\n public hasCoordinates: boolean|null;\n public isMainLocation: boolean|null;\n // @Ignore()\n public fullAddressMultiLine: string|null;\n\n // @Ignore()\n public locationId: number|null;\n\n // @Ignore()\n public globalGuid: string|null;\n\n /** @description For ClearAccept, this is the Location's Merchant Site ID */\n public merchantReference: string|null;\n public trackingCategory: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<Location>) { (Object as any).assign(this, init); }\n}\n(Location as unknown)[immerable] = true;\n\nexport class DiagnosisCode implements IHasId\n{\n public id: number|null;\n public text: string|null;\n public bodySite: string|null;\n public mapping: string|null;\n public serviceTypeId: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<DiagnosisCode>) { (Object as any).assign(this, init); }\n}\n(DiagnosisCode as unknown)[immerable] = true;\n\nexport class ClinicalSettingsFlagsResponse\n{\n public flags: ConfigResponse[]|null;\n public flagValues: CustomListItemResponse[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ClinicalSettingsFlagsResponse>) { (Object as any).assign(this, init); }\n}\n(ClinicalSettingsFlagsResponse as unknown)[immerable] = true;\n\n// @Route(\"/client/sms/settings\")\nexport class ClientSmsSettings implements IReturn<ClientSmsSettings>\n{\n public clientId: number|null;\n public fromMode: FromMode|null;\n public fromText: string|null;\n public fromNumber: string|null;\n public returnEmail: string|null;\n public fromNumbers: string[]|null;\n\n public constructor(init?: Partial<ClientSmsSettings>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientSmsSettings'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ClientSmsSettings(); }\n}\n(ClientSmsSettings as unknown)[immerable] = true;\n\n// @Route(\"/client/sms/settings/code\")\nexport class ClientCodeRequest implements IReturn<ClientCodeRequest>\n{\n public clientId: number|null;\n public code: string|null;\n\n public constructor(init?: Partial<ClientCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ClientCodeRequest(); }\n}\n(ClientCodeRequest as unknown)[immerable] = true;\n\nexport class CaseAuditResponse\n{\n public caseClosed: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CaseAuditResponse>) { (Object as any).assign(this, init); }\n}\n(CaseAuditResponse as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}\", \"PUT\")\n// @Route(\"/cases/\", \"POST\")\nexport class CaseDetailsDto implements IReturn<CaseDetailsDto>, ILocationIds, IServiceTypeId\n{\n public id: number|null;\n public case: CaseWithCustomerPractitionerLocationDetails|null;\n public serviceTypeId: number|null;\n public graphics: GraphicResult[]|null;\n public images: ImageResult[]|null;\n public other: CaseSummaryResult[]|null;\n public linked: CaseSummaryResult[]|null;\n public stats: Object|null;\n public recentModalities: ConsultationItem[]|null;\n public recentAssessments: ConsultationItem[]|null;\n public postCloseNotes: PostCloseNotesWithUser[]|null;\n public appointmentId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public meta: { [index:string]: Object; }|null;\n public availableGoals: CaseScoreGoalResponse[]|null;\n public availableScores: CaseScoreGoalResponse[]|null;\n public viewed: boolean|null;\n\n public constructor(init?: Partial<CaseDetailsDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseDetailsDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CaseDetailsDto(); }\n}\n(CaseDetailsDto as unknown)[immerable] = true;\n\nexport class ClinicalCacheResponse\n{\n public practitioners: { [index:number]: string; }|null;\n public medicalContacts: { [index:number]: string; }|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ClinicalCacheResponse>) { (Object as any).assign(this, init); }\n}\n(ClinicalCacheResponse as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/consultation/{TreatmentId}/items\", \"POST\")\n// @Route(\"/cases/{CaseId}/consultation/{TreatmentId}/items/{Id}\", \"GET, PUT, DELETE\")\nexport class ConsultationItemRequest implements IReturn<ConsultationItemRequest>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public treatmentId: number|null;\n public templateId: string|null;\n public title: string|null;\n public date: string|null;\n public type: ConsultationItemType|null;\n public data: { [index:string]: Object; }|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ConsultationItemRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConsultationItemRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ConsultationItemRequest(); }\n}\n(ConsultationItemRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/consultation/{TreatmentId}/items\", \"POST\")\nexport class ConsultationAssessmentItemRequest implements IReturn<ConsultationAssessmentItemRequest>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public treatmentId: number|null;\n public templateId: string|null;\n public title: string|null;\n public date: string|null;\n public type: ConsultationItemType|null;\n public data: { [index:string]: Object; }|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ConsultationAssessmentItemRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConsultationAssessmentItemRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ConsultationAssessmentItemRequest(); }\n}\n(ConsultationAssessmentItemRequest as unknown)[immerable] = true;\n\nexport class ClinicalDiagram implements IHasId\n{\n public id: number|null;\n public caseId: number|null;\n public treatmentId: number|null;\n public closedUser: string|null;\n public dateTime: string|null;\n public closedDateTime: string|null;\n public closedUserId: number|null;\n public value: { [index:string]: Object; }[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ClinicalDiagram>) { (Object as any).assign(this, init); }\n}\n(ClinicalDiagram as unknown)[immerable] = true;\n\nexport class TreatmentResult extends Treatment\n{\n public practitioner: string|null;\n public practitionerNameWithAwards: string|null;\n public assessments: AssessmentResult[]|null;\n public items: CaseConsultationItem[]|null;\n public hexColour: string|null;\n public postCloseNotes: PostCloseNotesWithUser[]|null;\n public createdByUserName: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<TreatmentResult>) { super(init); (Object as any).assign(this, init); }\n}\n(TreatmentResult as unknown)[immerable] = true;\n\nexport class AssertionOptions extends Fido2ResponseBase\n{\n public challenge: string|null;\n public timeout: number|null;\n public rpId: string|null;\n public allowCredentials: PublicKeyCredentialDescriptor[]|null;\n public userVerification: UserVerificationRequirement|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<AssertionOptions>) { super(init); (Object as any).assign(this, init); }\n}\n(AssertionOptions as unknown)[immerable] = true;\n\nexport class CaseAlertSearchResponse extends ResponseBase<AlertResponse>\n{\n public customerHasAlertsFromMultipleCases: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CaseAlertSearchResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(CaseAlertSearchResponse as unknown)[immerable] = true;\n\nexport class AlertDialogResponse extends Alert\n{\n public alertForPerson: string|null;\n public alertForDate: string|null;\n public alertExpiryDate: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<AlertDialogResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(AlertDialogResponse as unknown)[immerable] = true;\n\nexport class OAuthCallbackResponse\n{\n public idToken: string|null;\n public accessToken: string|null;\n public refreshToken: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<OAuthCallbackResponse>) { (Object as any).assign(this, init); }\n}\n(OAuthCallbackResponse as unknown)[immerable] = true;\n\nexport class OnlineSettingsResponse\n{\n public isVHG: boolean|null;\n public isSiteLive: boolean|null;\n public siteTitle: string|null;\n public title: string|null;\n public logoUrl: string|null;\n public appIconUrl: string|null;\n public customColourPrimary: string|null;\n public customColourSecondary: string|null;\n public customColourNav: string|null;\n public customColourNavText: string|null;\n public message: string|null;\n public skin: string|null;\n public confirmSubject: string|null;\n public confirmFrom: string|null;\n public connectEnabled: boolean|null;\n public cancellationPolicy: string|null;\n public termsAndConditions: string|null;\n public privacyPolicy: string|null;\n public license: License|null;\n public clinical: boolean|null;\n public payments: boolean|null;\n public classes: boolean|null;\n public registerProvisional: boolean|null;\n public allowClassBooking: boolean|null;\n public allowRegister: boolean|null;\n public allowPayAtClinic: boolean|null;\n public currency: string|null;\n public googleTrackingId: string|null;\n public googleTagManagerContainerId: string|null;\n public dobRequired: boolean|null;\n public stripeEnabled: boolean|null;\n public squareEnabled: boolean|null;\n public stripeApiKey: string|null;\n public squareApplicationId: string|null;\n public isSquareSandboxMode: boolean|null;\n public showSiteTitle: boolean|null;\n public useExtraAddressLine: boolean|null;\n public labels: DynamicLabelResponse[]|null;\n public videoIntegration: string|null;\n public hasZoomPro: boolean|null;\n public stripeAccount: string|null;\n public saveCardMessage: string|null;\n public clearAcceptEnabled: boolean|null;\n public recaptchaSiteKey: string|null;\n public recaptchaEnabled: boolean|null;\n public allowWaitingListPayments: boolean|null;\n public connectJuneAnalyticsWriteKey: string|null;\n public useAllDeliveryMethodsForAccessCode: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<OnlineSettingsResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineSettingsResponse as unknown)[immerable] = true;\n\nexport class AppointmentSearchResponse\n{\n public locationIds: string[]|null;\n public responseStatus: ResponseStatus|null;\n public appointments: AppointmentSearchResult[]|null;\n public latestAppointmentDate: string|null;\n public earliestAppointmentDate: string|null;\n public practitionerIds: string[]|null;\n public practitionerGenders: string[]|null;\n\n public constructor(init?: Partial<AppointmentSearchResponse>) { (Object as any).assign(this, init); }\n}\n(AppointmentSearchResponse as unknown)[immerable] = true;\n\nexport class ReserveAppointmentResponse\n{\n public appointment: AppointmentDto|null;\n public backgroundJobId: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ReserveAppointmentResponse>) { (Object as any).assign(this, init); }\n}\n(ReserveAppointmentResponse as unknown)[immerable] = true;\n\nexport class OnlineAutoLoginVerifyCodeResponse\n{\n public onlineAutoLoginAuthenticationResult: OnlineAutoLoginAuthenticationResult|null;\n public response: AuthenticateResponse|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<OnlineAutoLoginVerifyCodeResponse>) { (Object as any).assign(this, init); }\n}\n(OnlineAutoLoginVerifyCodeResponse as unknown)[immerable] = true;\n\nexport class StripeOAuthResponse\n{\n public accountId: string|null;\n public redirectUrl: string|null;\n public error: string|null;\n public errorMessage: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<StripeOAuthResponse>) { (Object as any).assign(this, init); }\n}\n(StripeOAuthResponse as unknown)[immerable] = true;\n\nexport class ZoomLinkToTM3Response\n{\n public status: HttpStatusCode|null;\n public redirectUri: string|null;\n public message: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ZoomLinkToTM3Response>) { (Object as any).assign(this, init); }\n}\n(ZoomLinkToTM3Response as unknown)[immerable] = true;\n\nexport class CaseflowMedicalContactResponse extends MedicalContactResponse\n{\n public canRefer: boolean|null;\n public isFinancial: boolean|null;\n public isAdmin: boolean|null;\n public isClinical: boolean|null;\n public role: string|null;\n public roleDescription: string|null;\n public groupName: string|null;\n public groupId: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CaseflowMedicalContactResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(CaseflowMedicalContactResponse as unknown)[immerable] = true;\n\nexport class WorkflowDto\n{\n public id: number|null;\n public customerId: number|null;\n public type: string|null;\n public referralId: number|null;\n public contacts: WorkflowContactDto[]|null;\n public overallOwnerId: string|null;\n public primaryWorkflow: SubWorkflowWitLinkedDetailsDto|null;\n public subWorkflows: SubWorkflowWitLinkedDetailsDto[]|null;\n public services: WorkflowServiceWithLinkedDetailsDto[]|null;\n public processId: string|null;\n public currentStatus: ProcessStatusDto|null;\n public creationDate: string|null;\n public incomingInvoiceLinkFinanceProcess: boolean|null;\n public groupId: number|null;\n public groupClassification: string|null;\n public secondaryGroupId: number|null;\n public teamId: string|null;\n public userId: string|null;\n public dominantSubWorkflowId: number|null;\n public linkedWorkflowId: number|null;\n public primarySubWorkflowId: number|null;\n public contractId: string|null;\n public contract: ContractDto|null;\n public productId: string|null;\n public product: ProductDto|null;\n public firstAppointmentDate: string|null;\n public firstContactDate: string|null;\n public firstAttemptedContactDate: string|null;\n public data: { [index:string]: Object; }|null;\n public intermediaryLocationId: number|null;\n public managedByGroupId: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<WorkflowDto>) { (Object as any).assign(this, init); }\n}\n(WorkflowDto as unknown)[immerable] = true;\n\nexport class EnvironmentResponse extends ResponseBase<Environment>\n{\n public jobId: string|null;\n public gitConfigRepoUrl: string|null;\n public gitUsername: string|null;\n public gitPassword: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<EnvironmentResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(EnvironmentResponse as unknown)[immerable] = true;\n\nexport class EnvironmentVersionResponse extends ResponseBase<EnvironmentVersion>\n{\n public cacheKey: string|null;\n public jobId: string|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<EnvironmentVersionResponse>) { super(init); (Object as any).assign(this, init); }\n}\n(EnvironmentVersionResponse as unknown)[immerable] = true;\n\nexport class ReferralPortalMigrationResponse\n{\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ReferralPortalMigrationResponse>) { (Object as any).assign(this, init); }\n}\n(ReferralPortalMigrationResponse as unknown)[immerable] = true;\n\nexport class CreateNewReferralResponse\n{\n public workflow: WorkflowDto|null;\n public referral: WorkflowReferral|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CreateNewReferralResponse>) { (Object as any).assign(this, init); }\n}\n(CreateNewReferralResponse as unknown)[immerable] = true;\n\nexport class ListingFolderTree\n{\n public folders: Folder[]|null;\n public files: DocumentListingFile[]|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ListingFolderTree>) { (Object as any).assign(this, init); }\n}\n(ListingFolderTree as unknown)[immerable] = true;\n\nexport class NMSettingsDto\n{\n public sendComplianceNotifications: boolean|null;\n public complianceThreshold: number|null;\n public complianceFromAddress: string|null;\n public complianceCCAddresses: string|null;\n public complianceContactDetails: string|null;\n public networkChargeTypes: NM_NetworkChargeTypes[]|null;\n public insuranceFormTemplate: string|null;\n public contractFormTemplate: string|null;\n public dataProtectionFormTemplate: string|null;\n public bankFormTemplate: string|null;\n public insuranceComplianceEnabled: boolean|null;\n public contractComplianceEnabled: boolean|null;\n public dataProtectionComplianceEnabled: boolean|null;\n public bankComplianceEnabled: boolean|null;\n\n public constructor(init?: Partial<NMSettingsDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NMSettingsDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(NMSettingsDto as unknown)[immerable] = true;\n\nexport class ApplyManagementFeeResponse\n{\n public billingItems: BillingItemWithStock[]|null;\n public chargePerItem: number|null;\n public remainder: number|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<ApplyManagementFeeResponse>) { (Object as any).assign(this, init); }\n}\n(ApplyManagementFeeResponse as unknown)[immerable] = true;\n\nexport class SubworkflowServiceSlaDto\n{\n public id: string|null;\n public serviceSlaId: string|null;\n public subworkflowId: number|null;\n public masterworkflowId: number|null;\n public dueDate: string|null;\n public completedDate: string|null;\n public slaTypeId: string|null;\n public name: string|null;\n public slaValid: boolean|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<SubworkflowServiceSlaDto>) { (Object as any).assign(this, init); }\n}\n(SubworkflowServiceSlaDto as unknown)[immerable] = true;\n\nexport class CaseflowMergeData extends MergeDataResponseAcceptsDynamicButReallyWantsMergeDataWhateverOfSpecificTypeSoBeCareful\n{\n public workflow: Object|null;\n public network: Object|null;\n public defaultEmail: string[]|null;\n public subworkflow: Object|null;\n public networklocation: Object|null;\n public networkclinician: Object|null;\n public responseStatus: ResponseStatus;\n\n public constructor(init?: Partial<CaseflowMergeData>) { super(init); (Object as any).assign(this, init); }\n}\n(CaseflowMergeData as unknown)[immerable] = true;\n\n// @DataContract\nexport class AssignRolesResponse\n{\n // @DataMember(Order=1)\n public allRoles: string[]|null;\n\n // @DataMember(Order=2)\n public allPermissions: string[]|null;\n\n // @DataMember(Order=3)\n public meta: { [index:string]: string; }|null;\n\n // @DataMember(Order=4)\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<AssignRolesResponse>) { (Object as any).assign(this, init); }\n}\n(AssignRolesResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class UnAssignRolesResponse\n{\n // @DataMember(Order=1)\n public allRoles: string[]|null;\n\n // @DataMember(Order=2)\n public allPermissions: string[]|null;\n\n // @DataMember(Order=3)\n public meta: { [index:string]: string; }|null;\n\n // @DataMember(Order=4)\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<UnAssignRolesResponse>) { (Object as any).assign(this, init); }\n}\n(UnAssignRolesResponse as unknown)[immerable] = true;\n\n// @DataContract\nexport class GetAccessTokenResponse\n{\n // @DataMember(Order=1)\n public accessToken: string|null;\n\n // @DataMember(Order=2)\n public meta: { [index:string]: string; }|null;\n\n // @DataMember(Order=3)\n public responseStatus: ResponseStatus|null;\n\n public constructor(init?: Partial<GetAccessTokenResponse>) { (Object as any).assign(this, init); }\n}\n(GetAccessTokenResponse as unknown)[immerable] = true;\n\nexport class DigitalPrescriptionDMDRequest implements IReturn<ResponseBase<DigitalPrescriptionDMDResponse>>\n{\n public term: string|null;\n\n public constructor(init?: Partial<DigitalPrescriptionDMDRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DigitalPrescriptionDMDRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DigitalPrescriptionDMDResponse>(); }\n}\n(DigitalPrescriptionDMDRequest as unknown)[immerable] = true;\n\n// @Route(\"/validation\")\nexport class GetZodSchemasRequest implements IReturn<ZodSchemasResponse>\n{\n\n public constructor(init?: Partial<GetZodSchemasRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetZodSchemasRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ZodSchemasResponse(); }\n}\n\nexport class GetTwilioRoom implements IReturn<ResponseBase<TwilioRoomResponse>>\n{\n public appointmentId: number|null;\n\n public constructor(init?: Partial<GetTwilioRoom>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTwilioRoom'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TwilioRoomResponse>(); }\n}\n(GetTwilioRoom as unknown)[immerable] = true;\n\nexport class TwilioReminderRequest implements IReturn<ResponseBase<boolean>>\n{\n public videoCode: string|null;\n\n public constructor(init?: Partial<TwilioReminderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TwilioReminderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TwilioReminderRequest as unknown)[immerable] = true;\n\nexport class GetTwilioOnlineRoom implements IReturn<ResponseBase<TwilioRoomResponse>>\n{\n public videoCode: string|null;\n\n public constructor(init?: Partial<GetTwilioOnlineRoom>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTwilioOnlineRoom'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TwilioRoomResponse>(); }\n}\n(GetTwilioOnlineRoom as unknown)[immerable] = true;\n\n// @Route(\"/square/webhook\")\nexport class SquareWebhookRequest implements IReturn<HttpResult>\n{\n public merchant_id: string|null;\n public type: string|null;\n public event_id: string|null;\n public created_at: string|null;\n public data: SquareWebhookData|null;\n\n public constructor(init?: Partial<SquareWebhookRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareWebhookRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(SquareWebhookRequest as unknown)[immerable] = true;\n\n// @Route(\"/worldpay/notification\")\nexport class WorldPayNotificationRequest\n{\n public requestStream: string|null;\n\n public constructor(init?: Partial<WorldPayNotificationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorldPayNotificationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(WorldPayNotificationRequest as unknown)[immerable] = true;\n\n// @Route(\"/worldpay/dns/flush\")\nexport class WorldPayFlushDnsCacheRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<WorldPayFlushDnsCacheRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorldPayFlushDnsCacheRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(WorldPayFlushDnsCacheRequest as unknown)[immerable] = true;\n\nexport class WorldPayChargeTokenRequest implements IReturn<ResponseBase<WorldPayResponse>>\n{\n public reference: string|null;\n public amount: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<WorldPayChargeTokenRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorldPayChargeTokenRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorldPayResponse>(); }\n}\n(WorldPayChargeTokenRequest as unknown)[immerable] = true;\n\nexport class WorldPayRefundRequest implements IReturn<ResponseBase<WorldPayResponse>>\n{\n public incomeId: number|null;\n public reference: string|null;\n public amount: number|null;\n\n public constructor(init?: Partial<WorldPayRefundRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorldPayRefundRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorldPayResponse>(); }\n}\n(WorldPayRefundRequest as unknown)[immerable] = true;\n\nexport class WorldPayHostedPaymentPageRequest implements IReturn<ResponseBase<WorldPayResponse>>\n{\n public customerId: number|null;\n public amount: number|null;\n public reference: string|null;\n\n public constructor(init?: Partial<WorldPayHostedPaymentPageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorldPayHostedPaymentPageRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorldPayResponse>(); }\n}\n(WorldPayHostedPaymentPageRequest as unknown)[immerable] = true;\n\nexport class WorldPayWaitingTokenRequest implements IReturn<ResponseBase<T>>\n{\n public orderCode: string|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<WorldPayWaitingTokenRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorldPayWaitingTokenRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(WorldPayWaitingTokenRequest as unknown)[immerable] = true;\n\nexport class StripeOnboardRequest\n{\n public code: string|null;\n\n public constructor(init?: Partial<StripeOnboardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StripeOnboardRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(StripeOnboardRequest as unknown)[immerable] = true;\n\n// @Route(\"/autopay\")\nexport class AutoPayRequest implements IReturn<ResponseBase<T>>\n{\n public invoiceIds: number[]|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<AutoPayRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AutoPayRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AutoPayRequest as unknown)[immerable] = true;\n\n// @Route(\"/autopay/cancel\")\nexport class CancelChaseRequest\n{\n public invoiceId: number|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<CancelChaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancelChaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CancelChaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/autopay/resend\")\nexport class ResendChaseEmailRequest\n{\n public invoiceId: number|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<ResendChaseEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ResendChaseEmailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ResendChaseEmailRequest as unknown)[immerable] = true;\n\nexport class GetDiscountCodesRequest implements IReturn<ResponseBase<DiscountCodeDto>>\n{\n public appointmentDate: string|null;\n public getInUseFlag: boolean|null;\n public discountCodeId: string|null;\n\n public constructor(init?: Partial<GetDiscountCodesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDiscountCodesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DiscountCodeDto>(); }\n}\n(GetDiscountCodesRequest as unknown)[immerable] = true;\n\n// @Route(\"/applicablediscountcodes/{InvoiceId}\", \"GET\")\nexport class GetApplicableDiscountCodes implements IReturn<ResponseBase<DiscountCodeDto>>\n{\n public invoiceId: number|null;\n\n public constructor(init?: Partial<GetApplicableDiscountCodes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetApplicableDiscountCodes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DiscountCodeDto>(); }\n}\n(GetApplicableDiscountCodes as unknown)[immerable] = true;\n\n// @Route(\"/getDiscountCodesBillingItem\", \"POST\")\nexport class GetDiscountCodeBillingItem implements IReturn<ResponseBase<BillingItem>>\n{\n public billingItem: BillingItem|null;\n public discountCodeId: string|null;\n\n public constructor(init?: Partial<GetDiscountCodeBillingItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDiscountCodeBillingItem'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BillingItem>(); }\n}\n(GetDiscountCodeBillingItem as unknown)[immerable] = true;\n\n// @Route(\"/diary/eventtypes\", \"GET, POST, DELETE\")\nexport class DiaryEventTypesDto implements IReturn<ResponseBase<DiaryEventTypesDto>>\n{\n public id: number|null;\n public name: string|null;\n public colour: string|null;\n\n public constructor(init?: Partial<DiaryEventTypesDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryEventTypesDto'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DiaryEventTypesDto>(); }\n}\n(DiaryEventTypesDto as unknown)[immerable] = true;\n\n// @Route(\"/files/referrer-logo/{Path*}\")\nexport class ClickReferrerLogoRequest implements IReturn<HttpResult>\n{\n public path: string|null;\n\n public constructor(init?: Partial<ClickReferrerLogoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickReferrerLogoRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(ClickReferrerLogoRequest as unknown)[immerable] = true;\n\nexport class AddressSearchRequest implements IReturn<ResponseBase<AddressFindResponse>>\n{\n public term: string|null;\n public container: string|null;\n\n public constructor(init?: Partial<AddressSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddressSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AddressFindResponse>(); }\n}\n(AddressSearchRequest as unknown)[immerable] = true;\n\nexport class AddressRetrieveRequest implements IReturn<ResponseBase<AddressRetrieveResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<AddressRetrieveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddressRetrieveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AddressRetrieveResponse>(); }\n}\n(AddressRetrieveRequest as unknown)[immerable] = true;\n\n// @Route(\"/reminder/data\")\nexport class ReminderDataRequest implements ILocationId\n{\n public isEmail: boolean|null;\n public practitionerIds: number[]|null;\n public locationId: number|null;\n public appointmentId: number|null;\n public day: string|null;\n\n public constructor(init?: Partial<ReminderDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReminderDataRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReminderDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/reminder/last\")\nexport class LastReminderRequest\n{\n\n public constructor(init?: Partial<LastReminderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LastReminderRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(LastReminderRequest as unknown)[immerable] = true;\n\n// @Route(\"/reminder/send\")\nexport class ReminderSendRequest implements ILocationId\n{\n public sendSms: boolean|null;\n public sendEmail: boolean|null;\n public appointmentIds: number[]|null;\n public locationId: number|null;\n public forceSend: boolean|null;\n\n public constructor(init?: Partial<ReminderSendRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReminderSendRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReminderSendRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/first/verify\")\nexport class FirstUserVerifyRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<FirstUserVerifyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FirstUserVerifyRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(FirstUserVerifyRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/email/verify\")\nexport class EmailVerificationRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<EmailVerificationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EmailVerificationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(EmailVerificationRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/auto/login\")\nexport class AutoLoginRequest implements IReturn<CurrentUser>\n{\n public token: string|null;\n\n public constructor(init?: Partial<AutoLoginRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AutoLoginRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CurrentUser(); }\n}\n(AutoLoginRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/auto/redirect\")\nexport class AutoRedirectRequest implements IReturn<string>\n{\n public password: string|null;\n public verificationCode: string|null;\n\n public constructor(init?: Partial<AutoRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AutoRedirectRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return ''; }\n}\n(AutoRedirectRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/rules\", \"GET\")\nexport class JsonPermissionRuleRequest implements IReturn<ResponseBase<string>>\n{\n\n public constructor(init?: Partial<JsonPermissionRuleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionRuleRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(JsonPermissionRuleRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/all\", \"GET\")\nexport class JsonPermissionRequest implements IReturn<ResponseBase<JsonPermissionResponse>>\n{\n\n public constructor(init?: Partial<JsonPermissionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<JsonPermissionResponse>(); }\n}\n(JsonPermissionRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/roles\", \"GET\")\nexport class JsonPermissionGetRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<JsonPermissionGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(JsonPermissionGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/roles/rename\", \"POST\")\nexport class JsonPermissionRenameRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public shortDescription: string|null;\n public newRoleName: string|null;\n\n public constructor(init?: Partial<JsonPermissionRenameRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionRenameRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(JsonPermissionRenameRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/roles/update\", \"POST\")\nexport class JsonPermissionUpdateRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public shortDescription: string|null;\n public jsonPermissions: string|null;\n\n public constructor(init?: Partial<JsonPermissionUpdateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(JsonPermissionUpdateRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/roles/clone\", \"POST\")\nexport class JsonPermissionCloneRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public shortDescription: string|null;\n\n public constructor(init?: Partial<JsonPermissionCloneRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionCloneRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(JsonPermissionCloneRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/roles/add\", \"POST\")\nexport class JsonPermissionAddRequest implements IReturn<ResponseBase<T>>\n{\n public shortDescription: string|null;\n\n public constructor(init?: Partial<JsonPermissionAddRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionAddRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(JsonPermissionAddRequest as unknown)[immerable] = true;\n\n// @Route(\"/permissions/roles/delete\", \"POST\")\nexport class JsonPermissionDeleteRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public shortDescription: string|null;\n\n public constructor(init?: Partial<JsonPermissionDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JsonPermissionDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(JsonPermissionDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/users/all\")\nexport class AllUsersLocationRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<UsersSearchResponse>>\n{\n public username: string|null;\n public status: boolean|null;\n public fullname: string|null;\n public practitioner: number|null;\n\n public constructor(init?: Partial<AllUsersLocationRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AllUsersLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<UsersSearchResponse>(); }\n}\n(AllUsersLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/users/allWorkflowUsers\")\nexport class AllWorkflowUsersLocationRequest implements IReturn<ResponseBase<UsersSearchResponse>>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public username: string|null;\n public status: boolean|null;\n public fullname: string|null;\n public practitioner: number|null;\n public term: string|null;\n public sort: QueryField[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<AllWorkflowUsersLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllWorkflowUsersLocationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<UsersSearchResponse>(); }\n}\n(AllWorkflowUsersLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/email/{Id}\", \"GET\")\nexport class UserEmailRequest implements ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UserEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserEmailRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(UserEmailRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/email/reset\")\nexport class UserEmailReset implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n public email: string|null;\n public saveEmail: boolean|null;\n\n public constructor(init?: Partial<UserEmailReset>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserEmailReset'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UserEmailReset as unknown)[immerable] = true;\n\nexport class UserResetRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public mode: ResetMode|null;\n public id: number|null;\n public customerId: number|null;\n public locationId: number|null;\n public codeForExistingSecret: string|null;\n\n public constructor(init?: Partial<UserResetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserResetRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UserResetRequest as unknown)[immerable] = true;\n\n// @Route(\"/users/allUsersWithRoles\")\nexport class UsersWithRolesRequest implements IReturn<UserRoleLocationWithDetails[]>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<UsersWithRolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UsersWithRolesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<UserRoleLocationWithDetails>(); }\n}\n(UsersWithRolesRequest as unknown)[immerable] = true;\n\nexport class UsersExportRequest implements IReturn<ResponseBase<string>>, ILocationIds\n{\n public query: AllUsersLocationRequest|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<UsersExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UsersExportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(UsersExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/users/{Id}\", \"GET\")\nexport class UserRequest implements IReturn<ResponseBase<UsersSearchResponse>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<UsersSearchResponse>(); }\n}\n(UserRequest as unknown)[immerable] = true;\n\n// @Route(\"/users/{UserId}/locations\", \"GET\")\nexport class UserLocationsRequest implements IReturn<ResponseBase<UserLocationsResponse>>, ISecurityId\n{\n public userId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UserLocationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<UserLocationsResponse>(); }\n}\n(UserLocationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/users/{Id}/permissions\", \"GET\")\nexport class UserPermissionRequest implements IReturn<ResponseBase<JsonPermission>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UserPermissionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserPermissionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<JsonPermission>(); }\n}\n(UserPermissionRequest as unknown)[immerable] = true;\n\n// @Route(\"/users\")\nexport class UserSaveRequest implements IReturn<ResponseBase<number>>, ILocationId\n{\n public id: number|null;\n public name: string|null;\n public fullName: string|null;\n public firstName: string|null;\n public lastName: string|null;\n public current: boolean|null;\n public email: string|null;\n public mobileNumber: string|null;\n public position: string|null;\n public pword: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public migrated: boolean|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public avatar: string|null;\n public locations: UserRoleLocationDto[]|null;\n public accessiblePractitioners: number[]|null;\n public departments: number[]|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<UserSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(UserSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/businessprofile/{Id}\", \"GET\")\nexport class BusinessProfileRequest implements IReturn<ResponseBase<BusinessProfileResponse>>\n{\n public id: number|null;\n public businessName: string|null;\n public tradingName: string|null;\n public description: string|null;\n public termsAndConditions: string|null;\n public privacyPolicy: string|null;\n public cancellationPolicy: string|null;\n\n public constructor(init?: Partial<BusinessProfileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessProfileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessProfileResponse>(); }\n}\n(BusinessProfileRequest as unknown)[immerable] = true;\n\n// @Route(\"/businessprofile\", \"POST\")\n// @Route(\"/businessprofile/{Id}\", \"GET\")\nexport class BusinessProfilePostRequest extends BusinessProfileRequest implements IReturn<ResponseBase<BusinessProfileResponse>>\n{\n\n public constructor(init?: Partial<BusinessProfilePostRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessProfilePostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BusinessProfileResponse>(); }\n}\n(BusinessProfilePostRequest as unknown)[immerable] = true;\n\n// @Route(\"/businessprofile/{Id}\", \"PUT\")\n// @Route(\"/businessprofile/{Id}\", \"GET\")\nexport class BusinessProfilePutRequest extends BusinessProfileRequest implements IReturn<ResponseBase<BusinessProfileResponse>>\n{\n\n public constructor(init?: Partial<BusinessProfilePutRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessProfilePutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<BusinessProfileResponse>(); }\n}\n(BusinessProfilePutRequest as unknown)[immerable] = true;\n\n// @Route(\"/businessprofile\", \"GET\")\nexport class BusinessProfileGetRequest implements IReturn<ResponseBase<BusinessProfileResponse>>\n{\n\n public constructor(init?: Partial<BusinessProfileGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessProfileGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessProfileResponse>(); }\n}\n(BusinessProfileGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/extraction/status\", \"GET\")\nexport class ExtractionStatusRequest implements IReturn<ResponseBase<ExtractionResponse>>\n{\n\n public constructor(init?: Partial<ExtractionStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExtractionStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExtractionResponse>(); }\n}\n(ExtractionStatusRequest as unknown)[immerable] = true;\n\n// @Route(\"/extraction/begin\", \"POST\")\nexport class ExtractionRequest implements IReturn<ResponseBase<ExtractionResponse>>\n{\n public outOfHours: boolean|null;\n\n public constructor(init?: Partial<ExtractionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExtractionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ExtractionResponse>(); }\n}\n(ExtractionRequest as unknown)[immerable] = true;\n\n// @Route(\"/download/util\", \"GET\")\nexport class DownloadUtilRequest\n{\n public os: string|null;\n\n public constructor(init?: Partial<DownloadUtilRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadUtilRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(DownloadUtilRequest as unknown)[immerable] = true;\n\n// @Route(\"/cxx/files\")\nexport class CancellationFileExtract implements IReturn<FilesListingResponse>, IHasPath\n{\n public safeRoot: string|null;\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public recursive: boolean|null;\n\n // @DataMember(Order=3)\n public createDirectoryIfNotExists: boolean|null;\n\n public constructor(init?: Partial<CancellationFileExtract>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancellationFileExtract'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FilesListingResponse(); }\n}\n(CancellationFileExtract as unknown)[immerable] = true;\n\n// @Route(\"/cases/{id}/imaging\")\nexport class CaseImagingRequest implements IReturn<CaseImagingResponse>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseImagingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseImagingRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CaseImagingResponse(); }\n}\n(CaseImagingRequest as unknown)[immerable] = true;\n\nexport class CommandBarPatientRequest extends CommandBarRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<CommandBarPatientRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CommandBarPatientRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CommandBarPatientRequest as unknown)[immerable] = true;\n\nexport class CommandBarGroupRequest extends CommandBarRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<CommandBarGroupRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CommandBarGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CommandBarGroupRequest as unknown)[immerable] = true;\n\nexport class CommandBarContactRequest extends CommandBarRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<CommandBarContactRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CommandBarContactRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CommandBarContactRequest as unknown)[immerable] = true;\n\nexport class CommandBarInvoiceRequest extends CommandBarRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<CommandBarInvoiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CommandBarInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CommandBarInvoiceRequest as unknown)[immerable] = true;\n\nexport class CommandBarPaymentRequest extends CommandBarRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<CommandBarPaymentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CommandBarPaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CommandBarPaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/mergefields\")\nexport class MergeFieldsRequest\n{\n public type: string|null;\n public webSafe: boolean|null;\n\n public constructor(init?: Partial<MergeFieldsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MergeFieldsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(MergeFieldsRequest as unknown)[immerable] = true;\n\nexport class GetCustomMergeFields implements IReturn<ResponseBase<MergeFieldMappingDto>>\n{\n public mergeFieldTypes: MergeFieldType[]|null;\n\n public constructor(init?: Partial<GetCustomMergeFields>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomMergeFields'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MergeFieldMappingDto>(); }\n}\n(GetCustomMergeFields as unknown)[immerable] = true;\n\nexport class GetCustomMergeField implements IReturn<ResponseBase<MergeFieldMappingDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetCustomMergeField>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomMergeField'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MergeFieldMappingDto>(); }\n}\n(GetCustomMergeField as unknown)[immerable] = true;\n\nexport class SaveCustomMergeField implements IReturn<ResponseBase<MergeFieldMappingDto>>\n{\n public mergeFieldMapping: MergeFieldMappingDto|null;\n\n public constructor(init?: Partial<SaveCustomMergeField>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveCustomMergeField'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MergeFieldMappingDto>(); }\n}\n(SaveCustomMergeField as unknown)[immerable] = true;\n\nexport class GetCustomFieldMappings implements IReturn<ResponseBase<{ [index:string]: string[]; }>>\n{\n\n public constructor(init?: Partial<GetCustomFieldMappings>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomFieldMappings'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string[]; }>(); }\n}\n(GetCustomFieldMappings as unknown)[immerable] = true;\n\n// @Route(\"/batchInvoiceMergeData\")\nexport class BatchInvoiceMergeDataRequest implements IReturn<BatchMergeDataResponse[]>, ISecurityIds\n{\n public ids: BatchInvoiceMergeDataRequestObject[]|null;\n public securityIds: number[]|null;\n\n public constructor(init?: Partial<BatchInvoiceMergeDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BatchInvoiceMergeDataRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<BatchMergeDataResponse>(); }\n}\n(BatchInvoiceMergeDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/batchMergeData\")\nexport class BatchMergeDataRequest implements IReturn<BatchMergeDataResponse[]>, ISecurityIds, ISecurityType\n{\n public ids: BatchMergeDataRequestObject[]|null;\n public securityIds: number[]|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<BatchMergeDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BatchMergeDataRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<BatchMergeDataResponse>(); }\n}\n(BatchMergeDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/mergedatawithcontact/{Type}/{Id}/{ContactId}/{Path*}\")\n// @Route(\"/mergedata/{Type}/{Id}/{Path*}\")\nexport class MergeDataRequest implements IHasPath, ISecurityId, ISecurityType, IFilterServiceTypeManually, IDepartmentIds, IAllowedDepartmentIds\n{\n public id: number|null;\n public type: string|null;\n public path: string|null;\n public safeRoot: string|null;\n public contactId: number|null;\n public appointmentId: number|null;\n public securityId: number|null;\n public securityType: string|null;\n public onlineUrl: string|null;\n public validFor: number|null;\n public departmentIds: number[]|null;\n public allowedDepartmentIds: number[]|null;\n public isOnline: boolean|null;\n public fallbackCustomerId: number|null;\n public chaseId: string|null;\n public waitingListId: string|null;\n\n public constructor(init?: Partial<MergeDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MergeDataRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(MergeDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/contactmergecheck\", \"POST\")\nexport class ContactMergeCheckRequest implements IReturn<ResponseBase<ContactMergeCheckResponse>>, IHasPath, ISecurityId, ISecurityType\n{\n public mode: string|null;\n public id: string|null;\n public templateName: string|null;\n public path: string|null;\n public safeRoot: string|null;\n public securityId: number|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<ContactMergeCheckRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ContactMergeCheckRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ContactMergeCheckResponse>(); }\n}\n(ContactMergeCheckRequest as unknown)[immerable] = true;\n\n// @Route(\"/communication/sms\")\nexport class SmsSendRequest implements IReturn<SmsResponse>, ISecurityId, ISecurityType\n{\n public recipient: string|null;\n public source: string|null;\n public object: Object|null;\n public objectType: string|null;\n public objectId: number|null;\n public skipFileSave: boolean|null;\n public template: string|null;\n public securityId: number|null;\n public securityType: string|null;\n public isOnline: boolean|null;\n public smsType: string|null;\n public metadata: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<SmsSendRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SmsSendRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new SmsResponse(); }\n}\n(SmsSendRequest as unknown)[immerable] = true;\n\n// @Route(\"/communication/consent/{Mode}/{Id}\")\nexport class SmsConsentCheck implements IReturn<SmsConsentReponse>\n{\n public id: number|null;\n public mode: string|null;\n\n public constructor(init?: Partial<SmsConsentCheck>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SmsConsentCheck'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new SmsConsentReponse(); }\n}\n(SmsConsentCheck as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts\", \"GET\")\n// @Route(\"/customer/contacts/{Id}\", \"GET\")\nexport class MedicalContactRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ISecurityId\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<MedicalContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MedicalContactRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(MedicalContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/linked\")\n// @Route(\"/customer/contacts/linked/{CustomerId}\")\nexport class LinkedPatientsRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<LinkedPatientsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkedPatientsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(LinkedPatientsRequest as unknown)[immerable] = true;\n\n// @Route(\"/contact/recent/{Id}\", \"GET\")\nexport class ContactRecentRequest implements IReturn<ContactRecentResponse>, IHasPath, ISecurityId\n{\n public id: number|null;\n public path: string|null;\n public safeRoot: string|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ContactRecentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ContactRecentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ContactRecentResponse(); }\n}\n(ContactRecentRequest as unknown)[immerable] = true;\n\n// @Route(\"/contacts/linkedCustomers/\")\n// @Route(\"/contacts/linkedCustomers/{ContactId}\")\nexport class ContactsLinkedPatients implements IReturn<ResponseBase<GeneralCustomerResponse>>, ISecurityId, IFilterServiceTypeManually\n{\n public contactId: number|null;\n public securityId: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<ContactsLinkedPatients>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ContactsLinkedPatients'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(ContactsLinkedPatients as unknown)[immerable] = true;\n\n// @Route(\"/customers/contactsave\")\nexport class MedicalContactSaveRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ILocationId\n{\n public id: number|null;\n public current: boolean|null;\n public category: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public businessName: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public mobile: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public altTelephone1: string|null;\n public altTelephone2: string|null;\n public fax: string|null;\n public email: string|null;\n public web: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public providerNumber: string|null;\n\n public constructor(init?: Partial<MedicalContactSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MedicalContactSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(MedicalContactSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/{CustomerId}\")\n// @Route(\"/customers\")\nexport class CustomerRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ICustomerId, IGet\n{\n public customerId: number|null;\n public includeDiaryMetaData: boolean|null;\n\n public constructor(init?: Partial<CustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(CustomerRequest as unknown)[immerable] = true;\n\nexport class CustomerLiteRequest implements IReturn<ResponseBase<CustomerLiteDto>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<CustomerLiteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerLiteRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomerLiteDto>(); }\n}\n(CustomerLiteRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/save/consent\")\nexport class CustomerSaveConsentRequest implements IReturn<ResponseBase<Object>>, ILocationId, ICustomerId\n{\n public id: number|null;\n public locationId: number|null;\n public customerId: number|null;\n public emailConsent: boolean|null;\n public smsConsent: boolean|null;\n public phoneConsent: boolean|null;\n public givenConsent: boolean|null;\n\n public constructor(init?: Partial<CustomerSaveConsentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerSaveConsentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(CustomerSaveConsentRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/batch/consent\")\nexport class CustomerBatchConsentRequest implements IReturn<ResponseBase<CustomerBatchConsentResponse>>\n{\n public consent: boolean|null;\n public customerIds: number[]|null;\n\n public constructor(init?: Partial<CustomerBatchConsentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerBatchConsentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomerBatchConsentResponse>(); }\n}\n(CustomerBatchConsentRequest as unknown)[immerable] = true;\n\nexport class CustomerEmailDuplicateCheck implements IReturn<ResponseBase<Customer>>, ILocationId\n{\n public locationId: number|null;\n public email: string|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<CustomerEmailDuplicateCheck>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerEmailDuplicateCheck'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Customer>(); }\n}\n(CustomerEmailDuplicateCheck as unknown)[immerable] = true;\n\n// @Route(\"/customer/save\")\nexport class CustomerSaveRequest implements IReturn<ResponseBase<CustomerSaveResponse>>, ILocationId\n{\n public id: number|null;\n public reference: string|null;\n public forename: string|null;\n public surname: string|null;\n public title: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public invoiceAddressLine1: string|null;\n public invoiceAddressLine2: string|null;\n public invoiceAddressLine3: string|null;\n public invoiceAddressLine4: string|null;\n public invoiceAddressLine5: string|null;\n public invoicePostCode: string|null;\n public registrationDate: string|null;\n public homeTelephone: string|null;\n public workTelephone: string|null;\n public mobileTelephone: string|null;\n public stripeToken: string|null;\n public stripeCustomerId: string|null;\n public cardName: string|null;\n public lastFourDigits: string|null;\n public expiryMonth: number|null;\n public expiryYear: number|null;\n public brand: string|null;\n public isNewCard: boolean|null;\n public isDeletingCard: boolean|null;\n public elementType: string|null;\n public cardID: number|null;\n public email: string|null;\n public dateOfBirth: string|null;\n public locationName: string|null;\n public practitionerTitle: string|null;\n public practitionerForename: string|null;\n public practitionerSurname: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public practitionerName: string|null;\n public groupName: string|null;\n public groupId: number|null;\n public patientGroup: string|null;\n public accountId: number|null;\n public status: number|null;\n public insuranceNumber: string|null;\n public groupReference: string|null;\n public smsEnabled: boolean|null;\n public defaultCharge: string|null;\n public invoicePeriod: string|null;\n public useInvoiceAddress: boolean|null;\n public enquiry: string|null;\n public category: string|null;\n public employer: string|null;\n public height: number|null;\n public weight: number|null;\n public hospitalNumber: string|null;\n public niNumber: string|null;\n public medication: string|null;\n public previousInjuries: string|null;\n public alternativeRef1: string|null;\n public lastAppointmentDate: string|null;\n public alternativeRef2: string|null;\n public alternativeRef3: string|null;\n public alternativeRef4: string|null;\n public notes: string|null;\n public billTo: string|null;\n public online: boolean|null;\n public cardNo: string|null;\n public invoiceFrequency: number|null;\n public invoiceDeadline: string|null;\n public consent: string|null;\n public forceSave: boolean|null;\n public customerId: number|null;\n public emailConsent: boolean|null;\n public smsConsent: boolean|null;\n public phoneConsent: boolean|null;\n public givenConsent: boolean|null;\n public updateAnyway: boolean|null;\n public paymentMethodId: string|null;\n public mailChimpEnabled: boolean|null;\n public flag: string|null;\n public medicareCardNo: string|null;\n public irn: string|null;\n public dvaNumber: string|null;\n public tags: string[]|null;\n public overridePayAtClinic: boolean|null;\n\n public constructor(init?: Partial<CustomerSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomerSaveResponse>(); }\n}\n(CustomerSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/sms/change\")\nexport class ChangeCustomerSmsEnabled implements IReturn<Customer>, ILocationIds\n{\n public id: number|null;\n public smsEnabled: boolean|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<ChangeCustomerSmsEnabled>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangeCustomerSmsEnabled'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Customer(); }\n}\n(ChangeCustomerSmsEnabled as unknown)[immerable] = true;\n\n// @Route(\"/patient/nextappointment/{CustomerId}\")\nexport class PatientNextAppoimentRequest implements IReturn<PatientNextAppoimentResponse>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<PatientNextAppoimentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientNextAppoimentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new PatientNextAppoimentResponse(); }\n}\n(PatientNextAppoimentRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/recent/{CustomerId}\")\nexport class PatientRecentRequest implements IReturn<PatientRecentResponse>, IHasPath, ICustomerId, IFilterServiceTypeManually\n{\n public customerId: number|null;\n public path: string|null;\n public safeRoot: string|null;\n\n public constructor(init?: Partial<PatientRecentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientRecentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new PatientRecentResponse(); }\n}\n(PatientRecentRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/recentDocument/{CustomerId}\")\nexport class RecentDocumentRequest implements IReturn<RecentDocumentResponse>, IHasPath, ICustomerId\n{\n public customerId: number|null;\n public path: string|null;\n public safeRoot: string|null;\n\n public constructor(init?: Partial<RecentDocumentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RecentDocumentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new RecentDocumentResponse(); }\n}\n(RecentDocumentRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/medical/{CustomerId}\")\n// @Route(\"/customer/contacts/medical\")\nexport class CustomerMedicalContactsRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<CustomerMedicalContactsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerMedicalContactsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(CustomerMedicalContactsRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/joined/{CustomerId}\")\n// @Route(\"/customer/contacts/joined\")\nexport class JoinedContactsRequest implements IReturn<ResponseBase<JoinedContactResponse>>, ICustomerId\n{\n public customerId: number|null;\n public term: string|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<JoinedContactsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'JoinedContactsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<JoinedContactResponse>(); }\n}\n(JoinedContactsRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/medical/default\")\nexport class DefaultMedicalContactRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<DefaultMedicalContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DefaultMedicalContactRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DefaultMedicalContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/medical/contactable\")\nexport class ContactableMedicalContactRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<ContactableMedicalContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ContactableMedicalContactRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ContactableMedicalContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/patient/{CustomerId}\")\n// @Route(\"/customer/contacts/patient\")\nexport class CustomerPatientContactsRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<CustomerPatientContactsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerPatientContactsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(CustomerPatientContactsRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/relationship\")\nexport class PatientContactRelationshipRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n public relationship: string|null;\n\n public constructor(init?: Partial<PatientContactRelationshipRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientContactRelationshipRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PatientContactRelationshipRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/patient/default\")\nexport class DefaultPatientContactRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<DefaultPatientContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DefaultPatientContactRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DefaultPatientContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/delete\")\nexport class DeleteCustomerRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public isProvisional: boolean|null;\n\n public constructor(init?: Partial<DeleteCustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteCustomerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteCustomerRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/linkpatient\")\nexport class LinkCustomerRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public existingPatientId: number|null;\n\n public constructor(init?: Partial<LinkCustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkCustomerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(LinkCustomerRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/makereal\")\nexport class MakeCustomerRealRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<MakeCustomerRealRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MakeCustomerRealRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(MakeCustomerRealRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/medical/remove\")\nexport class RemoveMedicalContactRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<RemoveMedicalContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveMedicalContactRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(RemoveMedicalContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/patient/remove\")\nexport class RemovePatientContactRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<RemovePatientContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemovePatientContactRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(RemovePatientContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/contacts/addTo\")\nexport class CustomerContactAddRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<CustomerContactAddRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerContactAddRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CustomerContactAddRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/patientcon/addTo\")\nexport class CustomerPatientContactAddRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public contactId: number|null;\n public relationship: string|null;\n\n public constructor(init?: Partial<CustomerPatientContactAddRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerPatientContactAddRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CustomerPatientContactAddRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/account\")\n// @Route(\"/finances/account/{CustomerId}\")\nexport class AccountStatementRequest implements IReturn<ResponseBase<AccountStatementResponse>>, ILocationIds\n{\n public sort: QueryField[]|null;\n public customerId: number|null;\n public date: DateRange|null;\n public skip: number|null;\n public take: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AccountStatementRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountStatementRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AccountStatementResponse>(); }\n}\n(AccountStatementRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/account/groups\")\n// @Route(\"/finances/account/groups/{CustomerId}\")\nexport class GroupAccountStatementRequest implements IReturn<ResponseBase<GroupAccountStatementResponse>>, ILocationIds\n{\n public sort: QueryField[]|null;\n public customerId: number|null;\n public date: DateRange|null;\n public skip: number|null;\n public take: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<GroupAccountStatementRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupAccountStatementRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupAccountStatementResponse>(); }\n}\n(GroupAccountStatementRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoices/{InvoiceId}/billingitems\")\n// @Route(\"/billing/items\")\nexport class BillingItemsRequest implements IReturn<ResponseBase<BillingItemsResponse>>, ILocationIds\n{\n public sort: QueryField[]|null;\n public customerId: number|null;\n public invoiceId: number|null;\n public skip: number|null;\n public take: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public hideDiscountItems: boolean|null;\n\n public constructor(init?: Partial<BillingItemsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BillingItemsResponse>(); }\n}\n(BillingItemsRequest as unknown)[immerable] = true;\n\n// @Route(\"/billing/items/group\")\nexport class GroupBillingItemsRequest implements IReturn<ResponseBase<BillingItemsResponse>>, ILocationId\n{\n public sort: QueryField[]|null;\n public customerId: number|null;\n public invoiceId: number|null;\n public skip: number|null;\n public take: number|null;\n public locationId: number|null;\n public hideDiscountItems: boolean|null;\n\n public constructor(init?: Partial<GroupBillingItemsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupBillingItemsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BillingItemsResponse>(); }\n}\n(GroupBillingItemsRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/prepaidStock\")\nexport class PrePaidStockRequest implements IReturn<ResponseBase<StockResponse>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<PrePaidStockRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PrePaidStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockResponse>(); }\n}\n(PrePaidStockRequest as unknown)[immerable] = true;\n\n// @Route(\"/billing/item/prepaid\")\nexport class PrePaidItemRequest implements IReturn<ResponseBase<PrePaidItems>>, ICustomerId\n{\n public customerId: number|null;\n public billingItemId: number|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<PrePaidItemRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PrePaidItemRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PrePaidItems>(); }\n}\n(PrePaidItemRequest as unknown)[immerable] = true;\n\n// @Route(\"/billing/item/prepaid/add\")\nexport class PrePaidItemAddRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public accountId: number|null;\n public clientId: number|null;\n public stockId: number|null;\n public customerId: number|null;\n public billingItemId: number|null;\n public quantity: number|null;\n public classTypeId: number|null;\n public expiryDate: string|null;\n public type: PackageBundleItemType|null;\n\n public constructor(init?: Partial<PrePaidItemAddRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PrePaidItemAddRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PrePaidItemAddRequest as unknown)[immerable] = true;\n\n// @Route(\"/billing/item/prepaid/action\")\nexport class PrePaidItemDeleteRequest implements IReturn<ResponseBase<boolean>>\n{\n public prePaidId: number|null;\n public markAsRemoved: boolean|null;\n public incrementUsage: boolean|null;\n public updateQuantityAndUsage: boolean|null;\n public quantity: number|null;\n public used: number|null;\n\n public constructor(init?: Partial<PrePaidItemDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PrePaidItemDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PrePaidItemDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/billing/item/prepaid/edit\")\nexport class PrePaidItemsExpiryDateRequest implements IReturn<ResponseBase<boolean>>\n{\n public billingItemId: number|null;\n public expiryDate: string|null;\n\n public constructor(init?: Partial<PrePaidItemsExpiryDateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PrePaidItemsExpiryDateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PrePaidItemsExpiryDateRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoices/{InvoiceId}/payments\")\nexport class InvoicePaymentsRequest implements IReturn<ResponseBase<InvoicePaymentsResponse>>, IInvoiceId, ISecurityId\n{\n public invoiceId: number|null;\n public skip: number|null;\n public take: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoicePaymentsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoicePaymentsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoicePaymentsResponse>(); }\n}\n(InvoicePaymentsRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/contactsearch/\", \"POST\")\n// @Route(\"/customers/contactsearch/{CustomerId}\", \"POST\")\nexport class ContactQuickSearchRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n public customerId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ContactQuickSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ContactQuickSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(ContactQuickSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/click/contact-search\", \"POST\")\n// @Route(\"/click/contact-search/{CustomerId}\", \"POST\")\nexport class ClickContactQuickSearchRequest implements IReturn<ResponseBase<ClickContactSearchResult>>, ILocationIds, IFilterServiceTypeManually\n{\n public filterId: number|null;\n public term: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<ClickContactQuickSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickContactQuickSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickContactSearchResult>(); }\n}\n(ClickContactQuickSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/contactsearch/patient\", \"POST\")\n// @Route(\"/customers/contactsearch/patient/{CustomerId}\", \"POST\")\nexport class ContactPatientQuickSearchRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ICustomerId, ILocationIds, IFilterServiceTypeManually\n{\n public startIdx: number|null;\n public endIdx: number|null;\n public realOnly: boolean|null;\n public includeDeceased: boolean|null;\n public term: string|null;\n public customerId: number|null;\n public sort: QueryField[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<ContactPatientQuickSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ContactPatientQuickSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(ContactPatientQuickSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/export/csv\")\nexport class CustomerAdvancedSearchExportCSVRequest implements IReturn<string>, ILocationIds\n{\n public customHeaders: CustomerCSVHeaderOverrides|null;\n public query: CustomerAdvancedSearchRequest|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CustomerAdvancedSearchExportCSVRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerAdvancedSearchExportCSVRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return ''; }\n}\n(CustomerAdvancedSearchExportCSVRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/count\")\nexport class PatientCountRequest implements IReturn<ResponseBase<number>>\n{\n\n public constructor(init?: Partial<PatientCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(PatientCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/medicalContacts/count\")\nexport class MedicalContactCountRequest implements IReturn<ResponseBase<number>>\n{\n\n public constructor(init?: Partial<MedicalContactCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MedicalContactCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(MedicalContactCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/searchProvisionalPatients\")\nexport class ProvisionalPatientsRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ILocationIds\n{\n public locationIds: number[]|null;\n public status: number|null;\n public provisional: boolean|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<ProvisionalPatientsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProvisionalPatientsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(ProvisionalPatientsRequest as unknown)[immerable] = true;\n\n// @Route(\"/customers/potentialProvisionalMatches/{CustomerId}\")\nexport class PotentialProvisionalMatchesRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ICustomerId, ILocationIds, IFilterServiceTypeManually\n{\n public customerId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<PotentialProvisionalMatchesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PotentialProvisionalMatchesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(PotentialProvisionalMatchesRequest as unknown)[immerable] = true;\n\nexport class GetPotentialMatchesRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ILocationIds, IFilterServiceTypeManually\n{\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public postCode: string|null;\n public email: string|null;\n public mobileTelephone: string|null;\n public dateOfBirth: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<GetPotentialMatchesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPotentialMatchesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(GetPotentialMatchesRequest as unknown)[immerable] = true;\n\n// @Route(\"/contacts/search\")\nexport class MedicalContactsAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<MedicalContactResponse>>\n{\n public surname: string|null;\n public status: boolean|null;\n public address: string|null;\n public forename: string|null;\n public locationId: number|null;\n public locationMulti: number[]|null;\n public businessName: string|null;\n\n public constructor(init?: Partial<MedicalContactsAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'MedicalContactsAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(MedicalContactsAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/contacts/export/csv\")\nexport class MedicalContactsAdvancedSearchExportCSVRequest implements IReturn<string>, ILocationIds\n{\n public customHeaders: MedicalContactsCSVHeaderOverrides|null;\n public query: MedicalContactsAdvancedSearchRequest|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<MedicalContactsAdvancedSearchExportCSVRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MedicalContactsAdvancedSearchExportCSVRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return ''; }\n}\n(MedicalContactsAdvancedSearchExportCSVRequest as unknown)[immerable] = true;\n\nexport class TreatmentAuthCountRequest implements IReturn<number>\n{\n\n public constructor(init?: Partial<TreatmentAuthCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAuthCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(TreatmentAuthCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/{CustomerId}/authCodes\")\nexport class TreatmentAuthRequest implements IReturn<ResponseBase<TreatmentAuthResponse>>, ICustomerId, IDepartmentIds\n{\n public sort: QueryField[]|null;\n public skip: number|null;\n public take: number|null;\n public customerId: number|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<TreatmentAuthRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAuthRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TreatmentAuthResponse>(); }\n}\n(TreatmentAuthRequest as unknown)[immerable] = true;\n\nexport class ClickCustomerNotesCheckRequest implements IReturn<ResponseBase<ClickCustomerNotesCheckResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<ClickCustomerNotesCheckRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickCustomerNotesCheckRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClickCustomerNotesCheckResponse>(); }\n}\n(ClickCustomerNotesCheckRequest as unknown)[immerable] = true;\n\nexport class ClickCustomerCreateCaseRequest implements IReturn<ResponseBase<ClickCustomerNotesCheckResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<ClickCustomerCreateCaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickCustomerCreateCaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickCustomerNotesCheckResponse>(); }\n}\n(ClickCustomerCreateCaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/cases/{CustomerId}\")\nexport class AppointmentCaseRequest implements IReturn<ResponseBase<AppointmentCaseResponse>>, ILocationIds, IServiceTypeId\n{\n public customerId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<AppointmentCaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentCaseRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AppointmentCaseResponse>(); }\n}\n(AppointmentCaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/auths\")\nexport class AppointmentAuthCode implements IReturn<ResponseBase<TreatmentAuthResponse>>, ICustomerId, IServiceTypeId\n{\n public customerId: number|null;\n public existingAuthId: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<AppointmentAuthCode>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentAuthCode'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TreatmentAuthResponse>(); }\n}\n(AppointmentAuthCode as unknown)[immerable] = true;\n\nexport class TreatmentAuthByIdRequest implements IReturn<ResponseBase<T>>\n{\n public authId: number|null;\n\n public constructor(init?: Partial<TreatmentAuthByIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAuthByIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(TreatmentAuthByIdRequest as unknown)[immerable] = true;\n\n// @Route(\"/authcode/{AuthId}\")\n// @Route(\"/authcode\")\nexport class TreatmentAuthIdRequest implements IReturn<ResponseBase<TreatmentAuthResponse>>, ILocationId, IFilterServiceTypeManually, IGet\n{\n public skip: number|null;\n public take: number|null;\n public authId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<TreatmentAuthIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAuthIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TreatmentAuthResponse>(); }\n}\n(TreatmentAuthIdRequest as unknown)[immerable] = true;\n\n// @Route(\"/authcode/delete\")\n// @Route(\"/authcode/delete/{AuthId}\")\nexport class TreatmentAuthDeleteRequest implements IReturn<ResponseBase<boolean>>, ILocationId, IFilterServiceTypeManually\n{\n public authId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<TreatmentAuthDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAuthDeleteRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TreatmentAuthDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/authcode/save/\")\nexport class TreatmentAuthSave implements IReturn<ResponseBase<TreatmentAuthResponse>>, ICustomerId, IFilterServiceTypeManually\n{\n public id: number|null;\n public authCode: string|null;\n public expired: string|null;\n public maxTreatments: number|null;\n public maxValue: number|null;\n public expiryDate: string|null;\n public usedTreatments: number|null;\n public usedValue: number|null;\n public usedFor: string|null;\n public startDate: string|null;\n public groupId: number|null;\n public caseId: number|null;\n public customerId: number|null;\n public serviceTypeId: number|null;\n public contactId: number|null;\n\n public constructor(init?: Partial<TreatmentAuthSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAuthSave'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<TreatmentAuthResponse>(); }\n}\n(TreatmentAuthSave as unknown)[immerable] = true;\n\n// @Route(\"/customer/sar/status/{customerId}\")\nexport class SarStatusRequest implements IReturn<ResponseBase<string>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<SarStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SarStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(SarStatusRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/sar/delete\")\nexport class SarDeleteRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n public deleteFile: boolean|null;\n\n public constructor(init?: Partial<SarDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SarDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SarDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/sar/download/{customerId}\")\nexport class SarDownloadRequest implements IReturn<ResponseBase<Object>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<SarDownloadRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SarDownloadRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(SarDownloadRequest as unknown)[immerable] = true;\n\n// @Route(\"/customerservice/all\")\nexport class CustomerServiceRequest implements IReturn<ResponseBase<CustomerServiceResponse>>\n{\n\n public constructor(init?: Partial<CustomerServiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerServiceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomerServiceResponse>(); }\n}\n(CustomerServiceRequest as unknown)[immerable] = true;\n\n// @Route(\"/customerservice/save\")\nexport class CustomerServiceUpdate implements IReturn<ResponseBase<CustomerServiceResponse>>\n{\n public id: number|null;\n public customerSecurityLevel: number|null;\n public customerSecurityKeyWord: string|null;\n\n public constructor(init?: Partial<CustomerServiceUpdate>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerServiceUpdate'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomerServiceResponse>(); }\n}\n(CustomerServiceUpdate as unknown)[immerable] = true;\n\n// @Route(\"/patient/log\")\n// @Route(\"/patient/log/{LogId}\")\nexport class PatientLogRequest implements IReturn<ResponseBase<PatientLogResponse>>, ILocationId, IFilterServiceTypeManually\n{\n public skip: number|null;\n public take: number|null;\n public logId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<PatientLogRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientLogRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PatientLogResponse>(); }\n}\n(PatientLogRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/log/delete\")\n// @Route(\"/patient/log/delete/{LogId}\")\nexport class PatientLogDeleteRequest implements IReturn<ResponseBase<Patientlog>>, ILocationId, IFilterServiceTypeManually\n{\n public logId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<PatientLogDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientLogDeleteRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Patientlog>(); }\n}\n(PatientLogDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/infoLog/{CustomerId}\")\nexport class PatientInfoLogRequest implements IReturn<ResponseBase<PatientInfoLogResponse>>, ICustomerId, IDepartmentIds\n{\n public skip: number|null;\n public take: number|null;\n public customerId: number|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<PatientInfoLogRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientInfoLogRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PatientInfoLogResponse>(); }\n}\n(PatientInfoLogRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/infoLogsave/\")\nexport class PatientLogSave implements IReturn<ResponseBase<PatientLogResponse>>, ICustomerId, IFilterServiceTypeManually\n{\n public id: number|null;\n public customerId: number|null;\n public dateTime: string|null;\n public entry: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<PatientLogSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientLogSave'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<PatientLogResponse>(); }\n}\n(PatientLogSave as unknown)[immerable] = true;\n\n// @Route(\"/diary\")\nexport class DiaryRequest implements IReturn<DiaryDefaultDataForUserResponse>\n{\n\n public constructor(init?: Partial<DiaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DiaryDefaultDataForUserResponse(); }\n}\n(DiaryRequest as unknown)[immerable] = true;\n\nexport class DiaryListExportCSVRequest extends DiaryListBase implements IReturn<ResponseBase<string>>\n{\n\n public constructor(init?: Partial<DiaryListExportCSVRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryListExportCSVRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(DiaryListExportCSVRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/stats\")\nexport class DiaryAppointmentStatsRequest implements IReturn<DiaryStatsResponse>, ILocationId, IHasAutoRefresh\n{\n public startDate: string|null;\n public endDate: string|null;\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public roomIds: number[]|null;\n public locationId: number|null;\n public autoRefresh: boolean|null;\n\n public constructor(init?: Partial<DiaryAppointmentStatsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryAppointmentStatsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DiaryStatsResponse(); }\n}\n(DiaryAppointmentStatsRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/nonWorkingDays\")\nexport class DiaryHolidayRequest implements IReturn<NonWorkingDate[]>, ILocationId\n{\n public startDate: string|null;\n public endDate: string|null;\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<DiaryHolidayRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryHolidayRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<NonWorkingDate>(); }\n}\n(DiaryHolidayRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/nonWorkingDays/all\")\nexport class DiaryAllHolidaysRequest implements IReturn<NonWorkingDateResponse[]>, ILocationId\n{\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<DiaryAllHolidaysRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryAllHolidaysRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<NonWorkingDateResponse>(); }\n}\n(DiaryAllHolidaysRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/nonWorkingDays/save\")\nexport class DiaryAddHolidayRequest implements IReturn<NonWorkingDateResponse[]>, ILocationId\n{\n public date: string|null;\n public locationId: number|null;\n public endDate: string|null;\n public title: string|null;\n\n public constructor(init?: Partial<DiaryAddHolidayRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryAddHolidayRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<NonWorkingDateResponse>(); }\n}\n(DiaryAddHolidayRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/nonWorkingDays/remove\")\nexport class DiaryRemoveHolidayRequest implements IReturn<NonWorkingDateResponse[]>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<DiaryRemoveHolidayRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryRemoveHolidayRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<NonWorkingDateResponse>(); }\n}\n(DiaryRemoveHolidayRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/sessions\")\nexport class DiarySessionRequest implements IReturn<DiarySessionResponse[]>, ILocationId\n{\n public startDate: string|null;\n public endDate: string|null;\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public roomIds: number[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<DiarySessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiarySessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<DiarySessionResponse>(); }\n}\n(DiarySessionRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/schedule\")\nexport class ScheduleRequest implements IReturn<ResponseBase<ScheduleResponse>>, ILocationIds, IHasAutoRefresh\n{\n public date: string|null;\n public isWeek: boolean|null;\n public showWeekends: boolean|null;\n public withoutSessions: boolean|null;\n public location: number|null;\n public mode: ResourceMode|null;\n public locationIds: number[]|null;\n public resourceIds: number[]|null;\n public requestLocationIds: number[]|null;\n public autoRefresh: boolean|null;\n\n public constructor(init?: Partial<ScheduleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScheduleRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ScheduleResponse>(); }\n}\n(ScheduleRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/schedule\")\nexport class MonthlyScheduleRequest implements IReturn<ResponseBase<MonthlyScheduleResponse>>, ILocationIds, IHasAutoRefresh\n{\n public date: string|null;\n public location: number|null;\n public mode: ResourceMode|null;\n public locationIds: number[]|null;\n public resourceIds: number[]|null;\n public requestLocationIds: number[]|null;\n public autoRefresh: boolean|null;\n public showCancellations: boolean|null;\n\n public constructor(init?: Partial<MonthlyScheduleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MonthlyScheduleRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MonthlyScheduleResponse>(); }\n}\n(MonthlyScheduleRequest as unknown)[immerable] = true;\n\nexport class OccurrenceRequest implements IReturn<ResponseBase<T>>\n{\n public batchNo: number|null;\n public type: string|null;\n public typeId: number|null;\n\n public constructor(init?: Partial<OccurrenceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OccurrenceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OccurrenceRequest as unknown)[immerable] = true;\n\n// @Route(\"/session/move\", \"POST\")\nexport class SessionMoveRequest\n{\n public id: number|null;\n public isSpecial: boolean|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n\n public constructor(init?: Partial<SessionMoveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SessionMoveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(SessionMoveRequest as unknown)[immerable] = true;\n\n// @Route(\"/session/update\", \"POST\")\nexport class SessionUpdateRequest implements IReturn<ResponseBase<{ [index:string]: ScheduleSession[]; }>>\n{\n public id: number|null;\n public isSpecial: boolean|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public online: boolean|null;\n public usedFor: string|null;\n public colour: string|null;\n public roomId: number|null;\n public practitionerId: number|null;\n public applyToAllSubsequent: boolean|null;\n public locationId: number|null;\n public multiUsedFor: string[]|null;\n public isOnline: boolean|null;\n public skillRestrictions: string[]|null;\n\n public constructor(init?: Partial<SessionUpdateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SessionUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: ScheduleSession[]; }>(); }\n}\n(SessionUpdateRequest as unknown)[immerable] = true;\n\n// @Route(\"/session/delete\", \"POST\")\nexport class SessionDeleteRequest implements IReturn<ResponseBase<{ [index:string]: ScheduleSession[]; }>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public isSpecial: boolean|null;\n public all: boolean|null;\n public includePast: boolean|null;\n\n public constructor(init?: Partial<SessionDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SessionDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: ScheduleSession[]; }>(); }\n}\n(SessionDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/session/create\", \"POST\")\nexport class SessionCreateRequest implements IReturn<ResponseBase<{ [index:string]: ScheduleSession[]; }>>, ILocationId\n{\n public yesToWarnings: boolean|null;\n public excludeWarnings: boolean|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public duration: number|null;\n public online: boolean|null;\n public usedFor: string|null;\n public roomId: number|null;\n public colour: string|null;\n public recurrenceInterval: RecurrenceType|null;\n public customDuration: number|null;\n public customFreq: number|null;\n public customInterval: string|null;\n public excludeNonWorkingDays: boolean|null;\n public multiUsedFor: string[]|null;\n public skillRestrictions: string[]|null;\n\n public constructor(init?: Partial<SessionCreateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SessionCreateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: ScheduleSession[]; }>(); }\n}\n(SessionCreateRequest as unknown)[immerable] = true;\n\nexport class CalculateWorkingTimesRequest implements IReturn<CalculateWorkingTimesResponse>\n{\n public locationId: number|null;\n\n public constructor(init?: Partial<CalculateWorkingTimesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CalculateWorkingTimesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CalculateWorkingTimesResponse(); }\n}\n(CalculateWorkingTimesRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/{CustomerId}/account\")\nexport class PatientAccountRequest implements IReturn<Account>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<PatientAccountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientAccountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Account(); }\n}\n(PatientAccountRequest as unknown)[immerable] = true;\n\n// @Route(\"/account/{AccountId}/payments\")\nexport class AccountPaymentsRequest implements IReturn<ResponseBase<PaymentsResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public accountId: number|null;\n public invoiceId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<AccountPaymentsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountPaymentsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PaymentsResponse>(); }\n}\n(AccountPaymentsRequest as unknown)[immerable] = true;\n\n// @Route(\"/account/{AccountId}/billedItems\")\nexport class AccountBilledItemsRequest implements IReturn<ResponseBase<BillingItemWithNamesAuth>>, ILocationId\n{\n public take: number|null;\n public skip: number|null;\n public accountId: number|null;\n public invoiceId: number|null;\n public locationId: number|null;\n public auditId: string|null;\n\n public constructor(init?: Partial<AccountBilledItemsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountBilledItemsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BillingItemWithNamesAuth>(); }\n}\n(AccountBilledItemsRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/export/preview/charges\")\nexport class AccountsExportChargesPreviewRequest implements IReturn<ResponseBase<AccountsExportChargesPreviewResponse>>, ILocationId\n{\n public locationId: number|null;\n public date: DateRange|null;\n\n public constructor(init?: Partial<AccountsExportChargesPreviewRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountsExportChargesPreviewRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AccountsExportChargesPreviewResponse>(); }\n}\n(AccountsExportChargesPreviewRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/export/preview/payments\")\nexport class AccountsExportPaymentsPreviewRequest implements IReturn<ResponseBase<AccountsExportPaymentsPreviewResponse>>, ILocationId\n{\n public locationId: number|null;\n public date: DateRange|null;\n\n public constructor(init?: Partial<AccountsExportPaymentsPreviewRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountsExportPaymentsPreviewRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AccountsExportPaymentsPreviewResponse>(); }\n}\n(AccountsExportPaymentsPreviewRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/export/charges\")\nexport class AccountsExportChargesRequest implements IReturn<AccountExportResponse>, ILocationId\n{\n public locationId: number|null;\n public date: DateRange|null;\n\n public constructor(init?: Partial<AccountsExportChargesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountsExportChargesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AccountExportResponse(); }\n}\n(AccountsExportChargesRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/export/payments\")\nexport class AccountsExportPaymentsRequest implements IReturn<AccountExportResponse>, ILocationId\n{\n public locationId: number|null;\n public date: DateRange|null;\n\n public constructor(init?: Partial<AccountsExportPaymentsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountsExportPaymentsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AccountExportResponse(); }\n}\n(AccountsExportPaymentsRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/export/charges/{Id}/{LocationId}/{Mode}\")\nexport class AccountsChargesExportRequest implements IReturn<Object>, ILocationId\n{\n public id: number|null;\n public mode: string|null;\n public locationId: number|null;\n public exportDate: string|null;\n\n public constructor(init?: Partial<AccountsChargesExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountsChargesExportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Object(); }\n}\n(AccountsChargesExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/export/payments/{Id}/{LocationId}/{Mode}\")\nexport class AccountsPaymentsExportRequest implements IReturn<Object>, ILocationId\n{\n public id: number|null;\n public mode: string|null;\n public locationId: number|null;\n public exportDate: string|null;\n\n public constructor(init?: Partial<AccountsPaymentsExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountsPaymentsExportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Object(); }\n}\n(AccountsPaymentsExportRequest as unknown)[immerable] = true;\n\nexport class AccountExportHistoryRequest implements IReturn<ResponseBase<AccountExportHistoryResponse>>\n{\n public fromDate: string|null;\n public toDate: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<AccountExportHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountExportHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AccountExportHistoryResponse>(); }\n}\n(AccountExportHistoryRequest as unknown)[immerable] = true;\n\n// @Route(\"/billingItem/{Id}\", \"GET\")\nexport class BillingItemRequest implements IReturn<ResponseBase<BillingItem>>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<BillingItemRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BillingItem>(); }\n}\n(BillingItemRequest as unknown)[immerable] = true;\n\n// @Route(\"/billingItem\", \"POST\")\n// @Route(\"/billingItem/{Id}\", \"PUT\")\nexport class BillingItemSaveRequest implements IReturn<ResponseBase<BillingItem>>, ILocationId\n{\n public accountId: number|null;\n public customerId: number|null;\n public practitionerId: number|null;\n public appointmentId: number|null;\n public locationId: number|null;\n public invoiceId: number|null;\n public accountName: string|null;\n public stockId: number|null;\n public date: string|null;\n public description: string|null;\n public total: number|null;\n public isPaid: boolean|null;\n public isMigrated: boolean|null;\n public totalExVat: number|null;\n public quantity: number|null;\n public price: number|null;\n public vatRate: number|null;\n public totalVat: number|null;\n public id: number|null;\n public category: string|null;\n public ledgerCode: string|null;\n public accountsExportId: number|null;\n\n public constructor(init?: Partial<BillingItemSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BillingItem>(); }\n}\n(BillingItemSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/charges/count\", \"GET\")\nexport class ChargeCountRequest implements IReturn<number>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<ChargeCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChargeCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(ChargeCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/charges/search\")\nexport class ChargesSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<GroupBillingItemsResponse>>, IChargeSearchRequest\n{\n public invoicePeriod: InvoicePeriod|null;\n public mode: ChargeSearchMode|null;\n public groupIds: number[]|null;\n public invoicedStatus: InvoicedStatusToInclude|null;\n public date: DateRange|null;\n public addressTo: string|null;\n public description: string|null;\n public amount: CurrencyRange|null;\n public locked: boolean|null;\n public displayDiscountCodes: boolean|null;\n\n public constructor(init?: Partial<ChargesSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ChargesSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupBillingItemsResponse>(); }\n}\n(ChargesSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/invoices/prepare-all\", \"POST\")\nexport class InvoiceAllGroupingRequest implements IReturn<ResponseBase<InvoiceGroupingResponse>>, ILocationId, ILocationIds\n{\n public searchData: ChargesSearchRequest|null;\n public locationId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<InvoiceAllGroupingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceAllGroupingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoiceGroupingResponse>(); }\n}\n(InvoiceAllGroupingRequest as unknown)[immerable] = true;\n\n// @Route(\"/charges/search/ids\")\nexport class ChargeIdsSearchRequest implements IReturn<number[]>, IChargeSearchRequest\n{\n public sort: QueryField[]|null;\n public invoicePeriod: InvoicePeriod|null;\n public mode: ChargeSearchMode|null;\n public invoicedStatus: InvoicedStatusToInclude|null;\n public groupIds: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public date: DateRange|null;\n public addressTo: string|null;\n public description: string|null;\n public amount: CurrencyRange|null;\n public term: string|null;\n public locked: boolean|null;\n public displayDiscountCodes: boolean|null;\n\n public constructor(init?: Partial<ChargeIdsSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChargeIdsSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<number>(); }\n}\n(ChargeIdsSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/invoices/prepare\", \"POST\")\nexport class InvoiceGroupingRequest implements IReturn<ResponseBase<InvoiceGroupingResponse>>, ILocationId\n{\n public chargeIds: number[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<InvoiceGroupingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceGroupingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoiceGroupingResponse>(); }\n}\n(InvoiceGroupingRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/invoices/generate\", \"POST\")\nexport class InvoiceWizardRequest implements IReturn<ResponseBase<InvoiceWizardResponse>>, ILocationId\n{\n public chargeGroups: ChargeGroup[]|null;\n public date: string|null;\n public batch: InvoiceBatch|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<InvoiceWizardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceWizardRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoiceWizardResponse>(); }\n}\n(InvoiceWizardRequest as unknown)[immerable] = true;\n\n// @Route(\"/debt/search\")\nexport class DebtAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<DebtsResponse>>\n{\n public reference: string|null;\n public status: string|null;\n public account: string|null;\n public accountName: string|null;\n public debtStatus: string[]|null;\n public invoiceStatus: string|null;\n\n public constructor(init?: Partial<DebtAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DebtAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DebtsResponse>(); }\n}\n(DebtAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/expenditure\")\n// @Route(\"/expenditure/{Id}\")\nexport class ExpenditureRequest implements IReturn<ResponseBase<ExpenditureResponse>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ExpenditureRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExpenditureResponse>(); }\n}\n(ExpenditureRequest as unknown)[immerable] = true;\n\n// @Route(\"/expenditures/count\")\nexport class ExpenditureCountRequest implements IReturn<number>\n{\n\n public constructor(init?: Partial<ExpenditureCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(ExpenditureCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/expenditure/search\")\nexport class ExpenditureAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<ExpenditureResponse>>\n{\n public category: string|null;\n public date: DateRange|null;\n\n public constructor(init?: Partial<ExpenditureAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ExpenditureResponse>(); }\n}\n(ExpenditureAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/expenditure/save\")\nexport class ExpenditureSaveRequest implements IReturn<ResponseBase<ExpenditureResponse>>, ILocationId\n{\n public id: number|null;\n public date: string|null;\n public description: string|null;\n public reference: string|null;\n public amountExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public total: number|null;\n public category: string|null;\n public supplierId: number|null;\n public name: string|null;\n public locationId: number|null;\n public otherPaymentMethod: string|null;\n public chequeNumber: string|null;\n public cardType: string|null;\n public recur: RecurrenceType|null;\n public recurFor: number|null;\n\n public constructor(init?: Partial<ExpenditureSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ExpenditureResponse>(); }\n}\n(ExpenditureSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/expenditure/delete/{Id}\")\n// @Route(\"/expenditure/delete\")\nexport class ExpenditureDeleteRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ExpenditureDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ExpenditureDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{id}\", \"GET\")\nexport class InvoicesRequest implements IReturn<ResponseBase<InvoicesResponse>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoicesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoicesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<InvoicesResponse>(); }\n}\n(InvoicesRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice\", \"POST\")\n// @Route(\"/invoice/{id}\", \"PUT\")\nexport class InvoiceSaveRequest implements IReturn<ResponseBase<InvoicesResponse>>, ISecurityId\n{\n public id: number|null;\n public status: string|null;\n public reference: string|null;\n public date: string|null;\n public dueDate: string|null;\n public fullyPaidDate: string|null;\n public grandTotal: number|null;\n public amountPaid: number|null;\n public customerId: number|null;\n public locationId: number|null;\n public accountId: number|null;\n public addressTo: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public reminder: string|null;\n public secondReminder: string|null;\n public totalExcludingVat: number|null;\n public vatAmount: number|null;\n public batchId: number|null;\n public notes: string|null;\n public accountType: string|null;\n public accountTypeId: number|null;\n public securityId: number|null;\n public purchaseOrderNumber: string|null;\n public meta: { [index:string]: Object; }|null;\n public medicalContactId: number|null;\n public referralDate: string|null;\n\n public constructor(init?: Partial<InvoiceSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoicesResponse>(); }\n}\n(InvoiceSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{id}/acknowledge\", \"POST\")\nexport class ProntoInvoiceAcknowledgeRequest implements IReturn<ResponseBase<T>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ProntoInvoiceAcknowledgeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoInvoiceAcknowledgeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ProntoInvoiceAcknowledgeRequest as unknown)[immerable] = true;\n\nexport class ProntoInvoiceResubmitRequest implements IReturn<ResponseBase<T>>, ISecurityId\n{\n public id: number|null;\n public templateId: string|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ProntoInvoiceResubmitRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoInvoiceResubmitRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ProntoInvoiceResubmitRequest as unknown)[immerable] = true;\n\nexport class ProntoQueriedInvoiceEditRequest implements IReturn<ResponseBase<T>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ProntoQueriedInvoiceEditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoQueriedInvoiceEditRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ProntoQueriedInvoiceEditRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoices/count\")\nexport class InvoiceCountRequest implements IReturn<number>\n{\n\n public constructor(init?: Partial<InvoiceCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(InvoiceCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/delete/{Id}\", \"DELETE\")\nexport class InvoiceDeleteRequest implements IReturn<boolean>, ILocationId, ISecurityId\n{\n public id: number|null;\n public locationId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoiceDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return false; }\n}\n(InvoiceDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{id}/change\", \"POST\")\nexport class InvoiceChangeRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public type: string|null;\n public changeToId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoiceChangeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceChangeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(InvoiceChangeRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoices/payments/{id}\")\nexport class InvoicePaymentRequest implements IReturn<ResponseBase<InvoicePaymentsResponse>>, ILocationId\n{\n public id: number|null;\n public amount: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<InvoicePaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoicePaymentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<InvoicePaymentsResponse>(); }\n}\n(InvoicePaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/usePayment\", \"POST\")\nexport class InvoiceUsePaymentRequest implements IReturn<ResponseBase<InvoicePaymentsResponse>>, IInvoiceId, ILocationId\n{\n public invoiceId: number|null;\n public paymentId: number|null;\n public amount: number|null;\n public locationId: number|null;\n public emailReceipt: boolean|null;\n public receiptTemplate: string|null;\n public customerId: number|null;\n public forceApply: boolean|null;\n public isPaymentCreatedFromInvoice: boolean|null;\n\n public constructor(init?: Partial<InvoiceUsePaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceUsePaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoicePaymentsResponse>(); }\n}\n(InvoiceUsePaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/useCharge\")\nexport class InvoiceUseBillingItemRequest implements IReturn<ResponseBase<boolean>>, IInvoiceId, ILocationId\n{\n public id: number|null;\n public invoiceId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<InvoiceUseBillingItemRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceUseBillingItemRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(InvoiceUseBillingItemRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/removeReconcilitation/{Id}\")\nexport class InvoiceRemoveReconciliationRequest implements IReturn<ResponseBase<boolean>>, IInvoiceId, ILocationId\n{\n public id: number|null;\n public invoiceId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<InvoiceRemoveReconciliationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceRemoveReconciliationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(InvoiceRemoveReconciliationRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/removeCharge/{Id}\")\nexport class InvoiceRemoveChargeRequest implements IReturn<ResponseBase<boolean>>, IInvoiceId, ISecurityId\n{\n public id: number|null;\n public invoiceId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoiceRemoveChargeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceRemoveChargeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(InvoiceRemoveChargeRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/deletePayment/{Id}\")\nexport class InvoiceDeletePaymentRequest implements IReturn<ResponseBase<boolean>>, IInvoiceId, ISecurityId\n{\n public id: number|null;\n public invoiceId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoiceDeletePaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceDeletePaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(InvoiceDeletePaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/removeAllReconciliations/{InvoiceId}\")\nexport class InvoiceRemoveAllReconciliationsRequest implements IReturn<ResponseBase<boolean>>, IInvoiceId, ISecurityId\n{\n public invoiceId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoiceRemoveAllReconciliationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceRemoveAllReconciliationsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(InvoiceRemoveAllReconciliationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/createCharges\")\nexport class CreateChargesRequest implements IReturn<ResponseBase<TransactionResponse>>, IInvoiceId, ILocationId\n{\n public charges: Charge[]|null;\n public invoiceId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CreateChargesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateChargesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TransactionResponse>(); }\n}\n(CreateChargesRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/createCharge\")\nexport class CreateChargeRequest implements IReturn<ResponseBase<TransactionResponse>>, IInvoiceId, ILocationId\n{\n public charge: Charge|null;\n public invoiceId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CreateChargeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateChargeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TransactionResponse>(); }\n}\n(CreateChargeRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/search\")\nexport class InvoicesAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<InvoicesResponse>>\n{\n public reference: string|null;\n public addressTo: string|null;\n public date: DateRange|null;\n public dueDate: DateRange|null;\n public amount: CurrencyRange|null;\n public locked: boolean|null;\n public status: string|null;\n public batchId: number|null;\n public accountId: number|null;\n public accountType: string|null;\n public registrationNumber: string|null;\n\n public constructor(init?: Partial<InvoicesAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoicesAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoicesResponse>(); }\n}\n(InvoicesAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/batch\")\nexport class InvoiceBatchRequest implements IReturn<ResponseBase<InvoiceBatchResponse>>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<InvoiceBatchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceBatchRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<InvoiceBatchResponse>(); }\n}\n(InvoiceBatchRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/account\")\n// @Route(\"/groups/account/{GroupId}\")\nexport class GroupsAccountSearchRequest implements IReturn<ResponseBase<GroupsAccountSearchResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public groupId: number|null;\n public customerId: number|null;\n public date: DateRange|null;\n public sort: QueryField[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupsAccountSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupsAccountSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupsAccountSearchResponse>(); }\n}\n(GroupsAccountSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/billing\")\n// @Route(\"/groups/billing/{GroupId}\")\nexport class GroupsBillingItemSearchRequest implements IReturn<ResponseBase<GroupBillingItemsResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public groupId: number|null;\n public sort: QueryField[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupsBillingItemSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupsBillingItemSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupBillingItemsResponse>(); }\n}\n(GroupsBillingItemSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/deleteBillingItem/{Id}\")\n// @Route(\"/billingItem/delete/{Id}\")\nexport class BillingItemDeleteRequest implements IReturn<ResponseBase<boolean>>, ILocationId, ISecurityId\n{\n public id: number|null;\n public locationId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<BillingItemDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(BillingItemDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/{InvoiceId}/transactions\")\nexport class TransactionRequest implements IReturn<ResponseBase<TransactionResponse>>, IInvoiceId, ISecurityId\n{\n public invoiceId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<TransactionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TransactionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TransactionResponse>(); }\n}\n(TransactionRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/medipass/{InvoiceId}\")\nexport class InvoiceMedipassRequest implements IInvoiceId, ISecurityId\n{\n public invoiceId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<InvoiceMedipassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceMedipassRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(InvoiceMedipassRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/transfer\")\nexport class TransferRequest implements IReturn<TransferResponse>, IInvoiceId, ISecurityId\n{\n public invoice: Invoice|null;\n public item: Charge|null;\n public newInvoice: boolean|null;\n public useCredit: boolean|null;\n public invoiceId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<TransferRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TransferRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new TransferResponse(); }\n}\n(TransferRequest as unknown)[immerable] = true;\n\nexport class ClickInvoiceUseChargesRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public chargeIds: number[]|null;\n public invoiceId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ClickInvoiceUseChargesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickInvoiceUseChargesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClickInvoiceUseChargesRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/{Id}\", \"GET\")\nexport class GetPaymentRequest implements IReturn<ResponseBase<PaymentDetailsResponse>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<GetPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPaymentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PaymentDetailsResponse>(); }\n}\n(GetPaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/payments/count\")\nexport class PaymentCountRequest implements IReturn<number>\n{\n\n public constructor(init?: Partial<PaymentCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(PaymentCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment\", \"POST\")\nexport class CreatePaymentRequest extends Income implements IReturn<number>\n{\n public emailReceipt: boolean|null;\n public receiptTemplate: string|null;\n public isPaymentCreatedFromInvoice: boolean|null;\n\n public constructor(init?: Partial<CreatePaymentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CreatePaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return 0; }\n}\n(CreatePaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/{Id}\", \"PUT\")\nexport class SavePaymentRequest extends Income implements IReturn<ResponseBase<PaymentResponse>>\n{\n\n public constructor(init?: Partial<SavePaymentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SavePaymentRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<PaymentResponse>(); }\n}\n(SavePaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/{Id}\", \"DELETE\")\nexport class DeletePaymentRequest implements IReturn<boolean>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<DeletePaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeletePaymentRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return false; }\n}\n(DeletePaymentRequest as unknown)[immerable] = true;\n\nexport class VoidPaymentRequest implements IReturn<boolean>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<VoidPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'VoidPaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(VoidPaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/{Id}/refund\", \"POST\")\nexport class PaymentRefundRequest extends Income implements IReturn<ResponseBase<PaymentResponse>>\n{\n public paymentId: number|null;\n public unreconcile: boolean|null;\n\n public constructor(init?: Partial<PaymentRefundRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentRefundRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PaymentResponse>(); }\n}\n(PaymentRefundRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/{Id}/reconcile\", \"POST\")\nexport class PaymentReconciliationRequest implements IReturn<ResponseBase<ReconciliationResponse>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public reconciliations: ReconciliationResponse[]|null;\n\n public constructor(init?: Partial<PaymentReconciliationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentReconciliationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReconciliationResponse>(); }\n}\n(PaymentReconciliationRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/search\")\nexport class PaymentAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<PaymentResponse>>\n{\n public reference: string|null;\n public paymentMethod: string|null;\n public lodgementReference: string|null;\n public status: string|null;\n public refunds: boolean|null;\n public amount: CurrencyRange|null;\n public date: DateRange|null;\n public receivedAtLocationIds: number[]|null;\n public locked: boolean|null;\n public accountId: number|null;\n\n public constructor(init?: Partial<PaymentAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PaymentResponse>(); }\n}\n(PaymentAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/cancellationreason\")\nexport class CancellationReasonRequest implements IReturn<ResponseBase<CancellationReasonResponse>>, ISecurityId\n{\n public appointmentId: number|null;\n public securityId: number|null;\n public reason: string|null;\n public deleteCase: boolean|null;\n public updateAuths: boolean|null;\n\n public constructor(init?: Partial<CancellationReasonRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancellationReasonRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CancellationReasonResponse>(); }\n}\n(CancellationReasonRequest as unknown)[immerable] = true;\n\n// @Route(\"/quickbill/{Id}/{Mode}\")\n// @Route(\"/quickbill/{Id}/{Mode}/{Status}\")\n// @Route(\"/quickbill/{Id}/{Mode}/Pronto/{BookingAuditId}\")\nexport class QuickBillRequest implements IReturn<ResponseEnhancerBase<QuickBillResponse>>\n{\n public id: number|null;\n public mode: QuickBillMode|null;\n public status: number|null;\n public billToPatient: boolean|null;\n public bookingAuditId: string|null;\n\n public constructor(init?: Partial<QuickBillRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickBillRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseEnhancerBase<QuickBillResponse>(); }\n}\n(QuickBillRequest as unknown)[immerable] = true;\n\n// @Route(\"/quickbill/medipass\")\nexport class QuickBillMedipassRequest implements IReturn<ResponseBase<QuickbillMedipassResponse>>, ILocationId, ICustomerId\n{\n public customerId: number|null;\n public locationId: number|null;\n public appointmentId: number|null;\n public groupInvoiceId: number|null;\n public amount: number|null;\n\n public constructor(init?: Partial<QuickBillMedipassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickBillMedipassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<QuickbillMedipassResponse>(); }\n}\n(QuickBillMedipassRequest as unknown)[immerable] = true;\n\n// @Route(\"/quickbill/prepaid\")\nexport class QuickBillPrePaidRequest implements IReturn<ResponseBase<AppointmentPrePaidResponse>>, ILocationIds, ICustomerId\n{\n public id: number|null;\n public securityId: number|null;\n public appointmentStatus: number|null;\n public appointmentId: number|null;\n public customerId: number|null;\n public deleteCase: boolean|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<QuickBillPrePaidRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickBillPrePaidRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AppointmentPrePaidResponse>(); }\n}\n(QuickBillPrePaidRequest as unknown)[immerable] = true;\n\n// @Route(\"/quickpay\")\nexport class QuickPayRequest implements IReturn<ResponseBase<QuickBillCompleteResponse>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public payments: QuickPayment[]|null;\n public invoices: Invoice[]|null;\n public billingItems: BillingItem[]|null;\n public appointmentStatus: number|null;\n public appointmentId: number|null;\n public deleteCase: boolean|null;\n public reminderSent: boolean|null;\n public cardToken: string|null;\n public isMyClinicIntegration: boolean|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<QuickPayRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickPayRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<QuickBillCompleteResponse>(); }\n}\n(QuickPayRequest as unknown)[immerable] = true;\n\n// @Route(\"/files/\", \"DELETE\")\n// @Route(\"/delete\", \"POST\")\n// @DataContract\nexport class DeleteRequest implements IReturn<DeleteResponse>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<DeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new DeleteResponse(); }\n}\n(DeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/communications/copy\")\n// @Route(\"/copy\")\n// @DataContract\nexport class CopyRequest implements IReturn<CopyResponse>, IHasPath, IHasNewPath, IPost\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public newName: string|null;\n\n // @DataMember(Order=3)\n public moveFilesIfExists: boolean|null;\n\n // @DataMember(Order=4)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<CopyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CopyRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CopyResponse(); }\n}\n(CopyRequest as unknown)[immerable] = true;\n\n// @Route(\"/createFolder\")\n// @DataContract\nexport class CreateFolderRequest implements IReturn<CreateFolderResponse>, IHasPath, IHasNewPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public newName: string|null;\n\n public constructor(init?: Partial<CreateFolderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateFolderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CreateFolderResponse(); }\n}\n(CreateFolderRequest as unknown)[immerable] = true;\n\n// @Route(\"/communications/rename\")\n// @Route(\"/rename\")\n// @DataContract\nexport class RenameRequest implements IReturn<RenameResponse>, IHasNewPath, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public newName: string|null;\n\n // @DataMember(Order=3)\n public overwrite: boolean|null;\n\n // @DataMember(Order=4)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<RenameRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RenameRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new RenameResponse(); }\n}\n(RenameRequest as unknown)[immerable] = true;\n\n// @Route(\"/move\")\n// @DataContract\nexport class MoveRequest implements IReturn<MoveResponse>, IHasPath, IHasNewPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public newName: string|null;\n\n public constructor(init?: Partial<MoveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MoveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new MoveResponse(); }\n}\n(MoveRequest as unknown)[immerable] = true;\n\n// @Route(\"/folder/move\")\n// @DataContract\nexport class MoveFolderRequest implements IReturn<MoveResponse>, IHasPath, IHasNewPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public newName: string|null;\n\n // @DataMember(Order=3)\n public isFolder: boolean|null;\n\n public constructor(init?: Partial<MoveFolderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MoveFolderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new MoveResponse(); }\n}\n(MoveFolderRequest as unknown)[immerable] = true;\n\n// @Route(\"/file\", \"POST\")\n// @DataContract\nexport class UploadFile implements IReturn<UploadResult>, IHasPath, ISecurityType, ISecurityId\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public safeRoot: string|null;\n\n // @DataMember(Order=3)\n public httpRequest: IHttpRequest|null;\n\n // @DataMember(Order=4)\n public id: number|null;\n\n // @DataMember(Order=5)\n public mode: string|null;\n\n public constructor(init?: Partial<UploadFile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UploadFile'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new UploadResult(); }\n}\n(UploadFile as unknown)[immerable] = true;\n\n// @Route(\"/tempfile\", \"POST\")\n// @DataContract\nexport class UploadTempFile implements IReturn<UploadTempResult>\n{\n // @DataMember(Order=1)\n public id: string|null;\n\n public constructor(init?: Partial<UploadTempFile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UploadTempFile'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new UploadTempResult(); }\n}\n(UploadTempFile as unknown)[immerable] = true;\n\nexport class PublishTempFolder implements IReturn<Object>\n{\n // @DataMember(Order=1)\n public folderId: string|null;\n\n // @DataMember(Order=2)\n public subWorkflowId: number|null;\n\n // @DataMember(Order=3)\n public workflowId: number|null;\n\n // @DataMember(Order=4)\n public publishToReferralPortal: boolean|null;\n\n public constructor(init?: Partial<PublishTempFolder>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PublishTempFolder'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(PublishTempFolder as unknown)[immerable] = true;\n\n// @Route(\"/attachments/summary\", \"POST\")\nexport class AttachmentSummaryRequest implements IReturn<AttachmentSummaryResponse>\n{\n public mode: string|null;\n public onlyReturnTemplates: boolean|null;\n public id: number|null;\n\n public constructor(init?: Partial<AttachmentSummaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AttachmentSummaryRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AttachmentSummaryResponse(); }\n}\n(AttachmentSummaryRequest as unknown)[immerable] = true;\n\n// @Route(\"/attachments/upload\", \"POST\")\n// @DataContract\nexport class AttachmentUploadRequest implements IReturn<UploadResult>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public safeRoot: string|null;\n\n // @DataMember(Order=3)\n public httpRequest: IHttpRequest|null;\n\n // @DataMember(Order=4)\n public id: number|null;\n\n // @DataMember(Order=5)\n public mode: string|null;\n\n // @DataMember(Order=6)\n public targetFolder: string|null;\n\n // @DataMember(Order=7)\n public maxWidth: number|null;\n\n // @DataMember(Order=8)\n public maxHeight: number|null;\n\n public constructor(init?: Partial<AttachmentUploadRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AttachmentUploadRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new UploadResult(); }\n}\n(AttachmentUploadRequest as unknown)[immerable] = true;\n\n// @Route(\"/files/bypath/{Path*}\", \"GET, POST\")\nexport class FileByPathRequest implements IReturn<HttpResult>, IHasPath\n{\n public path: string|null;\n public isGlobal: boolean|null;\n public safeRoot: string|null;\n\n public constructor(init?: Partial<FileByPathRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FileByPathRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(FileByPathRequest as unknown)[immerable] = true;\n\n// @Route(\"/file/recent\", \"GET\")\n// @DataContract\nexport class RecentFileRequest implements IReturn<RecentFileResponse>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public safeRoot: string|null;\n\n public constructor(init?: Partial<RecentFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RecentFileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new RecentFileResponse(); }\n}\n(RecentFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/files/listing\", \"POST\")\nexport class UrlLessFileListing implements IReturn<FilesListingResponse>, IHasPath\n{\n public safeRoot: string|null;\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public recursive: boolean|null;\n\n public constructor(init?: Partial<UrlLessFileListing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UrlLessFileListing'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new FilesListingResponse(); }\n}\n(UrlLessFileListing as unknown)[immerable] = true;\n\n// @Route(\"/file/get\", \"POST\")\n// @DataContract\nexport class UrlLessFileRequest implements IReturn<FileResponse>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public responseStatus: ResponseStatus|null;\n\n // @DataMember(Order=3)\n public textMode: boolean|null;\n\n public constructor(init?: Partial<UrlLessFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UrlLessFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new FileResponse(); }\n}\n(UrlLessFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/communications/letter\")\n// @Route(\"/files/{Path*}\")\n// @Route(\"/files\")\n// @DataContract\nexport class FileListing implements IReturn<FilesListingResponse>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public recursive: boolean|null;\n\n // @DataMember(Order=3)\n public createDirectoryIfNotExists: boolean|null;\n\n // @DataMember(Order=4)\n public foldersToIgnore: string|null;\n\n public constructor(init?: Partial<FileListing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FileListing'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FilesListingResponse(); }\n}\n(FileListing as unknown)[immerable] = true;\n\n// @Route(\"/tempfilelisting/{Id}\", \"POST\")\nexport class GetTempFileListing implements IReturn<FilesListingResponse>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetTempFileListing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTempFileListing'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new FilesListingResponse(); }\n}\n(GetTempFileListing as unknown)[immerable] = true;\n\n// @Route(\"/removetempfile/{Id}/{FileName}\", \"POST\")\nexport class RemoveTempFile\n{\n public id: string|null;\n public fileName: string|null;\n\n public constructor(init?: Partial<RemoveTempFile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveTempFile'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(RemoveTempFile as unknown)[immerable] = true;\n\n// @Route(\"/file\", \"GET\")\n// @Route(\"/file/{Path*}\", \"GET\")\n// @DataContract\nexport class FileRequest implements IReturn<FileResponse>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public responseStatus: ResponseStatus|null;\n\n // @DataMember(Order=3)\n public textMode: boolean|null;\n\n // @DataMember(Order=4)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<FileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FileResponse(); }\n}\n(FileRequest as unknown)[immerable] = true;\n\n// @Route(\"/download/{Path*}\", \"GET\")\n// @DataContract\nexport class DownloadFileRequest implements IHasPath, IGet\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<DownloadFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadFileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(DownloadFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/file/view/{Path*}\", \"HEAD, GET\")\n// @DataContract\nexport class ViewFileRequest implements IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<ViewFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ViewFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ViewFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/download/batch\")\n// @DataContract\nexport class DownloadBatchFileRequest implements IHasPaths\n{\n // @DataMember(Order=1)\n public paths: DownloadBatchRequestObject[]|null;\n\n // @DataMember(Order=2)\n public isGlobal: boolean|null;\n\n public constructor(init?: Partial<DownloadBatchFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadBatchFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(DownloadBatchFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/email/download/{Path*}\", \"GET\")\n// @DataContract\nexport class DownloadEmailRequest implements IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n public constructor(init?: Partial<DownloadEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadEmailRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(DownloadEmailRequest as unknown)[immerable] = true;\n\n// @Route(\"/email/attachment/{Path*}\", \"GET\")\nexport class DownloadAttachmentRequest implements IHasPath\n{\n public path: string|null;\n public safeRoot: string|null;\n public attachmentName: string|null;\n\n public constructor(init?: Partial<DownloadAttachmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadAttachmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(DownloadAttachmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/communications/documents/save\", \"POST\")\n// @DataContract\nexport class SaveDocument implements IReturn<boolean>, IHasPath, ISecurityId, ISecurityType\n{\n // @DataMember(Order=1)\n public text: string|null;\n\n // @DataMember(Order=2)\n public path: string|null;\n\n // @DataMember(Order=3)\n public action: string|null;\n\n // @DataMember(Order=4)\n public letterId: number|null;\n\n // @DataMember(Order=5)\n public title: string|null;\n\n // @DataMember(Order=6)\n public type: DocumentType|null;\n\n // @DataMember(Order=7)\n public rename: boolean|null;\n\n // @DataMember(Order=8)\n public oldPath: string|null;\n\n // @DataMember(Order=9)\n public objectId: number|null;\n\n // @DataMember(Order=10)\n public objectType: string|null;\n\n public constructor(init?: Partial<SaveDocument>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveDocument'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(SaveDocument as unknown)[immerable] = true;\n\n// @Route(\"/managementreportfiles/{Id}\")\nexport class ManagementReportDocumentFileListing implements IReturn<FolderTree>, ISecurityId, IGet\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ManagementReportDocumentFileListing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ManagementReportDocumentFileListing'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FolderTree(); }\n}\n(ManagementReportDocumentFileListing as unknown)[immerable] = true;\n\n// @Route(\"/{Mode}/files/{Id}\")\n// @Route(\"/{Mode}/files/{Id}/{ExcludedFileTypes}\")\n// @Route(\"/{Mode}/files/{Id}/{ExcludedFileTypes}/{FoldersToIgnore}\")\n// @Route(\"/{Mode}/files/{Id}/{ExcludedFileTypes}/{FoldersToIgnore}/{Recursive}\")\n// @Route(\"/{Mode}/files/{Id}/{ExcludedFileTypes}/{FoldersToIgnore}/{Recursive}/{IgnoreFiles}\")\nexport class DocumentFileListing implements IReturn<FolderTree>, ISecurityId, ISecurityType, IGet\n{\n public id: number|null;\n public mode: string|null;\n public excludedFileTypes: string|null;\n public foldersToIgnore: string|null;\n public recursive: boolean|null;\n public ignoreFiles: boolean|null;\n public path: string|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public securityId: number|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<DocumentFileListing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DocumentFileListing'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FolderTree(); }\n}\n(DocumentFileListing as unknown)[immerable] = true;\n\n// @Route(\"/templates\")\nexport class TemplatesRequest implements IReturn<FolderTree>\n{\n public folder: string|null;\n public filter: string[]|null;\n public sortedByDate: boolean|null;\n\n public constructor(init?: Partial<TemplatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TemplatesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FolderTree(); }\n}\n(TemplatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/charts\")\nexport class ChartsRequest implements IReturn<FolderTree>\n{\n public folder: string|null;\n public filter: string[]|null;\n\n public constructor(init?: Partial<ChartsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChartsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FolderTree(); }\n}\n(ChartsRequest as unknown)[immerable] = true;\n\n// @Route(\"/download/extraction/{Id}\", \"GET\")\nexport class DownloadExtractionRequest\n{\n public id: number|null;\n\n public constructor(init?: Partial<DownloadExtractionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadExtractionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(DownloadExtractionRequest as unknown)[immerable] = true;\n\nexport class UpdateDocumentListingRequest\n{\n public fileName: string|null;\n public filePath: string|null;\n public description: string|null;\n\n public constructor(init?: Partial<UpdateDocumentListingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateDocumentListingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateDocumentListingRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/locations/updateProviderNumber\")\nexport class GroupLocationProviderNumberSaveRequest implements ISecurityId\n{\n public providerNo: string|null;\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<GroupLocationProviderNumberSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupLocationProviderNumberSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(GroupLocationProviderNumberSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups\")\n// @Route(\"/groups/{Id}\")\nexport class GroupRequest implements IReturn<ResponseBase<GroupResponse>>, ISecurityId\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<GroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(GroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/count\")\nexport class GroupCountRequest implements IReturn<ResponseBase<number>>\n{\n\n public constructor(init?: Partial<GroupCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(GroupCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/further/{Id}\")\nexport class GroupFurtherDetailsRequest implements IReturn<GroupFurtherDetailsResponse>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupFurtherDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupFurtherDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new GroupFurtherDetailsResponse(); }\n}\n(GroupFurtherDetailsRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/recent/{Id}\")\nexport class GroupRecentRequest implements IReturn<GroupRecentResponse>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupRecentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupRecentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new GroupRecentResponse(); }\n}\n(GroupRecentRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/recentDocument/{GroupId}\")\nexport class RecentGroupDocumentRequest implements IReturn<Object>, IHasPath, ILocationId\n{\n public groupId: number|null;\n public path: string|null;\n public safeRoot: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<RecentGroupDocumentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RecentGroupDocumentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Object(); }\n}\n(RecentGroupDocumentRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/search\")\nexport class GroupsAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<GroupResponse>>\n{\n public name: string|null;\n public status: boolean|null;\n public classification: string|null;\n\n public constructor(init?: Partial<GroupsAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupsAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(GroupsAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/export/csv\")\nexport class GroupsAdvancedSearchExportCSVRequest implements IReturn<string>, ILocationIds\n{\n public customHeaders: GroupsCSVHeaderOverrides|null;\n public query: GroupsAdvancedSearchRequest|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<GroupsAdvancedSearchExportCSVRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupsAdvancedSearchExportCSVRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return ''; }\n}\n(GroupsAdvancedSearchExportCSVRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/contacts/search\")\n// @Route(\"/group/contacts/search/{GroupId}\")\nexport class GroupContactsSearchRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ILocationId\n{\n public groupId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupContactsSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupContactsSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(GroupContactsSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/contactsearch\", \"POST\")\n// @Route(\"/group/contactsearch/{GroupId}\", \"POST\")\nexport class GroupContactQuickSearchRequest implements IReturn<ResponseBase<MedicalContactResponse>>, ISecurityId\n{\n public skip: number|null;\n public take: number|null;\n public groupId: number|null;\n public securityId: number|null;\n public searchString: string|null;\n\n public constructor(init?: Partial<GroupContactQuickSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupContactQuickSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(GroupContactQuickSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/linked/{GroupId}\", \"POST\")\n// @Route(\"/group/linked\", \"POST\")\nexport class LinkedPatientRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ISecurityId, IFilterServiceTypeManually\n{\n public groupId: number|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<LinkedPatientRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkedPatientRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(LinkedPatientRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/save\", \"POST\")\nexport class SaveGroupRequest implements IReturn<ResponseBase<GroupResponse>>\n{\n public id: number|null;\n public name: string|null;\n public contact: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public address: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public fax: string|null;\n public web: string|null;\n public email: string|null;\n public locationName: string|null;\n public locationId: number|null;\n public balanceOwed: number|null;\n public showReferrals: boolean|null;\n public groupInvoices: string|null;\n public addressTo: string|null;\n public invoicePeriod: string|null;\n public contractNumber: string|null;\n public accountId: number|null;\n public profileId: number|null;\n public invoiceFrequency: number|null;\n public invoiceWPID: number|null;\n public showVAT: boolean|null;\n public authorisationCode: string|null;\n public defaultMaxTreatments: number|null;\n public classification: string|null;\n public cancellationHours: number|null;\n public paysForDNA: boolean|null;\n public paysForCancel: boolean|null;\n public notificationEmail: string|null;\n public abbreviationPrefix: string|null;\n public online: boolean|null;\n public firstId: number|null;\n public followUpId: number|null;\n public cancelId: number|null;\n public dnaId: number|null;\n public tm3InvoiceTemplate: string|null;\n public meta: { [index:string]: Object; }|null;\n public dueDaysOverride: number|null;\n public isDistributor: boolean|null;\n public distributorGroupId: number|null;\n public groupInvoiceByStockId: boolean|null;\n public useInvoicePaymentTerms: boolean|null;\n public invoicePaymentTerms: string|null;\n public onlineGuid: string|null;\n public billDistributor: boolean|null;\n public minorUpperAgeLimit: number|null;\n public adolescentUpperAgeLimit: number|null;\n public medipassFunder: string|null;\n public medipassFunderCode: string|null;\n public isVatExempt: boolean|null;\n public financialAddress: string|null;\n public vatExemptionNumber: string|null;\n public vatExemptionExpiryDate: string|null;\n public allowedEmails: string|null;\n public authorisationExpiryInDays: number|null;\n public authorisationExpiryTriggerInDays: number|null;\n public remainingAuthorisationThreshold: number|null;\n\n public constructor(init?: Partial<SaveGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(SaveGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/location/search\")\n// @Route(\"/group/location/search/{GroupId}\")\nexport class GroupLocationSearchRequest implements IReturn<LocationStockResponse>, ILocationId\n{\n public groupId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupLocationSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupLocationSearchRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new LocationStockResponse(); }\n}\n(GroupLocationSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/new/stock/\", \"POST\")\nexport class LocationNewStockRequest\n{\n public groupId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<LocationNewStockRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationNewStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LocationNewStockRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/stockType/add/\", \"POST\")\nexport class UpdateDnaCancelStockRequest implements IReturn<Group>, ISecurityId\n{\n public groupId: number|null;\n public stockType: string|null;\n public stock: StockLocationItem[]|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UpdateDnaCancelStockRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateDnaCancelStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Group(); }\n}\n(UpdateDnaCancelStockRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/new/location/{id}\")\nexport class LocationNewLocationRequest implements IReturn<Location[]>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<LocationNewLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationNewLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<Location>(); }\n}\n(LocationNewLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/add/stock/all\", \"POST\")\nexport class AddAllStockToGroupRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public groupId: number|null;\n public stockToAdd: number[]|null;\n public stockToRemove: number[]|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<AddAllStockToGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddAllStockToGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AddAllStockToGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/select/stock\", \"POST\")\nexport class ChangeStockOnGroupRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public groupId: number|null;\n public stockId: number|null;\n public locationId: number|null;\n public stockType: string|null;\n\n public constructor(init?: Partial<ChangeStockOnGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangeStockOnGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ChangeStockOnGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/add/location\", \"POST\")\nexport class AddLocationToGroupRequest implements IReturn<LocationStockResponse>\n{\n public groupId: number|null;\n public firstId: number|null;\n public followUpId: number|null;\n public cancelId: number|null;\n public dnaId: number|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<AddLocationToGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddLocationToGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new LocationStockResponse(); }\n}\n(AddLocationToGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/delete/location\", \"POST\")\nexport class RemoveLocationfromGroupRequest implements ILocationId\n{\n public groupId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<RemoveLocationfromGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveLocationfromGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(RemoveLocationfromGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/change/stock\", \"POST\")\nexport class ChangeStockfromGroupRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public groupId: number|null;\n public stockToAddId: number|null;\n public stockToRemoveId: number|null;\n public locationId: number|null;\n public stockType: string|null;\n\n public constructor(init?: Partial<ChangeStockfromGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangeStockfromGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ChangeStockfromGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/settings/{Id}\", \"GET\")\nexport class GroupSettingsRequest implements IReturn<ResponseBase<GroupServiceTypeOptionsResponse>>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupSettingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupSettingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupServiceTypeOptionsResponse>(); }\n}\n(GroupSettingsRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/settings/customer\")\nexport class GroupSettingsForCustomerRequest implements IReturn<ResponseBase<GroupServiceTypeOptionsResponse>>, IServiceTypeId\n{\n public id: number|null;\n public customerId: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<GroupSettingsForCustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupSettingsForCustomerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupServiceTypeOptionsResponse>(); }\n}\n(GroupSettingsForCustomerRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/notificationTypes\")\n// @Route(\"/group/notifications/{Id}\")\nexport class GroupNotificationsRequest implements IReturn<AppointmentEventBase[]>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupNotificationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupNotificationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<AppointmentEventBase>(); }\n}\n(GroupNotificationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/profile\")\n// @Route(\"/group/profile/{Id}\")\nexport class GroupProfileRequest implements IReturn<ResponseBase<GroupProfileDto>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<GroupProfileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupProfileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupProfileDto>(); }\n}\n(GroupProfileRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/settings/save\", \"POST\")\nexport class GroupServiceTypeOptionsRequest implements IReturn<GroupServiceTypeOptions>, ISecurityId\n{\n public id: number|null;\n public serviceTypeID: number|null;\n public groupID: number|null;\n public securityId: number|null;\n public useAuthCodes: boolean|null;\n public useDummyAuthCodes: boolean|null;\n public dummyCodePrefix: string|null;\n public cancelAffectsAuthCount: boolean|null;\n public dnaAffectsAuthCount: boolean|null;\n public authCodeGenerateMode: number|null;\n public authCodeGenerateAssess: number|null;\n public authCodeGenerateTreat: number|null;\n public authCodeGenerateAll: number|null;\n public cancelAlwaysAffectsAuthCount: boolean|null;\n public cancelAffectsAuthCountDays: number|null;\n\n public constructor(init?: Partial<GroupServiceTypeOptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupServiceTypeOptionsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new GroupServiceTypeOptions(); }\n}\n(GroupServiceTypeOptionsRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/save/all\", \"POST\")\nexport class SaveAllGroupRequest implements IReturn<ResponseBase<GroupResponse>>, ISecurityId\n{\n public securityId: number|null;\n public groupId: number|null;\n public group: SaveGroupRequest|null;\n public settings: GroupServiceTypeOptionsRequest[]|null;\n public profile: GroupProfileDto|null;\n public notifications: NotificationSubscription[]|null;\n public chargesToRemove: GroupStockResponse[]|null;\n public chargesToUpdate: GroupStockResponse[]|null;\n public locationsToUpdate: LocResponse[]|null;\n public locationsToRemove: LocResponse[]|null;\n\n public constructor(init?: Partial<SaveAllGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveAllGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(SaveAllGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/current\")\nexport class GroupCurrentRequest implements IReturn<ResponseBase<GroupResponse>>\n{\n\n public constructor(init?: Partial<GroupCurrentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupCurrentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(GroupCurrentRequest as unknown)[immerable] = true;\n\nexport class ClickGroupServicesRequest implements IReturn<ResponseBase<GroupStockResponse>>\n{\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<ClickGroupServicesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickGroupServicesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupStockResponse>(); }\n}\n(ClickGroupServicesRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/getbusinesses\")\nexport class GetBusinessesRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<GetBusinessesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetBusinessesRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/addbusiness\")\nexport class AddBusinessRequest\n{\n public businesses: AddBusinessModel[]|null;\n\n public constructor(init?: Partial<AddBusinessRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddBusinessRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AddBusinessRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/getallisc\")\nexport class GetAllIscRequest\n{\n\n public constructor(init?: Partial<GetAllIscRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllIscRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetAllIscRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/searchisc\")\nexport class SearchIscRequest\n{\n public term: string|null;\n\n public constructor(init?: Partial<SearchIscRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SearchIscRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(SearchIscRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/business/providercodes\")\nexport class GetProviderCodesRequest\n{\n public provideCodeOption: number|null;\n public groupId: number|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<GetProviderCodesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProviderCodesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(GetProviderCodesRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/business/{id}\")\nexport class GetBusinessDetailsRequest\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetBusinessDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetBusinessDetailsRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/login/update\")\nexport class UpdateHealthcodeLoginDetailRequest\n{\n public username: string|null;\n public password: string|null;\n\n public constructor(init?: Partial<UpdateHealthcodeLoginDetailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateHealthcodeLoginDetailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateHealthcodeLoginDetailRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/business/update\")\nexport class UpdateBusinessDetailRequest\n{\n public id: number|null;\n public locationId: number|null;\n public property: string|null;\n public value: Object|null;\n\n public constructor(init?: Partial<UpdateBusinessDetailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateBusinessDetailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateBusinessDetailRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/business/update/providercode\")\nexport class UpdateBusinessProviderCodeRequest\n{\n public id: number|null;\n public groupId: number|null;\n public providerNoOption: number|null;\n public providerNo: string|null;\n\n public constructor(init?: Partial<UpdateBusinessProviderCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateBusinessProviderCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateBusinessProviderCodeRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/stockitem/update\")\nexport class UpdateStockItemDetailRequest\n{\n public id: number|null;\n public property: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<UpdateStockItemDetailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateStockItemDetailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateStockItemDetailRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/export/validate\")\nexport class ValidateExportRequest implements IReturn<ResponseBase<ExportIssueResponse>>, ILocationIds\n{\n public startDate: string|null;\n public endDate: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<ValidateExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ValidateExportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ExportIssueResponse>(); }\n}\n(ValidateExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/export\")\nexport class ExportHealthcodeInvoicesRequest implements ILocationIds\n{\n public startDate: string|null;\n public endDate: string|null;\n public toExport: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public upload: boolean|null;\n\n public constructor(init?: Partial<ExportHealthcodeInvoicesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExportHealthcodeInvoicesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ExportHealthcodeInvoicesRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/exportstatus\")\nexport class GetInvoiceExportStatusRequest\n{\n\n public constructor(init?: Partial<GetInvoiceExportStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInvoiceExportStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetInvoiceExportStatusRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/uploadedfiles/{Type*}\")\nexport class GetUploadedFilesListRequest implements IReturn<ResponseBase<ExportedInvoiceFileResponse>>\n{\n // @DataMember(Order=1)\n public type: string|null;\n\n public constructor(init?: Partial<GetUploadedFilesListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetUploadedFilesListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExportedInvoiceFileResponse>(); }\n}\n(GetUploadedFilesListRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/download/{Filename}/{Type*}\", \"GET\")\nexport class DownloadHealthcodeFileRequest\n{\n public filename: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<DownloadHealthcodeFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadHealthcodeFileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(DownloadHealthcodeFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/download/delete\", \"POST\")\nexport class DeleteHealthcodeFileRequest implements IReturn<ResponseBase<T>>\n{\n public filename: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<DeleteHealthcodeFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteHealthcodeFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteHealthcodeFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/uploadremittance\", \"POST\")\n// @DataContract\nexport class UploadRemittanceRequest\n{\n\n public constructor(init?: Partial<UploadRemittanceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UploadRemittanceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UploadRemittanceRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/importstatus\")\nexport class GetInvoiceImportStatusRequest\n{\n\n public constructor(init?: Partial<GetInvoiceImportStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInvoiceImportStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetInvoiceImportStatusRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/runningjob\")\nexport class GetRunningBackgroundJobRequest\n{\n\n public constructor(init?: Partial<GetRunningBackgroundJobRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetRunningBackgroundJobRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetRunningBackgroundJobRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/importsummary\")\nexport class GetInvoiceImportSummaryRequest implements IReturn<ResponseBase<HealthcodeImportSummaryResponse>>\n{\n\n public constructor(init?: Partial<GetInvoiceImportSummaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInvoiceImportSummaryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<HealthcodeImportSummaryResponse>(); }\n}\n(GetInvoiceImportSummaryRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/validationsummary\")\nexport class GetInvoiceValidationSummaryRequest implements IReturn<ResponseBase<ExportIssueResponse>>\n{\n\n public constructor(init?: Partial<GetInvoiceValidationSummaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInvoiceValidationSummaryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExportIssueResponse>(); }\n}\n(GetInvoiceValidationSummaryRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/invoices/exportsummary\")\nexport class GetInvoiceExportSummaryRequest implements IReturn<ResponseBase<HealthcodeExportSummaryResponse>>\n{\n\n public constructor(init?: Partial<GetInvoiceExportSummaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInvoiceExportSummaryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<HealthcodeExportSummaryResponse>(); }\n}\n(GetInvoiceExportSummaryRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthcode/businesstocks\", \"POST\")\nexport class BusinessStocksRequest\n{\n public sortBy: string|null;\n public skip: number|null;\n public take: number|null;\n public sortDir: string|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<BusinessStocksRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessStocksRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(BusinessStocksRequest as unknown)[immerable] = true;\n\nexport class MailChimpLoginRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<MailChimpLoginRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MailChimpLoginRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(MailChimpLoginRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/pushallemails\")\nexport class PushAllEmailsRequest implements IReturn<ResponseBase<T>>\n{\n public listId: string|null;\n\n public constructor(init?: Partial<PushAllEmailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PushAllEmailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(PushAllEmailsRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/lists\")\nexport class GetMailchimpListRequest implements IReturn<ResponseBase<AudiencesResponse>>\n{\n\n public constructor(init?: Partial<GetMailchimpListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMailchimpListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AudiencesResponse>(); }\n}\n(GetMailchimpListRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/sync-progress/{ListId}\", \"GET\")\nexport class GetMailchimpSyncProgressRequest\n{\n public listId: string|null;\n\n public constructor(init?: Partial<GetMailchimpSyncProgressRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMailchimpSyncProgressRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetMailchimpSyncProgressRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/sync-summary/{ListId}\", \"GET\")\nexport class GetMailChimpSyncSummary\n{\n public listId: string|null;\n\n public constructor(init?: Partial<GetMailChimpSyncSummary>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMailChimpSyncSummary'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetMailChimpSyncSummary as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/sync-duplicates/{ListId}\", \"GET\")\nexport class GetMailChimpSyncDuplicates\n{\n public listId: string|null;\n\n public constructor(init?: Partial<GetMailChimpSyncDuplicates>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMailChimpSyncDuplicates'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetMailChimpSyncDuplicates as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/sync-log/{ListId}\", \"GET\")\nexport class GetMailchimpPushAllEmailsLog\n{\n public listId: string|null;\n\n public constructor(init?: Partial<GetMailchimpPushAllEmailsLog>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMailchimpPushAllEmailsLog'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetMailchimpPushAllEmailsLog as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/duplicates/{CustomerId}\")\nexport class GetDuplicateRequest\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<GetDuplicateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDuplicateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetDuplicateRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/duplicates\", \"POST\")\nexport class DuplicatesRequest implements IReturn<ResponseBase<MailChimpDuplicatesResponse>>\n{\n public customerIds: number[]|null;\n\n public constructor(init?: Partial<DuplicatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DuplicatesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MailChimpDuplicatesResponse>(); }\n}\n(DuplicatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/subscriptions-lists/{CustomerId}\", \"GET\")\nexport class GetSubscriptionListsRequest\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<GetSubscriptionListsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSubscriptionListsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetSubscriptionListsRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/subscribecustomertolist\")\nexport class SubscribeCustomerToListRequest\n{\n public customerId: number|null;\n public mailchimpListId: string|null;\n\n public constructor(init?: Partial<SubscribeCustomerToListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SubscribeCustomerToListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(SubscribeCustomerToListRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/unsubscribecustomerfromlist\")\nexport class UnSubscribeCustomerFromListRequest\n{\n public customerId: number|null;\n public mailchimpListId: string|null;\n\n public constructor(init?: Partial<UnSubscribeCustomerFromListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UnSubscribeCustomerFromListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UnSubscribeCustomerFromListRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/unsubscribecustomerfromalllists\")\nexport class UnSubscribeCustomerFromAllListsRequest\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<UnSubscribeCustomerFromAllListsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UnSubscribeCustomerFromAllListsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UnSubscribeCustomerFromAllListsRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/subscribecustomerstolist\")\nexport class SubscribeCustomersToListRequest implements IReturn<ResponseBase<boolean>>\n{\n public customerIds: number[]|null;\n public mailchimpListId: string|null;\n\n public constructor(init?: Partial<SubscribeCustomersToListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SubscribeCustomersToListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SubscribeCustomersToListRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/statistic/{ListId}\")\nexport class SyncStatisticRequest\n{\n public listId: string|null;\n\n public constructor(init?: Partial<SyncStatisticRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SyncStatisticRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(SyncStatisticRequest as unknown)[immerable] = true;\n\n// @Route(\"/mailchimp/unsync-audience/{ListId}\")\nexport class UnsyncAudienceRequest\n{\n public listId: string|null;\n\n public constructor(init?: Partial<UnsyncAudienceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UnsyncAudienceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(UnsyncAudienceRequest as unknown)[immerable] = true;\n\nexport class PostcodeLookupRequest implements IReturn<ResponseBase<PostcodeLookupResponse>>\n{\n public houseNumber: string|null;\n public postcode: string|null;\n\n public constructor(init?: Partial<PostcodeLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PostcodeLookupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PostcodeLookupResponse>(); }\n}\n(PostcodeLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/physiotec-practitioners\", \"GET\")\n// @Route(\"/physiotec-practitioner/{Id}\", \"GET\")\nexport class PhysiotecPractitionerGetRequest implements IReturn<ResponseBase<PhysiotecPractitioner>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<PhysiotecPractitionerGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysiotecPractitionerGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PhysiotecPractitioner>(); }\n}\n(PhysiotecPractitionerGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/physiotec-practitioners\", \"POST\")\n// @Route(\"/physiotec-practitioner/{Id}\", \"POST\")\nexport class PhysiotecPractitionerPostRequest implements IReturn<ResponseBase<Object>>\n{\n public id: number|null;\n public preexisting: boolean|null;\n\n public constructor(init?: Partial<PhysiotecPractitionerPostRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysiotecPractitionerPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(PhysiotecPractitionerPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/physiotec-practitioner/{Id}/credentials\")\nexport class PhysiotecPractitionerCredentialsRequest implements IReturn<PhysiotecPractitioner>\n{\n public id: number|null;\n\n public constructor(init?: Partial<PhysiotecPractitionerCredentialsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysiotecPractitionerCredentialsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new PhysiotecPractitioner(); }\n}\n(PhysiotecPractitionerCredentialsRequest as unknown)[immerable] = true;\n\n// @Route(\"/discipline/{PractitionerId}\")\nexport class PractitionerDisciplineRequest implements IReturn<CustomListItemResponse[]>, ISecurityId\n{\n public practitionerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<PractitionerDisciplineRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerDisciplineRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<CustomListItemResponse>(); }\n}\n(PractitionerDisciplineRequest as unknown)[immerable] = true;\n\n// @Route(\"/discipline/save\")\nexport class DisciplineSave implements IReturn<CustomListItemResponse[]>, ISecurityId\n{\n public practitionerId: number|null;\n public securityId: number|null;\n public disciplines: CustomListItemResponse[]|null;\n\n public constructor(init?: Partial<DisciplineSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DisciplineSave'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<CustomListItemResponse>(); }\n}\n(DisciplineSave as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/group/{PractitionerId}\")\nexport class PractitionerGroupRequest implements IReturn<ResponseBase<PractitionerGroupResponse>>, ISecurityId\n{\n public skip: number|null;\n public take: number|null;\n public practitionerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<PractitionerGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerGroupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PractitionerGroupResponse>(); }\n}\n(PractitionerGroupRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/group/save/\")\nexport class ProviderSave implements IReturn<ResponseBase<PractitionerGroupResponse>>, ISecurityId\n{\n public id: number|null;\n public groupId: number|null;\n public providerNo: string|null;\n public practitionerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ProviderSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProviderSave'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<PractitionerGroupResponse>(); }\n}\n(ProviderSave as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/group/all/{PractitionerId}\")\nexport class PractitionersGroupAllRequest implements IReturn<ResponseBase<GroupLocationsResponse>>, ISecurityId\n{\n public skip: number|null;\n public take: number|null;\n public practitionerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<PractitionersGroupAllRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersGroupAllRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupLocationsResponse>(); }\n}\n(PractitionersGroupAllRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/group/remove/\")\nexport class ProviderRemove implements IReturn<ResponseBase<PractitionerGroupResponse>>, ISecurityId\n{\n public id: number|null;\n public groupId: number|null;\n public providerNo: string|null;\n public groupName: string|null;\n public practitionerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ProviderRemove>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProviderRemove'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PractitionerGroupResponse>(); }\n}\n(ProviderRemove as unknown)[immerable] = true;\n\n// @Route(\"/practitioners\")\n// @Route(\"/practitioners/{Id}\")\nexport class PractitionerRequest implements IReturn<ResponseBase<GeneralPractitionerResponse>>, IGet\n{\n public id: number|null;\n\n public constructor(init?: Partial<PractitionerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralPractitionerResponse>(); }\n}\n(PractitionerRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioners\")\n// @Route(\"/practitioners/onlineId/{Id}\")\nexport class PractitionerByOnlineIdRequest implements IReturn<ResponseBase<GeneralPractitionerResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<PractitionerByOnlineIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerByOnlineIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralPractitionerResponse>(); }\n}\n(PractitionerByOnlineIdRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/all/practitioners\")\nexport class PractitionersAtAllLocationsRequest implements IReturn<ResponseBase<PractitionerLocation>>\n{\n\n public constructor(init?: Partial<PractitionersAtAllLocationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersAtAllLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PractitionerLocation>(); }\n}\n(PractitionersAtAllLocationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/allowed/add/{LocationId}\")\nexport class AddPractitionerRequest implements IReturn<ResponseBase<AddPractitionerResponse>>, ILocationId\n{\n public locationId: number|null;\n\n public constructor(init?: Partial<AddPractitionerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddPractitionerRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AddPractitionerResponse>(); }\n}\n(AddPractitionerRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/allPractitioners\")\nexport class AllPractitionersAllRequest implements IReturn<ResponseBase<MinimalPractitioner>>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AllPractitionersAllRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllPractitionersAllRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MinimalPractitioner>(); }\n}\n(AllPractitionersAllRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/count\")\nexport class PractitionerCountRequest implements IReturn<number>\n{\n\n public constructor(init?: Partial<PractitionerCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(PractitionerCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/onlineId\")\nexport class UserIdByPractitionerOnlineIdRequest implements IReturn<ResponseBase<number>>\n{\n public practitionerOnlineId: string|null;\n\n public constructor(init?: Partial<UserIdByPractitionerOnlineIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserIdByPractitionerOnlineIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(UserIdByPractitionerOnlineIdRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/updatePractitionerPatients\")\nexport class UpdatePractitionersPatientsByLocation implements IReturn<boolean>, ISecurityId\n{\n public updatedPracsByLocation: PractitionerLocationPair[]|null;\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UpdatePractitionersPatientsByLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdatePractitionersPatientsByLocation'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(UpdatePractitionersPatientsByLocation as unknown)[immerable] = true;\n\nexport class LinkPractitionerToZoomUser implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public zoomUserId: string|null;\n\n public constructor(init?: Partial<LinkPractitionerToZoomUser>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkPractitionerToZoomUser'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(LinkPractitionerToZoomUser as unknown)[immerable] = true;\n\n// @Route(\"/locations/{id}/practitioners\")\nexport class PractitionersAtLocationRequest implements IReturn<ResponseBase<MinimalPractitioner>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<PractitionersAtLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersAtLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MinimalPractitioner>(); }\n}\n(PractitionersAtLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/patients/count\")\n// @Route(\"/practitioner/patients/count/{id}\")\nexport class PractitionerPatientsCount implements IReturn<ResponseBase<{ [index:number]: number; }>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<PractitionerPatientsCount>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerPatientsCount'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:number]: number; }>(); }\n}\n(PractitionerPatientsCount as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/recentDocument\")\n// @Route(\"/practitioner/recentDocument/{PractitionerId}\")\nexport class RecentPractitionerDocumentRequest implements IReturn<RecentDocumentResponse>, IHasPath, ISecurityId\n{\n public practitionerId: number|null;\n public securityId: number|null;\n public path: string|null;\n public safeRoot: string|null;\n\n public constructor(init?: Partial<RecentPractitionerDocumentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RecentPractitionerDocumentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new RecentDocumentResponse(); }\n}\n(RecentPractitionerDocumentRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/save\")\nexport class PractitionerSaveRequest implements IReturn<ResponseBase<GeneralPractitionerResponse>>, ILocationId\n{\n public id: number|null;\n public name: string|null;\n public code: string|null;\n public fullAddress: string|null;\n public locationName: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public mobile: string|null;\n public homeTelephone: string|null;\n public email: string|null;\n public fax: string|null;\n public web: string|null;\n public online: boolean|null;\n public status: number|null;\n public setInactiveDate: string|null;\n public type: string|null;\n public contractNumber: string|null;\n public onlineGuid: string|null;\n public defaultLocationId: number|null;\n public regNumber: string|null;\n public commissionFlatRate: number|null;\n public commissionPercent: number|null;\n public employmentStatus: string|null;\n public taxNo: string|null;\n public firstId: number|null;\n public followupId: number|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n public enabledForAllServices: boolean|null;\n\n public constructor(init?: Partial<PractitionerSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GeneralPractitionerResponse>(); }\n}\n(PractitionerSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/locs/save\")\nexport class PractitionersLocationsSave implements IReturn<PracStockLoc[]>, ISecurityId\n{\n public practitionerId: number|null;\n public securityId: number|null;\n public locationId: number|null;\n public practitionerServiceStockFirstStockId: number|null;\n public practitionerServiceStockFollowupStockId: number|null;\n public code: string|null;\n\n public constructor(init?: Partial<PractitionersLocationsSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersLocationsSave'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<PracStockLoc>(); }\n}\n(PractitionersLocationsSave as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/locs/code/save\", \"POST\")\nexport class PractitionersLocationsCodeSave implements IReturn<ResponseBase<PracStockLoc>>, ISecurityId\n{\n public practitionerId: number|null;\n public securityId: number|null;\n public locationId: number|null;\n public code: string|null;\n\n public constructor(init?: Partial<PractitionersLocationsCodeSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersLocationsCodeSave'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PracStockLoc>(); }\n}\n(PractitionersLocationsCodeSave as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/locs/delete\")\nexport class PractitionersLocationsDelete implements IReturn<PracStockLoc[]>, ILocationId, ISecurityId\n{\n public practitionerId: number|null;\n public locationId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<PractitionersLocationsDelete>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersLocationsDelete'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<PracStockLoc>(); }\n}\n(PractitionersLocationsDelete as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/locs/all\")\n// @Route(\"/practitioners/locs/all/{Id}\")\nexport class PracLocationsWithStock implements IReturn<PracStockLoc[]>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<PracLocationsWithStock>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PracLocationsWithStock'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<PracStockLoc>(); }\n}\n(PracLocationsWithStock as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/new/location/{id}\")\nexport class NewLocationPractitionersRequest implements IReturn<Location[]>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<NewLocationPractitionersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NewLocationPractitionersRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<Location>(); }\n}\n(NewLocationPractitionersRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioners/diaryOrder\")\nexport class PractitionerDiaryOrderRequest implements IReturn<ResponseBase<CustomListItemResponse>>\n{\n public diaryOrder: CustomListItemResponse[]|null;\n\n public constructor(init?: Partial<PractitionerDiaryOrderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerDiaryOrderRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomListItemResponse>(); }\n}\n(PractitionerDiaryOrderRequest as unknown)[immerable] = true;\n\nexport class GetDiaryPractitioners implements IReturn<ResponseBase<PractitionerDiaryOrderResponse>>\n{\n\n public constructor(init?: Partial<GetDiaryPractitioners>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDiaryPractitioners'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PractitionerDiaryOrderResponse>(); }\n}\n(GetDiaryPractitioners as unknown)[immerable] = true;\n\n// @Route(\"/practitionersWithLocations\")\nexport class GetPractitionersWithLocationsRequest implements IReturn<ResponseBase<GeneralPractitionerResponse>>, IGet\n{\n\n public constructor(init?: Partial<GetPractitionersWithLocationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPractitionersWithLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralPractitionerResponse>(); }\n}\n(GetPractitionersWithLocationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/status/update\")\nexport class PractitionerStatusUpdateRequest implements ILocationId\n{\n public updates: PractitionerStatusUpdate[]|null;\n public locationId: number|null;\n public newLicensesAmount: number|null;\n\n public constructor(init?: Partial<PractitionerStatusUpdateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerStatusUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(PractitionerStatusUpdateRequest as unknown)[immerable] = true;\n\nexport class SavePractitionerSkillRequest extends PractitionerSkillBaseRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<SavePractitionerSkillRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SavePractitionerSkillRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SavePractitionerSkillRequest as unknown)[immerable] = true;\n\nexport class DeletePractitionerSkillRequest extends PractitionerSkillBaseRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<DeletePractitionerSkillRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DeletePractitionerSkillRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeletePractitionerSkillRequest as unknown)[immerable] = true;\n\nexport class CreateSkillRequest implements IReturn<ResponseBase<T>>\n{\n public name: string|null;\n\n public constructor(init?: Partial<CreateSkillRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateSkillRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CreateSkillRequest as unknown)[immerable] = true;\n\nexport class DeleteSkillRequest implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<DeleteSkillRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteSkillRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteSkillRequest as unknown)[immerable] = true;\n\nexport class SkillRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<SkillRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SkillRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SkillRequest as unknown)[immerable] = true;\n\nexport class PractitionerSkillsRequest implements IReturn<ResponseBase<SkillResponse>>\n{\n public practitionerId: number|null;\n\n public constructor(init?: Partial<PractitionerSkillsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerSkillsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SkillResponse>(); }\n}\n(PractitionerSkillsRequest as unknown)[immerable] = true;\n\nexport class PractitionerUpdateFieldBulkActionRequest extends PractitionerBulkActionBaseRequest implements IReturn<ResponseBase<UpdateFieldBulkActionResponse>>\n{\n public field: BulkUpdateField|null;\n public value: string|null;\n\n public constructor(init?: Partial<PractitionerUpdateFieldBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerUpdateFieldBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<UpdateFieldBulkActionResponse>(); }\n}\n(PractitionerUpdateFieldBulkActionRequest as unknown)[immerable] = true;\n\nexport class MyBookingsRequest implements IReturn<ResponseBase<MyBookingsResponse>>\n{\n public skip: number|null;\n public take: number|null;\n public fromDate: string|null;\n public toDate: string|null;\n public type: string|null;\n public reference: string|null;\n public term: string|null;\n public referrer: string|null;\n public practitioner: string|null;\n public status: number|null;\n public statuses: number[]|null;\n public sortColumn: string|null;\n public sortDirection: string|null;\n public referralOnly: boolean|null;\n public customerId: number|null;\n public workflowId: number|null;\n public showAppointmentsInthePast: boolean|null;\n public showNewAuths: boolean|null;\n public showRequiresIAReportSubmission: boolean|null;\n public showNewNotes: boolean|null;\n public showAuthsRevoked: boolean|null;\n\n public constructor(init?: Partial<MyBookingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MyBookingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MyBookingsResponse>(); }\n}\n(MyBookingsRequest as unknown)[immerable] = true;\n\nexport class BookingAuditsExportRequest implements IReturn<ResponseBase<string>>\n{\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<BookingAuditsExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BookingAuditsExportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(BookingAuditsExportRequest as unknown)[immerable] = true;\n\nexport class SingleBookingAuditRequest implements IReturn<ResponseBase<SingleBookingAuditResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<SingleBookingAuditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SingleBookingAuditRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SingleBookingAuditResponse>(); }\n}\n(SingleBookingAuditRequest as unknown)[immerable] = true;\n\nexport class LinkableAppointmentsRequest implements IReturn<ResponseBase<AppointmentResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<LinkableAppointmentsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkableAppointmentsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AppointmentResponse>(); }\n}\n(LinkableAppointmentsRequest as unknown)[immerable] = true;\n\nexport class LinkAppointmentsToReferralRequest implements IReturn<ResponseBase<boolean>>\n{\n public auditId: string|null;\n public appointments: AppointmentResponse[]|null;\n\n public constructor(init?: Partial<LinkAppointmentsToReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkAppointmentsToReferralRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(LinkAppointmentsToReferralRequest as unknown)[immerable] = true;\n\nexport class MyClinicSummaryRequest implements IReturn<ResponseBase<MyClinicSummaryResponse>>\n{\n\n public constructor(init?: Partial<MyClinicSummaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MyClinicSummaryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MyClinicSummaryResponse>(); }\n}\n(MyClinicSummaryRequest as unknown)[immerable] = true;\n\nexport class ReferralAppointmentRequest extends ReferralAppointment implements IReturn<ResponseBase<ReferralAppointment>>\n{\n public auditId: string|null;\n public yesToWarnings: boolean|null;\n public bookingAudit: BookingAuditResponse|null;\n\n public constructor(init?: Partial<ReferralAppointmentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralAppointment>(); }\n}\n(ReferralAppointmentRequest as unknown)[immerable] = true;\n\nexport class ReportSearchRequest implements IReturn<ResponseBase<ReportSearchResponse>>\n{\n public id: string|null;\n public bookerId: string|null;\n public templateId: string|null;\n\n public constructor(init?: Partial<ReportSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReportSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReportSearchResponse>(); }\n}\n(ReportSearchRequest as unknown)[immerable] = true;\n\nexport class EditReportRequest implements IReturn<ResponseBase<ReferralReport>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<EditReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralReport>(); }\n}\n(EditReportRequest as unknown)[immerable] = true;\n\nexport class DraftReportRequest extends ReferralReport implements IReturn<ResponseBase<ReferralReport>>\n{\n\n public constructor(init?: Partial<DraftReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DraftReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralReport>(); }\n}\n(DraftReportRequest as unknown)[immerable] = true;\n\nexport class SubmitReportRequest extends ReferralReport implements IReturn<ResponseBase<SubmitReportResponse>>\n{\n public appointmentsToLock: string[]|null;\n public isSubmittedFromMyClinic: boolean|null;\n public prontoIntegrationEnabled: boolean|null;\n public linkInvoicesToReports: boolean|null;\n public bookingAuditResponse: BookingAuditResponse|null;\n\n public constructor(init?: Partial<SubmitReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SubmitReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SubmitReportResponse>(); }\n}\n(SubmitReportRequest as unknown)[immerable] = true;\n\nexport class ProntoInvoiceSearchRequest implements IReturn<ResponseBase<ProntoInvoiceSearchResponse>>\n{\n public id: string|null;\n public auditId: string|null;\n public isRequestFromQuickBill: boolean|null;\n\n public constructor(init?: Partial<ProntoInvoiceSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoInvoiceSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProntoInvoiceSearchResponse>(); }\n}\n(ProntoInvoiceSearchRequest as unknown)[immerable] = true;\n\nexport class ProntoInvoiceRequest extends ProntoInvoice implements IReturn<ResponseBase<MyClinicInvoiceResponse>>\n{\n public submittedFromTM3: boolean|null;\n\n public constructor(init?: Partial<ProntoInvoiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MyClinicInvoiceResponse>(); }\n}\n(ProntoInvoiceRequest as unknown)[immerable] = true;\n\nexport class ProntoInvoiceSubmitRequest extends ProntoInvoice implements IReturn<ResponseBase<MyClinicInvoiceResponse>>\n{\n\n public constructor(init?: Partial<ProntoInvoiceSubmitRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoInvoiceSubmitRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MyClinicInvoiceResponse>(); }\n}\n(ProntoInvoiceSubmitRequest as unknown)[immerable] = true;\n\nexport class ProntoInvoiceEditRequest extends ProntoInvoice implements IReturn<ResponseBase<MyClinicInvoiceResponse>>\n{\n\n public constructor(init?: Partial<ProntoInvoiceEditRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoInvoiceEditRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MyClinicInvoiceResponse>(); }\n}\n(ProntoInvoiceEditRequest as unknown)[immerable] = true;\n\n// @Route(\"/referral/file/{Path*}\", \"GET\")\nexport class ReferralAttachmentPathRequest implements IReturn<HttpResult>\n{\n public path: string|null;\n\n public constructor(init?: Partial<ReferralAttachmentPathRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralAttachmentPathRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(ReferralAttachmentPathRequest as unknown)[immerable] = true;\n\nexport class GetClickAppointmentsLinkableToProntoReferralRequest implements IReturn<ResponseBase<ClickLinkableAppointment>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<GetClickAppointmentsLinkableToProntoReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClickAppointmentsLinkableToProntoReferralRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickLinkableAppointment>(); }\n}\n(GetClickAppointmentsLinkableToProntoReferralRequest as unknown)[immerable] = true;\n\nexport class RejectNewReferralRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<RejectNewReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RejectNewReferralRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(RejectNewReferralRequest as unknown)[immerable] = true;\n\nexport class AcceptNewReferralRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<AcceptNewReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AcceptNewReferralRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AcceptNewReferralRequest as unknown)[immerable] = true;\n\nexport class MyClinicWhoReceivesBookingsRequest implements IReturn<ResponseBase<MyClinicWhoReceivesBookingsResponse>>\n{\n public firstTimeSetup: boolean|null;\n\n public constructor(init?: Partial<MyClinicWhoReceivesBookingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MyClinicWhoReceivesBookingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MyClinicWhoReceivesBookingsResponse>(); }\n}\n(MyClinicWhoReceivesBookingsRequest as unknown)[immerable] = true;\n\nexport class ProntoNetworkSettingsRequest implements IReturn<ResponseBase<ProntoNetworkSettingsResponse>>\n{\n\n public constructor(init?: Partial<ProntoNetworkSettingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoNetworkSettingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoNetworkSettingsResponse>(); }\n}\n(ProntoNetworkSettingsRequest as unknown)[immerable] = true;\n\nexport class MyClinicSettingsRequest extends ClinicSettings implements IReturn<ResponseBase<ClientWhoReceivesBookingsResponse>>\n{\n // @Ignore()\n public clinicId: string|null;\n\n // @Ignore()\n public accountName: string|null;\n\n public constructor(init?: Partial<MyClinicSettingsRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'MyClinicSettingsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClientWhoReceivesBookingsResponse>(); }\n}\n(MyClinicSettingsRequest as unknown)[immerable] = true;\n\nexport class MyClinicAuthorizationsRequest implements IReturn<ResponseBase<ClientWhoReceivesBookingsResponse>>\n{\n public bookerId: string|null;\n public clinicEnabled: boolean|null;\n public provisionals: boolean|null;\n\n public constructor(init?: Partial<MyClinicAuthorizationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MyClinicAuthorizationsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClientWhoReceivesBookingsResponse>(); }\n}\n(MyClinicAuthorizationsRequest as unknown)[immerable] = true;\n\nexport class ClinicActivatedOrDeactivatedEmailRequest implements IReturn<ResponseBase<boolean>>\n{\n public bookerId: string|null;\n public clinicId: string|null;\n public enabled: boolean|null;\n\n public constructor(init?: Partial<ClinicActivatedOrDeactivatedEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicActivatedOrDeactivatedEmailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClinicActivatedOrDeactivatedEmailRequest as unknown)[immerable] = true;\n\nexport class LinkUpGroupRequest implements IReturn<ResponseBase<boolean>>\n{\n public groups: GroupLinker[]|null;\n\n public constructor(init?: Partial<LinkUpGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkUpGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(LinkUpGroupRequest as unknown)[immerable] = true;\n\nexport class RemoveServiceRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<RemoveServiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveServiceRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(RemoveServiceRequest as unknown)[immerable] = true;\n\nexport class ProntoStockRequest extends ProntoStockDto implements IReturn<ResponseBase<ProntoStockDto>>\n{\n\n public constructor(init?: Partial<ProntoStockRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProntoStockDto>(); }\n}\n(ProntoStockRequest as unknown)[immerable] = true;\n\nexport class SaveServiceRequest extends ClinicService implements IReturn<ResponseBase<ClinicService>>\n{\n public targetId: string|null;\n\n public constructor(init?: Partial<SaveServiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveServiceRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ClinicService>(); }\n}\n(SaveServiceRequest as unknown)[immerable] = true;\n\nexport class ProntoPortalCardExpiryRequest\n{\n public daysDiff: number|null;\n public lockDate: string|null;\n\n public constructor(init?: Partial<ProntoPortalCardExpiryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoPortalCardExpiryRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ProntoPortalCardExpiryRequest as unknown)[immerable] = true;\n\nexport class ProntoPortalCardDetailsSaveRequest\n{\n\n public constructor(init?: Partial<ProntoPortalCardDetailsSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoPortalCardDetailsSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ProntoPortalCardDetailsSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinic-reports/{id}\", \"GET\")\nexport class ClinicReportsRequestById implements IReturn<ResponseBase<ReportsResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<ClinicReportsRequestById>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicReportsRequestById'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReportsResponse>(); }\n}\n(ClinicReportsRequestById as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinic-reports/save\", \"POST\")\nexport class ClinicReportsSaveRequest implements IReturn<ResponseBase<ReportsResponse>>\n{\n public reportId: string|null;\n public name: string|null;\n public description: string|null;\n public data: string|null;\n\n public constructor(init?: Partial<ClinicReportsSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicReportsSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReportsResponse>(); }\n}\n(ClinicReportsSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinic-reports/delete\")\nexport class ClinicReportsDeleteRequest\n{\n public reportId: string|null;\n\n public constructor(init?: Partial<ClinicReportsDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicReportsDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ClinicReportsDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports\")\nexport class ReportsRequest implements IReturn<ResponseBase<ReportsResponse>>\n{\n\n public constructor(init?: Partial<ReportsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReportsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReportsResponse>(); }\n}\n(ReportsRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/bespoke\")\nexport class GetBespokeReports implements IReturn<FolderTree>\n{\n\n public constructor(init?: Partial<GetBespokeReports>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBespokeReports'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FolderTree(); }\n}\n(GetBespokeReports as unknown)[immerable] = true;\n\n// @Route(\"/reports/{ReportId}/favourite\")\nexport class ReportsFavouriteRequest\n{\n public reportId: string|null;\n\n public constructor(init?: Partial<ReportsFavouriteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReportsFavouriteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReportsFavouriteRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/{ReportId}/deleteFavourite\")\nexport class ReportsDeleteFavouriteRequest\n{\n public reportId: string|null;\n\n public constructor(init?: Partial<ReportsDeleteFavouriteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReportsDeleteFavouriteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReportsDeleteFavouriteRequest as unknown)[immerable] = true;\n\n// @Route(\"/rooms\", \"GET\")\n// @Route(\"/rooms/{Id}\", \"GET,PUT,DELETE\")\nexport class RoomsRequest implements IReturn<ResponseBase<RoomResponse>>, ILocationId, ISecurityId\n{\n public id: number|null;\n public description: string|null;\n public locationId: number|null;\n public status: boolean|null;\n public hexColour: string|null;\n public colour: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<RoomsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RoomsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<RoomResponse>(); }\n}\n(RoomsRequest as unknown)[immerable] = true;\n\n// @Route(\"/rooms\", \"PUT\")\nexport class EditRoomsRequest implements IReturn<ResponseBase<RoomResponse>>, ILocationId, ISecurityId\n{\n public id: number|null;\n public description: string|null;\n public locationId: number|null;\n public status: boolean|null;\n public hexColour: string|null;\n public colour: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<EditRoomsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditRoomsRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<RoomResponse>(); }\n}\n(EditRoomsRequest as unknown)[immerable] = true;\n\n// @Route(\"/rooms\", \"POST\")\nexport class CreateRoomsRequest implements IReturn<Room>, ILocationId, ISecurityId\n{\n public id: number|null;\n public description: string|null;\n public locationId: number|null;\n public status: boolean|null;\n public hexColour: string|null;\n public colour: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CreateRoomsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateRoomsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Room(); }\n}\n(CreateRoomsRequest as unknown)[immerable] = true;\n\n// @Route(\"/rooms/search\", \"POST\")\nexport class RoomSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<RoomResponse>>\n{\n public description: string|null;\n public status: boolean|null;\n\n public constructor(init?: Partial<RoomSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'RoomSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<RoomResponse>(); }\n}\n(RoomSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/rooms/search\")\n// @Route(\"/rooms/list\")\nexport class RoomsListRequest implements IReturn<Room[]>, ILocationId\n{\n public locationId: number|null;\n\n public constructor(init?: Partial<RoomsListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RoomsListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<Room>(); }\n}\n(RoomsListRequest as unknown)[immerable] = true;\n\n// @Route(\"/rooms/count\")\nexport class RoomCountRequest implements IReturn<number>\n{\n\n public constructor(init?: Partial<RoomCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RoomCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return 0; }\n}\n(RoomCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/rooms/{LocationId}\")\nexport class DiaryRoomsRequest implements IReturn<ResponseBase<RoomResponse>>, ILocationId\n{\n public locationId: number|null;\n\n public constructor(init?: Partial<DiaryRoomsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryRoomsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<RoomResponse>(); }\n}\n(DiaryRoomsRequest as unknown)[immerable] = true;\n\n// @Route(\"/reporting-fields-service\", \"POST\")\nexport class ReportingFieldLookupDto implements IReturn<ResponseBase<ReportingFieldLookupDto>>\n{\n public id: string|null;\n public objectType: string|null;\n public displayName: string|null;\n public fieldName: string|null;\n public fieldType: string|null;\n public propagate: boolean|null;\n\n public constructor(init?: Partial<ReportingFieldLookupDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReportingFieldLookupDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReportingFieldLookupDto>(); }\n}\n(ReportingFieldLookupDto as unknown)[immerable] = true;\n\n// @Route(\"/reporting-fields-service\", \"GET\")\nexport class GetReportingFieldLookup implements IReturn<ResponseBase<ReportingFieldLookupDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetReportingFieldLookup>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReportingFieldLookup'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReportingFieldLookupDto>(); }\n}\n(GetReportingFieldLookup as unknown)[immerable] = true;\n\nexport class StockUpdateFieldBulkActionRequest extends StockBulkActionBaseRequest implements IReturn<ResponseBase<UpdateFieldBulkActionResponse>>\n{\n public field: BulkUpdateField|null;\n public value: string|null;\n\n public constructor(init?: Partial<StockUpdateFieldBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'StockUpdateFieldBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<UpdateFieldBulkActionResponse>(); }\n}\n(StockUpdateFieldBulkActionRequest as unknown)[immerable] = true;\n\n// @Route(\"/stock/{StockId}\")\nexport class StockRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<StockWithLocationResponse>>, IGet, IDepartmentIds\n{\n public stockId: number|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<StockRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'StockRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<StockWithLocationResponse>(); }\n}\n(StockRequest as unknown)[immerable] = true;\n\n// @Route(\"/stock/location/{LocationId}\")\nexport class StockAtLocationRequest implements IReturn<ResponseBase<StockAtLocationResponse>>, ILocationId\n{\n public locationId: number|null;\n public term: string|null;\n\n public constructor(init?: Partial<StockAtLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StockAtLocationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockAtLocationResponse>(); }\n}\n(StockAtLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/pricing/groups\")\nexport class StockPricingGroupsRequest\n{\n\n public constructor(init?: Partial<StockPricingGroupsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StockPricingGroupsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(StockPricingGroupsRequest as unknown)[immerable] = true;\n\n// @Route(\"/stocksave/\")\nexport class StockSave implements IReturn<ResponseBase<StockWithLocationResponse>>, ILocationIds, IDepartmentIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public id: number|null;\n public reference: string|null;\n public totalPrice: number|null;\n public description: string|null;\n public appointmentLength: number|null;\n public groupLocationLocationId: number|null;\n public locationId: number|null;\n public onlineGuid: string|null;\n public colourCss: string|null;\n public inUse: boolean|null;\n public priceExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public costAmount: number|null;\n public costVATRate: number|null;\n public costExVAT: number|null;\n public costVATAmount: number|null;\n public longDescription: string|null;\n public ledgerCode: string|null;\n public category: string|null;\n public level: number|null;\n public minimumLevel: number|null;\n public displayInPriceList: boolean|null;\n public isPrivateCharge: boolean|null;\n public isMultiple: boolean|null;\n public isClass: boolean|null;\n public serviceTypeId: number|null;\n public migrated: boolean|null;\n public supplierId: number|null;\n public stockIsCancel: boolean|null;\n public stockIsFirst: boolean|null;\n public stockIsFollowUp: boolean|null;\n public stockIsDNA: boolean|null;\n public isVideo: boolean|null;\n public managementFee: boolean|null;\n public online: boolean|null;\n public templateSetId: number|null;\n public classification: string|null;\n public tags: string[]|null;\n public overrides: StockOverrideResponse[]|null;\n public ledgerCodeOverrides: AccountingStockLedgerLookup[]|null;\n public legderCodeAccountId: string|null;\n public groupName: string|null;\n public image: string|null;\n public cancellationCharge: number|null;\n public didNotAttendCharge: number|null;\n public notes: string|null;\n public colour: number|null;\n public departmentIds: number[]|null;\n public specialismId: string|null;\n // @Ignore()\n public templateSetName: string|null;\n\n // @Ignore()\n public bookingEmail: string|null;\n\n // @Ignore()\n public bookingSMS: string|null;\n\n // @Ignore()\n public cancellationEmail: string|null;\n\n // @Ignore()\n public cancellationSMS: string|null;\n\n // @Ignore()\n public reminderEmail: string|null;\n\n // @Ignore()\n public reminderSMS: string|null;\n\n // @Ignore()\n public showOnline: boolean|null;\n\n // @Ignore()\n public imgSrc: string|null;\n\n // @Ignore()\n public fullDescription: string|null;\n\n // @Ignore()\n public linkedServiceId: string|null;\n\n // @Ignore()\n public onlineCategory: string|null;\n\n public credits: number|null;\n\n public constructor(init?: Partial<StockSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StockSave'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockWithLocationResponse>(); }\n}\n(StockSave as unknown)[immerable] = true;\n\n// @Route(\"/all/stock/all\")\nexport class AllStockAllRequest implements IReturn<ResponseBase<StockListResponse>>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AllStockAllRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllStockAllRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<StockListResponse>(); }\n}\n(AllStockAllRequest as unknown)[immerable] = true;\n\n// @Route(\"/stock/templateSets\")\nexport class StockExistingTemplateSetsRequest\n{\n\n public constructor(init?: Partial<StockExistingTemplateSetsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StockExistingTemplateSetsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(StockExistingTemplateSetsRequest as unknown)[immerable] = true;\n\n// @Route(\"/stock/categories\")\nexport class StockOnlineCategoriesRequest implements IReturn<ResponseBase<StockOnlineCategoryResponse>>\n{\n\n public constructor(init?: Partial<StockOnlineCategoriesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StockOnlineCategoriesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<StockOnlineCategoryResponse>(); }\n}\n(StockOnlineCategoriesRequest as unknown)[immerable] = true;\n\n// @Route(\"/categorystocksave/\")\nexport class StockWithCategoryRequest implements IReturn<ResponseBase<StockWithCategoryResponse>>, ILocationIds, IDepartmentIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public departmentIds: number[]|null;\n public excludedLocations: string[]|null;\n public stock: StockSave|null;\n public isAvailableOnline: boolean|null;\n\n public constructor(init?: Partial<StockWithCategoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StockWithCategoryRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockWithCategoryResponse>(); }\n}\n(StockWithCategoryRequest as unknown)[immerable] = true;\n\n// @Route(\"/all/stock\")\nexport class StockExportRequest extends AllStockRequest implements IReturn<ResponseBase<StockWithLocationResponse>>\n{\n\n public constructor(init?: Partial<StockExportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'StockExportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockWithLocationResponse>(); }\n}\n(StockExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/suppliers\")\nexport class SupplierRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<SupplierRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SupplierRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SupplierRequest as unknown)[immerable] = true;\n\nexport class SupplierSaveRequest implements IReturn<ResponseBase<SupplierResponse>>, ILocationId\n{\n public id: number|null;\n public reference: string|null;\n public name: string|null;\n public contact: string|null;\n public current: boolean|null;\n public email: string|null;\n public telephone: string|null;\n public web: string|null;\n public locationId: number|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public accountNo: string|null;\n public vatNumber: string|null;\n\n public constructor(init?: Partial<SupplierSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SupplierSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SupplierResponse>(); }\n}\n(SupplierSaveRequest as unknown)[immerable] = true;\n\nexport class SuppliersAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<SupplierResponse>>\n{\n public status: boolean|null;\n public address: string|null;\n public reference: string|null;\n public locationId: number|null;\n public locationMulti: number[]|null;\n public name: string|null;\n public accountNo: string|null;\n\n public constructor(init?: Partial<SuppliersAdvancedSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SuppliersAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SupplierResponse>(); }\n}\n(SuppliersAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/audit/search\")\nexport class AuditSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<AuditResponse>>\n{\n public customerId: number|null;\n public objectId: number|null;\n public objectType: string|null;\n public action: string|null;\n public actionDetail: string|null;\n public user: string|null;\n public date: DateRange|null;\n\n public constructor(init?: Partial<AuditSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AuditSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AuditResponse>(); }\n}\n(AuditSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/audit/add\")\nexport class AuditAddRequest implements IReturn<ResponseBase<boolean>>\n{\n public objectId: number|null;\n public customerId: number|null;\n public objectType: string|null;\n public action: string|null;\n public actionDetail: string|null;\n\n public constructor(init?: Partial<AuditAddRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AuditAddRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AuditAddRequest as unknown)[immerable] = true;\n\n// @Route(\"/cache/load\", \"POST\")\nexport class CacheRequest implements IReturn<ResponseBase<CacheResponse>>\n{\n public cachedUserId: number|null;\n public keys: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<CacheRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CacheRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CacheResponse>(); }\n}\n(CacheRequest as unknown)[immerable] = true;\n\nexport class LookupCacheRequest extends SingleCacheRequest implements IReturn<ResponseBase<LookupCacheResponse>>\n{\n\n public constructor(init?: Partial<LookupCacheRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'LookupCacheRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LookupCacheResponse>(); }\n}\n(LookupCacheRequest as unknown)[immerable] = true;\n\n// @Route(\"/sys/dictionary/all\", \"Get\")\nexport class DictionaryRequestAll implements IReturn<ResponseBase<SystemDictionary>>\n{\n\n public constructor(init?: Partial<DictionaryRequestAll>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DictionaryRequestAll'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SystemDictionary>(); }\n}\n(DictionaryRequestAll as unknown)[immerable] = true;\n\n// @Route(\"/settings/labels/save\")\nexport class DynamicLabelUpdate implements IReturn<ResponseBase<DynamicLabelResponse>>\n{\n public labels: LabelItem[]|null;\n\n public constructor(init?: Partial<DynamicLabelUpdate>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DynamicLabelUpdate'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DynamicLabelResponse>(); }\n}\n(DynamicLabelUpdate as unknown)[immerable] = true;\n\n// @Route(\"/extended/notes\")\n// @Route(\"/extended/notes/{NoteId}\")\nexport class ExtendedNotesRequest implements IReturn<ResponseBase<ExtendedNotesResponse>>, ISecurityLocator, IDepartmentIds\n{\n public skip: number|null;\n public take: number|null;\n public noteId: number|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<ExtendedNotesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExtendedNotesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExtendedNotesResponse>(); }\n}\n(ExtendedNotesRequest as unknown)[immerable] = true;\n\n// @Route(\"/extended/notes/delete\", \"POST\")\nexport class ExtendedNotesDeleteRequest implements IReturn<ResponseBase<boolean>>, ILocationId, IFilterServiceTypeManually, ISecurityType\n{\n public id: number|null;\n public locationId: number|null;\n public type: string|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<ExtendedNotesDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExtendedNotesDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ExtendedNotesDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/group/notes/{Id}\", \"GET\")\nexport class GroupExtendedNotesRequest implements IReturn<ResponseBase<ExtendedNotesResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GroupExtendedNotesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupExtendedNotesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExtendedNotesResponse>(); }\n}\n(GroupExtendedNotesRequest as unknown)[immerable] = true;\n\n// @Route(\"/medicalcontact/notes/{ContactId}\", \"GET\")\nexport class MedicalContactExtendedNotesRequest implements IReturn<ResponseBase<ExtendedNotesResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public contactId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<MedicalContactExtendedNotesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MedicalContactExtendedNotesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExtendedNotesResponse>(); }\n}\n(MedicalContactExtendedNotesRequest as unknown)[immerable] = true;\n\n// @Route(\"/practitioner/notes/{PractitionerId}\")\nexport class PractitionerExtendedNotesRequest implements IReturn<ResponseBase<ExtendedNotesWithUserName>>, ISecurityId\n{\n public skip: number|null;\n public take: number|null;\n public practitionerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<PractitionerExtendedNotesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerExtendedNotesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ExtendedNotesWithUserName>(); }\n}\n(PractitionerExtendedNotesRequest as unknown)[immerable] = true;\n\n// @Route(\"/extended/notesave/\")\nexport class ExtendedNotesSave implements IReturn<ResponseBase<ExtendedNotesResponse>>, ISecurityId, ISecurityType, IFilterServiceTypeManually, ISecurityGuid\n{\n public id: number|null;\n public type: string|null;\n public typeId: string|null;\n public icon: string|null;\n public colour: string|null;\n public typeGuid: string|null;\n public title: string|null;\n public entry: string|null;\n public noteType: string|null;\n public lastModified: string|null;\n public lockMode: string|null;\n public lockValue: number|null;\n public alert: boolean|null;\n public securityId: number|null;\n public securityType: string|null;\n public serviceTypeId: number|null;\n public securityGuid: string|null;\n public acknowledgementRequired: boolean|null;\n public alertExpiryDate: string|null;\n public alertStartDate: string|null;\n public contextObjectType: TimelineContextObjectType|null;\n public contextId: number|null;\n public linkedObjectType: TimelineLinkedObjectType|null;\n public linkedObjectId: number|null;\n\n public constructor(init?: Partial<ExtendedNotesSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExtendedNotesSave'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ExtendedNotesResponse>(); }\n}\n(ExtendedNotesSave as unknown)[immerable] = true;\n\n// @Route(\"/locks/clear\")\nexport class LockClearRequest\n{\n\n public constructor(init?: Partial<LockClearRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LockClearRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(LockClearRequest as unknown)[immerable] = true;\n\n// @Route(\"/lock/request\")\nexport class LockObtainRequest implements IReturnVoid\n{\n public objectType: string|null;\n public objectId: number|null;\n\n public constructor(init?: Partial<LockObtainRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LockObtainRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LockObtainRequest as unknown)[immerable] = true;\n\n// @Route(\"/lock/release\")\nexport class LockReleaseRequest\n{\n public objectType: string|null;\n public objectId: number|null;\n\n public constructor(init?: Partial<LockReleaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LockReleaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LockReleaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/lock/release/user\")\nexport class LockReleaseByUserRequest\n{\n\n public constructor(init?: Partial<LockReleaseByUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LockReleaseByUserRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LockReleaseByUserRequest as unknown)[immerable] = true;\n\n// @Route(\"/lock/same\")\nexport class LockSameRequest\n{\n public id: number|null;\n public type: string|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public status: number|null;\n public practitionerId: number|null;\n public locationId: number|null;\n public roomId: number|null;\n public name: string|null;\n public description: string|null;\n\n public constructor(init?: Partial<LockSameRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LockSameRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LockSameRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookup\")\nexport class LookupRequest implements IReturn<ResponseBase<LookupResponse>>\n{\n public lookUpType: string|null;\n\n public constructor(init?: Partial<LookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LookupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LookupResponse>(); }\n}\n(LookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookups/all\")\nexport class AllLookupRequest implements IReturn<ResponseBase<LookupResponse>>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AllLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllLookupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LookupResponse>(); }\n}\n(AllLookupRequest as unknown)[immerable] = true;\n\nexport class NestedLookupsFromTemplateRequest implements IReturn<ResponseBase<NestedLookupResponse>>\n{\n public templateId: string|null;\n\n public constructor(init?: Partial<NestedLookupsFromTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NestedLookupsFromTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NestedLookupResponse>(); }\n}\n(NestedLookupsFromTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookups/regional\")\nexport class RegionalLookupRequest implements IReturn<ResponseBase<RegionalLookup>>\n{\n\n public constructor(init?: Partial<RegionalLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RegionalLookupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<RegionalLookup>(); }\n}\n(RegionalLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookups/add\")\nexport class AddLookupItem implements IReturn<ResponseBase<LookupResponse>>, ILocationId\n{\n public lookupId: number|null;\n public name: string|null;\n public value: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<AddLookupItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddLookupItem'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LookupResponse>(); }\n}\n(AddLookupItem as unknown)[immerable] = true;\n\n// @Route(\"/lookups/delete\")\nexport class DeleteLookupItem implements IReturn<ResponseBase<LookupResponse>>\n{\n public name: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<DeleteLookupItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteLookupItem'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LookupResponse>(); }\n}\n(DeleteLookupItem as unknown)[immerable] = true;\n\n// @Route(\"/lookups/{Id}\")\nexport class LookupItem implements IReturn<ResponseBase<LookupResponse>>\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<LookupItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LookupItem'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LookupResponse>(); }\n}\n(LookupItem as unknown)[immerable] = true;\n\n// @Route(\"/patterns\", \"GET\")\nexport class PatternRequest implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n\n public constructor(init?: Partial<PatternRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatternRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(PatternRequest as unknown)[immerable] = true;\n\n// @Route(\"/security-stats\")\nexport class SecurityStatsRequest implements IReturn<SecurityStatsResponse>\n{\n\n public constructor(init?: Partial<SecurityStatsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SecurityStatsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new SecurityStatsResponse(); }\n}\n(SecurityStatsRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/message\", \"GET\")\nexport class SystemMessageRequest\n{\n\n public constructor(init?: Partial<SystemMessageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SystemMessageRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(SystemMessageRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/message/acknowledge\", \"POST\")\nexport class AcknowledgeSystemMessageRequest\n{\n public messageIds: number[]|null;\n\n public constructor(init?: Partial<AcknowledgeSystemMessageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AcknowledgeSystemMessageRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AcknowledgeSystemMessageRequest as unknown)[immerable] = true;\n\n// @Route(\"/sys/labels/all\")\nexport class DynamicLblRequest\n{\n\n public constructor(init?: Partial<DynamicLblRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DynamicLblRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n\n// @Route(\"/task/{Id}\")\nexport class TaskRequest implements IReturn<ResponseBase<TaskResponse>>, ILocationId, ISecurityId\n{\n public id: number|null;\n public ids: number[]|null;\n public locationId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<TaskRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TaskRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TaskResponse>(); }\n}\n(TaskRequest as unknown)[immerable] = true;\n\n// @Route(\"/tasks/current/{LocationId}\", \"GET\")\nexport class AllCurrentTasksRequest implements IReturn<TaskForUser[]>, ILocationId\n{\n public locationId: number|null;\n\n public constructor(init?: Partial<AllCurrentTasksRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllCurrentTasksRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<TaskForUser>(); }\n}\n(AllCurrentTasksRequest as unknown)[immerable] = true;\n\n// @Route(\"/tasks/availableUsers\", \"GET\")\nexport class TasksAvailableUsers implements IReturn<UserRoleLocationWithUserName[]>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<TasksAvailableUsers>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TasksAvailableUsers'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<UserRoleLocationWithUserName>(); }\n}\n(TasksAvailableUsers as unknown)[immerable] = true;\n\n// @Route(\"/user/{Id}/tasks\")\nexport class UserTaskRequest implements IReturn<ResponseBase<TaskResponse>>, ISecurityId\n{\n public id: number|null;\n public startDate: string|null;\n public endDate: string|null;\n public securityId: number|null;\n public autoRefresh: boolean|null;\n\n public constructor(init?: Partial<UserTaskRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserTaskRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TaskResponse>(); }\n}\n(UserTaskRequest as unknown)[immerable] = true;\n\n// @Route(\"/task\", \"POST\")\n// @Route(\"/task/{Id}\", \"PUT\")\nexport class TaskSaveRequest extends TaskForUser implements IReturn<ResponseBase<TaskResponse>>\n{\n\n public constructor(init?: Partial<TaskSaveRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'TaskSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TaskResponse>(); }\n}\n(TaskSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/tasks/search\", \"POST\")\nexport class UserTasksSearchRequest implements IReturn<ResponseBase<T>>, ISecurityId\n{\n public term: string|null;\n public id: number|null;\n public securityId: number|null;\n public includeFuture: boolean|null;\n public showCompleted: boolean|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<UserTasksSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserTasksSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UserTasksSearchRequest as unknown)[immerable] = true;\n\nexport class TrialCancellationRequest implements IReturn<ResponseBase<boolean>>\n{\n public comments: string|null;\n\n public constructor(init?: Partial<TrialCancellationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TrialCancellationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TrialCancellationRequest as unknown)[immerable] = true;\n\n// @Route(\"/subdomain/clientId\")\nexport class CorrectSubdomainRequest\n{\n public clientId: string|null;\n public email: string|null;\n\n public constructor(init?: Partial<CorrectSubdomainRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CorrectSubdomainRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CorrectSubdomainRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/clinical/scores-goals/search\", \"POST\")\nexport class ScoresGoalsSettingsSearchRequest implements IReturn<ResponseBase<ScoresGoalsSettingsResponse>>\n{\n\n public constructor(init?: Partial<ScoresGoalsSettingsSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoresGoalsSettingsSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ScoresGoalsSettingsResponse>(); }\n}\n(ScoresGoalsSettingsSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/clinical/scores-goals/{Id}\", \"GET\")\nexport class ScoresGoalsSettingsGetRequest implements IReturn<ResponseBase<ScoresGoalsSettingsResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ScoresGoalsSettingsGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoresGoalsSettingsGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ScoresGoalsSettingsResponse>(); }\n}\n(ScoresGoalsSettingsGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/clinical/scores-goals/\", \"POST\")\nexport class ScoresGoalsSettingsPostRequest extends ScoresGoalsSettingsRequest implements IReturn<ResponseBase<ScoresGoalsSettingsResponse>>\n{\n\n public constructor(init?: Partial<ScoresGoalsSettingsPostRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoresGoalsSettingsPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ScoresGoalsSettingsResponse>(); }\n}\n(ScoresGoalsSettingsPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/clinical/scores-goals/{Id}\", \"PUT\")\nexport class ScoresGoalsSettingsPutRequest extends ScoresGoalsSettingsRequest implements IReturn<ResponseBase<ScoresGoalsSettingsResponse>>\n{\n\n public constructor(init?: Partial<ScoresGoalsSettingsPutRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoresGoalsSettingsPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ScoresGoalsSettingsResponse>(); }\n}\n(ScoresGoalsSettingsPutRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/clinical/scores-goals/{Id}\", \"DELETE\")\nexport class ScoresGoalsSettingsDeleteRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ScoresGoalsSettingsDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoresGoalsSettingsDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ScoresGoalsSettingsDeleteRequest as unknown)[immerable] = true;\n\nexport class AdjustNumberOfDiariesRequest implements IReturn<ResponseBase<T>>\n{\n public numberOfDiaries: number|null;\n\n public constructor(init?: Partial<AdjustNumberOfDiariesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AdjustNumberOfDiariesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AdjustNumberOfDiariesRequest as unknown)[immerable] = true;\n\nexport class GetDomainsRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<GetDomainsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDomainsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetDomainsRequest as unknown)[immerable] = true;\n\nexport class GetDomainsAuthenticationStatusRequest implements IReturn<ResponseBase<DomainAuthenticationStatusResponse>>\n{\n public domains: string[]|null;\n\n public constructor(init?: Partial<GetDomainsAuthenticationStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDomainsAuthenticationStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DomainAuthenticationStatusResponse>(); }\n}\n(GetDomainsAuthenticationStatusRequest as unknown)[immerable] = true;\n\nexport class AuthenticateDomainRequest implements IReturn<ResponseBase<AuthenticateDomainResponse>>\n{\n public domain: string|null;\n public id: number|null;\n\n public constructor(init?: Partial<AuthenticateDomainRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AuthenticateDomainRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AuthenticateDomainResponse>(); }\n}\n(AuthenticateDomainRequest as unknown)[immerable] = true;\n\nexport class ValidateDomainRequest implements IReturn<ResponseBase<ValidateDomainResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ValidateDomainRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ValidateDomainRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ValidateDomainResponse>(); }\n}\n(ValidateDomainRequest as unknown)[immerable] = true;\n\nexport class DMARCWarningRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<DMARCWarningRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DMARCWarningRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DMARCWarningRequest as unknown)[immerable] = true;\n\nexport class DMARCAcknowledgementRequest implements IReturnVoid\n{\n\n public constructor(init?: Partial<DMARCAcknowledgementRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DMARCAcknowledgementRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(DMARCAcknowledgementRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/stock-reorder\")\nexport class StockReorderRequest extends BaseParamsForAllReports implements IReturn<StockReorderResponse>\n{\n public minimumLevel: number|null;\n public stockDescription: string|null;\n public supplier: string|null;\n public stockStatuses: string[]|null;\n public reorders: string|null;\n\n public constructor(init?: Partial<StockReorderRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'StockReorderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new StockReorderResponse(); }\n}\n(StockReorderRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/stock-sales\")\nexport class StockSalesRequest extends BaseParamsForAllReports implements IReturn<StockSalesResponse>\n{\n public reportDate: string|null;\n public stockDescription: string|null;\n public ageGroupings: string[]|null;\n\n public constructor(init?: Partial<StockSalesRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'StockSalesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new StockSalesResponse(); }\n}\n(StockSalesRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/invoice-analysis\")\nexport class InvoiceAnalysisRequest extends BaseParamsForAllReports implements IReturn<InvoiceAnalysisResponse>\n{\n public accountTypes: string[]|null;\n public invoiceStatuses: string[]|null;\n\n public constructor(init?: Partial<InvoiceAnalysisRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceAnalysisRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new InvoiceAnalysisResponse(); }\n}\n(InvoiceAnalysisRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/income-analysis\")\nexport class IncomeAnalysisRequest extends BaseParamsForAllReports implements IReturn<IncomeAnalysisResponse>\n{\n public accountTypes: string[]|null;\n public paymentMethods: string[]|null;\n public incomeStatuses: string[]|null;\n\n public constructor(init?: Partial<IncomeAnalysisRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'IncomeAnalysisRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new IncomeAnalysisResponse(); }\n}\n(IncomeAnalysisRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/expenditure-month-summary\")\nexport class ExpenditureMonthSummaryRequest extends BaseParamsForAllReports implements IReturn<ExpenditureMonthSummaryResponse>\n{\n\n public constructor(init?: Partial<ExpenditureMonthSummaryRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureMonthSummaryRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ExpenditureMonthSummaryResponse(); }\n}\n(ExpenditureMonthSummaryRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/expenditure-analysis\", \"POST\")\nexport class ExpenditureAnalysisRequest extends BaseParamsForAllReports implements IReturn<ExpenditureAnalysisResponse>\n{\n public expenditureCategory: string[]|null;\n public expenditureOtherPaymentMethods: string[]|null;\n\n public constructor(init?: Partial<ExpenditureAnalysisRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ExpenditureAnalysisRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ExpenditureAnalysisResponse(); }\n}\n(ExpenditureAnalysisRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/aged-debtors\")\nexport class AgedDebtorsReportRequest extends BaseParamsForAllReports implements IReturn<AgedDebtorsResponse>\n{\n public invoiceStatuses: string[]|null;\n public invoiceAges: string[]|null;\n\n public constructor(init?: Partial<AgedDebtorsReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AgedDebtorsReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AgedDebtorsResponse(); }\n}\n(AgedDebtorsReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/debtors-by-account\")\nexport class DebtorsByAccountRequest extends BaseParamsForAllReports implements IReturn<DebtorsByAccountResponse>\n{\n public invoiceStatusNames: string[]|null;\n public accountTypeNames: string[]|null;\n\n public constructor(init?: Partial<DebtorsByAccountRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DebtorsByAccountRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DebtorsByAccountResponse(); }\n}\n(DebtorsByAccountRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/debtors-on-a-date\")\nexport class DebtorsOnADateReportRequest extends BaseParamsForAllReports implements IReturn<DebtorsOnADateResponse>\n{\n public invoiceStatusOnDates: string[]|null;\n public accountTypes: string[]|null;\n\n public constructor(init?: Partial<DebtorsOnADateReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DebtorsOnADateReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DebtorsOnADateResponse(); }\n}\n(DebtorsOnADateReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/finances/charge-analysis\")\nexport class ChargesAnalysisReportRequest extends BaseParamsForAllReports implements IReturn<ChargeAnalysisResponse>\n{\n public accountTypes: string[]|null;\n public chargeDescription: string|null;\n public billedItemCategories: string[]|null;\n public accountName: string|null;\n public useAccountingDate: boolean|null;\n public invoiceStatus: InvoiceStatus|null;\n\n public constructor(init?: Partial<ChargesAnalysisReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ChargesAnalysisReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ChargeAnalysisResponse(); }\n}\n(ChargesAnalysisReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/diary/practitioner-availability\")\nexport class PractitionerAvailabilityReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<PractitionerAvailabilityReportResponse>>\n{\n\n public constructor(init?: Partial<PractitionerAvailabilityReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionerAvailabilityReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PractitionerAvailabilityReportResponse>(); }\n}\n(PractitionerAvailabilityReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinical/admissions-analysis\")\nexport class AdmissionsAnalysisReportRequest extends BaseParamsForAllReports implements IReturn<AdmissionsAnalysisReportResponse>\n{\n public bodySite: string[]|null;\n public categories: string[]|null;\n public ageGrouping: string[]|null;\n public medicalContact: string|null;\n\n public constructor(init?: Partial<AdmissionsAnalysisReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AdmissionsAnalysisReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AdmissionsAnalysisReportResponse(); }\n}\n(AdmissionsAnalysisReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinical/average-treatments\")\nexport class AverageTreatmentsReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<AverageTreatmentsReportResponse>>\n{\n public groupByItems: string|null;\n\n public constructor(init?: Partial<AverageTreatmentsReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AverageTreatmentsReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AverageTreatmentsReportResponse>(); }\n}\n(AverageTreatmentsReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinical/cases-due-for-review\")\nexport class CasesDueForReviewReportRequest extends BaseParamsForAllReports implements IReturn<CasesDueForReviewReportResponse>\n{\n public reviewDate: DateRange|null;\n public medicalContact: string|null;\n\n public constructor(init?: Partial<CasesDueForReviewReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CasesDueForReviewReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CasesDueForReviewReportResponse(); }\n}\n(CasesDueForReviewReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinical/current-case-load\")\nexport class CurrentCaseLoadReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<CurrentCaseLoadReportResponse>>\n{\n public bodySite: string[]|null;\n public businesses: string|null;\n public diagnosis: string|null;\n public showFutureAppointments: number|null;\n public medicalContact: string|null;\n\n public constructor(init?: Partial<CurrentCaseLoadReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CurrentCaseLoadReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CurrentCaseLoadReportResponse>(); }\n}\n(CurrentCaseLoadReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinical/discharge-analysis\")\nexport class DischargeAnalysisReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<DischargeAnalysisReportResponse>>\n{\n public bodySite: string[]|null;\n public businesses: string|null;\n public patientName: string|null;\n public diagnosis: string|null;\n public ageGrouping: string[]|null;\n\n public constructor(init?: Partial<DischargeAnalysisReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DischargeAnalysisReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DischargeAnalysisReportResponse>(); }\n}\n(DischargeAnalysisReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clinical/lapsed-patients\")\nexport class LapsedPatientsReportRequest extends BaseParamsForAllReports implements IReturn<LapsedPatientsReportResponse>\n{\n public showRemainingAuths: number|null;\n public bodySite: string[]|null;\n public diagnosisCode: string[]|null;\n public remainingAuthorisation: RemainingAuthorisationOption|null;\n\n public constructor(init?: Partial<LapsedPatientsReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'LapsedPatientsReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new LapsedPatientsReportResponse(); }\n}\n(LapsedPatientsReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clients/client-analysis\")\nexport class ClientAnalysisReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<ClientAnalysisResponse>>\n{\n public gender: string[]|null;\n public ageGrouping: string[]|null;\n public businesses: string[]|null;\n public enquirySources: string[]|null;\n public showFutureAppointments: number|null;\n\n public constructor(init?: Partial<ClientAnalysisReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientAnalysisReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClientAnalysisResponse>(); }\n}\n(ClientAnalysisReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clients/client-birthdays\")\nexport class ClientBirthdayReportRequest extends BaseParamsForAllReports implements IReturn<ClientBirthdayResponse>\n{\n public filterLastAppointmentDate: boolean|null;\n public range: DatePartRange|null;\n public contactMethods: number|null;\n\n public constructor(init?: Partial<ClientBirthdayReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientBirthdayReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ClientBirthdayResponse(); }\n}\n(ClientBirthdayReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/clients/client-tracking\")\nexport class ClientTrackingReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<ClientTrackingResponse>>\n{\n public omitPatientsThatDontNeedAction: boolean|null;\n public businesses: string|null;\n public ageGrouping: string[]|null;\n\n public constructor(init?: Partial<ClientTrackingReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientTrackingReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClientTrackingResponse>(); }\n}\n(ClientTrackingReportRequest as unknown)[immerable] = true;\n\nexport class ClickReferrerImagePathRequest implements IReturn<ResponseBase<ClickReferrerImagePath>>\n{\n public referrerId: string|null;\n\n public constructor(init?: Partial<ClickReferrerImagePathRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickReferrerImagePathRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickReferrerImagePath>(); }\n}\n(ClickReferrerImagePathRequest as unknown)[immerable] = true;\n\n// @Route(\"/register/click\")\nexport class ClickRegistrationRequest extends RegistrationRequest implements IReturn<ResponseBase<string>>\n{\n\n public constructor(init?: Partial<ClickRegistrationRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickRegistrationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(ClickRegistrationRequest as unknown)[immerable] = true;\n\n// @Route(\"/subdomain/exists\")\nexport class TM3SubdomainExistsRequest implements IReturn<ResponseBase<boolean>>\n{\n public subdomain: string|null;\n\n public constructor(init?: Partial<TM3SubdomainExistsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TM3SubdomainExistsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TM3SubdomainExistsRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardSendEnquiryEmailRequest implements IReturn<ResponseBase<boolean>>\n{\n public locationId: number|null;\n public type: EnquiryType|null;\n\n public constructor(init?: Partial<QuickStartWizardSendEnquiryEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardSendEnquiryEmailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(QuickStartWizardSendEnquiryEmailRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardToggleGroupStocksRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<QuickStartWizardToggleGroupStocksRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardToggleGroupStocksRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(QuickStartWizardToggleGroupStocksRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardGetGroupRequest implements IReturn<ResponseBase<QuickStartWizardGroupResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<QuickStartWizardGetGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardGetGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<QuickStartWizardGroupResponse>(); }\n}\n(QuickStartWizardGetGroupRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardGetGroupsRequest implements IReturn<ResponseBase<QuickStartWizardGroupResponse>>\n{\n\n public constructor(init?: Partial<QuickStartWizardGetGroupsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardGetGroupsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<QuickStartWizardGroupResponse>(); }\n}\n(QuickStartWizardGetGroupsRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardSaveGroupRequest implements IReturn<ResponseBase<QuickStartWizardGroupResponse>>\n{\n public email: string|null;\n public name: string|null;\n public id: number|null;\n public useAuthCode: boolean|null;\n public locationId: number|null;\n public firstStockId: number|null;\n public followupStockId: number|null;\n public otherStocks: QuickStartWizardGroupStock[]|null;\n\n public constructor(init?: Partial<QuickStartWizardSaveGroupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardSaveGroupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<QuickStartWizardGroupResponse>(); }\n}\n(QuickStartWizardSaveGroupRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardPractitionersRequest implements IReturn<ResponseBase<QuickStartWizardPractitionerResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<QuickStartWizardPractitionersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardPractitionersRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<QuickStartWizardPractitionerResponse>(); }\n}\n(QuickStartWizardPractitionersRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardGetPractitionerRequest implements IReturn<ResponseBase<QuickStartWizardPractitionerResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<QuickStartWizardGetPractitionerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardGetPractitionerRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<QuickStartWizardPractitionerResponse>(); }\n}\n(QuickStartWizardGetPractitionerRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardSavePractitionerRequest implements IReturn<ResponseBase<number>>\n{\n public id: number|null;\n public title: string|null;\n public gender: string|null;\n public forename: string|null;\n public surname: string|null;\n public email: string|null;\n public mobile: string|null;\n public firstStockId: number|null;\n public followupStockId: number|null;\n public locations: number[]|null;\n public onlineGuid: string|null;\n public isActive: boolean|null;\n\n public constructor(init?: Partial<QuickStartWizardSavePractitionerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardSavePractitionerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(QuickStartWizardSavePractitionerRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardUpdateDisciplineRequest implements IReturn<ResponseBase<boolean>>\n{\n public disciplineName: string|null;\n\n public constructor(init?: Partial<QuickStartWizardUpdateDisciplineRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardUpdateDisciplineRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(QuickStartWizardUpdateDisciplineRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardGetDisciplineRequest implements IReturn<ResponseBase<ServiceType>>\n{\n\n public constructor(init?: Partial<QuickStartWizardGetDisciplineRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardGetDisciplineRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ServiceType>(); }\n}\n(QuickStartWizardGetDisciplineRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardGetStocksRequest implements IReturn<ResponseBase<QuickStartWizardGetStocksResponse>>\n{\n\n public constructor(init?: Partial<QuickStartWizardGetStocksRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardGetStocksRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<QuickStartWizardGetStocksResponse>(); }\n}\n(QuickStartWizardGetStocksRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardSaveStocksRequest implements IReturn<ResponseBase<QuickStartWizardStock>>\n{\n public reference: string|null;\n public description: string|null;\n public totalPrice: number|null;\n public appointmentLength: number|null;\n public id: number|null;\n\n public constructor(init?: Partial<QuickStartWizardSaveStocksRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardSaveStocksRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<QuickStartWizardStock>(); }\n}\n(QuickStartWizardSaveStocksRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardStockReminderRequest implements IReturn<ResponseBase<boolean>>\n{\n public reminderDate: string|null;\n\n public constructor(init?: Partial<QuickStartWizardStockReminderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardStockReminderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(QuickStartWizardStockReminderRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardSelectTemplatePackRequest implements IReturn<ResponseBase<boolean>>\n{\n public selectedPack: TemplatePackOptions|null;\n\n public constructor(init?: Partial<QuickStartWizardSelectTemplatePackRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardSelectTemplatePackRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(QuickStartWizardSelectTemplatePackRequest as unknown)[immerable] = true;\n\nexport class QuickStartWizardTemplateOptionsRequest implements IReturn<ResponseBase<QuickStartWizardTemplateOptionsResponse>>\n{\n public type: string|null;\n\n public constructor(init?: Partial<QuickStartWizardTemplateOptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickStartWizardTemplateOptionsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<QuickStartWizardTemplateOptionsResponse>(); }\n}\n(QuickStartWizardTemplateOptionsRequest as unknown)[immerable] = true;\n\n// @Route(\"/pronto/cache/load\", \"POST\")\nexport class ProntoCacheRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<ProntoCacheRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoCacheRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ProntoCacheRequest as unknown)[immerable] = true;\n\nexport class GetClinicDetailsRequest implements IReturn<ResponseBase<GetClinicDetailsResponse>>\n{\n\n public constructor(init?: Partial<GetClinicDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClinicDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetClinicDetailsResponse>(); }\n}\n(GetClinicDetailsRequest as unknown)[immerable] = true;\n\nexport class SubmitClinicDetailsRequest implements IReturn<ResponseBase<boolean>>\n{\n public clinicName: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public homeTelephone: string|null;\n public category: string|null;\n public previousSystem: string|null;\n public clinicCurrencySymbol: string|null;\n\n public constructor(init?: Partial<SubmitClinicDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SubmitClinicDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SubmitClinicDetailsRequest as unknown)[immerable] = true;\n\nexport class GetNetworksRequest implements IReturn<ResponseBase<ProntoNetworkDto[]>>\n{\n\n public constructor(init?: Partial<GetNetworksRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworksRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoNetworkDto[]>(); }\n}\n(GetNetworksRequest as unknown)[immerable] = true;\n\nexport class GetDisciplinesRequest implements IReturn<ResponseBase<ProntoDisciplineDto[]>>\n{\n public networkId: string|null;\n\n public constructor(init?: Partial<GetDisciplinesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDisciplinesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoDisciplineDto[]>(); }\n}\n(GetDisciplinesRequest as unknown)[immerable] = true;\n\nexport class GetReferrersRequest implements IReturn<ResponseBase<ClientWhoBooks[]>>\n{\n\n public constructor(init?: Partial<GetReferrersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferrersRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClientWhoBooks[]>(); }\n}\n(GetReferrersRequest as unknown)[immerable] = true;\n\nexport class GetReferralCharge implements IReturn<ResponseBase<ProntoStockDto[]>>\n{\n\n public constructor(init?: Partial<GetReferralCharge>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferralCharge'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoStockDto[]>(); }\n}\n(GetReferralCharge as unknown)[immerable] = true;\n\nexport class GetReferrersLocations implements IReturn<ResponseBase<LocationDto[]>>\n{\n\n public constructor(init?: Partial<GetReferrersLocations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferrersLocations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LocationDto[]>(); }\n}\n(GetReferrersLocations as unknown)[immerable] = true;\n\nexport class GetReferralChargeOverrides implements IReturn<ResponseBase<ReferrerOverrideNetworkCharge[]>>\n{\n public networkId: string|null;\n public referrerIds: string[]|null;\n\n public constructor(init?: Partial<GetReferralChargeOverrides>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferralChargeOverrides'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferrerOverrideNetworkCharge[]>(); }\n}\n(GetReferralChargeOverrides as unknown)[immerable] = true;\n\nexport class GetProntoPaymentDetailsRequest implements IReturn<ResponseBase<ProntoPaymentResponse>>\n{\n public networkId: string|null;\n public referrerIds: string[]|null;\n\n public constructor(init?: Partial<GetProntoPaymentDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProntoPaymentDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoPaymentResponse>(); }\n}\n(GetProntoPaymentDetailsRequest as unknown)[immerable] = true;\n\nexport class ProntoRegistrationRequest implements IReturn<ResponseBase<ProntoRegistrationResponse>>\n{\n public discountCode: string|null;\n public targetId: string|null;\n public networkId: string|null;\n public clinicServices: ClinicServiceSetupDto[]|null;\n public referrers: string[]|null;\n public referrerIds: string[]|null;\n public isOnline: boolean|null;\n public autoActivate: boolean|null;\n public incrementDiscountCode: boolean|null;\n\n public constructor(init?: Partial<ProntoRegistrationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoRegistrationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProntoRegistrationResponse>(); }\n}\n(ProntoRegistrationRequest as unknown)[immerable] = true;\n\nexport class StartTrialRequest implements IReturn<ResponseBase<StartTrialResponse>>\n{\n\n public constructor(init?: Partial<StartTrialRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StartTrialRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<StartTrialResponse>(); }\n}\n(StartTrialRequest as unknown)[immerable] = true;\n\nexport class StartSubscriptionRequest implements IReturn<ResponseBase<StartTrialResponse>>\n{\n\n public constructor(init?: Partial<StartSubscriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StartSubscriptionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<StartTrialResponse>(); }\n}\n(StartSubscriptionRequest as unknown)[immerable] = true;\n\nexport class ClientDowngradeToProntoOnlyRequest implements IReturn<ResponseBase<ConfirmClientDowngradeToProntoResponse>>\n{\n\n public constructor(init?: Partial<ClientDowngradeToProntoOnlyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientDowngradeToProntoOnlyRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ConfirmClientDowngradeToProntoResponse>(); }\n}\n(ClientDowngradeToProntoOnlyRequest as unknown)[immerable] = true;\n\nexport class GetPatientPrescriptionsRequest implements IReturn<ResponseBase<GetPatientPrescriptionsResponse>>\n{\n public customerId: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<GetPatientPrescriptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPatientPrescriptionsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetPatientPrescriptionsResponse>(); }\n}\n(GetPatientPrescriptionsRequest as unknown)[immerable] = true;\n\nexport class GetPatientPrescriptionsSummaryRequest implements IReturn<ResponseBase<GetPatientPrescriptionsSummaryResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<GetPatientPrescriptionsSummaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPatientPrescriptionsSummaryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetPatientPrescriptionsSummaryResponse>(); }\n}\n(GetPatientPrescriptionsSummaryRequest as unknown)[immerable] = true;\n\n// @Route(\"/prescription/create/nonrx\", \"POST\")\nexport class CreateNonRxPrescriptionsRequest implements IReturn<ResponseBase<CreateNonRxPrescriptionsResponse>>\n{\n public vpid: string|null;\n // @Required()\n public description: string;\n\n // @Required()\n public quantity: string;\n\n // @Required()\n public directions: string;\n\n public action: string|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<CreateNonRxPrescriptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateNonRxPrescriptionsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CreateNonRxPrescriptionsResponse>(); }\n}\n(CreateNonRxPrescriptionsRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/allowed/add/{LocationId}\")\nexport class AddLocationRequest implements IReturn<ResponseBase<AddLocationResponse>>, ILocationId\n{\n public locationId: number|null;\n\n public constructor(init?: Partial<AddLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AddLocationResponse>(); }\n}\n(AddLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/all\", \"GET\")\nexport class AllLocationRequest implements IReturn<ResponseBase<LocationResponse>>, ILocationIds, IGet\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AllLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LocationResponse>(); }\n}\n(AllLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/search\", \"POST\")\nexport class LocationSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<Location>>\n{\n public name: string|null;\n public status: number|null;\n\n public constructor(init?: Partial<LocationSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Location>(); }\n}\n(LocationSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/search/ids\", \"POST\")\nexport class LocationsSearchIdsRequest implements IReturn<ResponseBase<Location>>, ILocationIds\n{\n public ids: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<LocationsSearchIdsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationsSearchIdsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Location>(); }\n}\n(LocationsSearchIdsRequest as unknown)[immerable] = true;\n\nexport class LocationsExportRequest implements IReturn<ResponseBase<string>>, ILocationIds\n{\n public query: LocationSearchRequest|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<LocationsExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationsExportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(LocationsExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/{LocationId}\", \"GET\")\nexport class LocationGetRequest implements IReturn<ResponseBase<LocationResponse>>, ILocationId\n{\n public locationId: number|null;\n public sort: QueryField[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<LocationGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LocationResponse>(); }\n}\n(LocationGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/facilities\", \"GET\")\nexport class GetFacilitiesListRequest implements IReturn<ResponseBase<LocationFacilities>>\n{\n\n public constructor(init?: Partial<GetFacilitiesListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetFacilitiesListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LocationFacilities>(); }\n}\n(GetFacilitiesListRequest as unknown)[immerable] = true;\n\n// @Route(\"/locations/save\", \"POST\")\nexport class LocationPostRequest implements IReturn<Location>\n{\n public id: number|null;\n public name: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public fax: string|null;\n public email: string|null;\n public web: string|null;\n public dnaStockId: number|null;\n public cancelStockId: number|null;\n public dnaAmount: number|null;\n public cancelAmount: number|null;\n public status: string|null;\n public directions: string|null;\n public reminderTemplateEmail_TM3: string|null;\n public reminderTemplateSMS_TM3: string|null;\n public facilities: LocationFacilities|null;\n public onlineGuid: string|null;\n\n public constructor(init?: Partial<LocationPostRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Location(); }\n}\n(LocationPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/exercise/{CustomerId}/{PractitionerId}\")\nexport class ExercisePrescriberRequest implements ICustomerId\n{\n public customerId: number|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<ExercisePrescriberRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExercisePrescriberRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(ExercisePrescriberRequest as unknown)[immerable] = true;\n\n// @Route(\"/wibbi/{CustomerId}/{PractitionerId}\")\nexport class PhysiotecRequest implements ICustomerId\n{\n public customerId: number|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<PhysiotecRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysiotecRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PhysiotecRequest as unknown)[immerable] = true;\n\n// @Route(\"/physiotools/{CustomerId}/{PractitionerId}\")\nexport class PhysiotoolsRequest implements ICustomerId\n{\n public customerId: number|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<PhysiotoolsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysiotoolsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PhysiotoolsRequest as unknown)[immerable] = true;\n\n// @Route(\"/physitrack/{CustomerId}/{PractitionerId}\")\nexport class PhysitrackRequest implements ICustomerId\n{\n public customerId: number|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<PhysitrackRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysitrackRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PhysitrackRequest as unknown)[immerable] = true;\n\n// @Route(\"/salaso/{CustomerId}/{PractitionerId}\", \"GET\")\nexport class SalasoRequest implements ICustomerId\n{\n public customerId: number|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<SalasoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SalasoRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(SalasoRequest as unknown)[immerable] = true;\n\n// @Route(\"/signaturerx/integration\")\nexport class SignatureRxRequest implements IReturn<ResponseBase<SignatureRxResponse>>\n{\n public signatureRxIntegrationCode: string|null;\n\n public constructor(init?: Partial<SignatureRxRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SignatureRxRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SignatureRxResponse>(); }\n}\n(SignatureRxRequest as unknown)[immerable] = true;\n\nexport class CreatePrescriptionRequest implements IReturn<ResponseBase<CreatePrescriptionResponse>>\n{\n // @Required()\n public action: PrescriptionActions;\n\n public vpid: string|null;\n // @Required()\n public description: string;\n\n // @Required()\n public quantity: string;\n\n // @Required()\n public directions: string;\n\n // @Required()\n public securePin: string;\n\n public customerId: number|null;\n\n public constructor(init?: Partial<CreatePrescriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreatePrescriptionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CreatePrescriptionResponse>(); }\n}\n(CreatePrescriptionRequest as unknown)[immerable] = true;\n\n// @Route(\"/icd9/search\", \"POST\")\nexport class ICD9SearchRequest implements IReturn<ResponseBase<ICD9>>\n{\n\n public constructor(init?: Partial<ICD9SearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ICD9SearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ICD9>(); }\n}\n(ICD9SearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/{Password}/jobs/\")\nexport class HangfireRequest implements IReturn<ResponseBase<JobDto>>\n{\n public password: string|null;\n public skip: number|null;\n public take: number|null;\n public recurring: boolean|null;\n\n public constructor(init?: Partial<HangfireRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'HangfireRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<JobDto>(); }\n}\n(HangfireRequest as unknown)[immerable] = true;\n\nexport class FormByGuidRequest implements IReturn<ResponseBase<FormReportResponse>>\n{\n public globalId: string|null;\n\n public constructor(init?: Partial<FormByGuidRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FormByGuidRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<FormReportResponse>(); }\n}\n(FormByGuidRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/reports/{PatientId}\")\nexport class FormReportsRequest implements IReturn<ResponseBase<FormReportResponse>>\n{\n public patientId: number|null;\n public includeClinical: boolean|null;\n public take: number|null;\n public onlyRequiringAction: boolean|null;\n\n public constructor(init?: Partial<FormReportsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FormReportsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<FormReportResponse>(); }\n}\n(FormReportsRequest as unknown)[immerable] = true;\n\nexport class DeleteFormTemplateRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteFormTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteFormTemplateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteFormTemplateRequest as unknown)[immerable] = true;\n\nexport class ArchiveFormTemplateRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ArchiveFormTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ArchiveFormTemplateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ArchiveFormTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/templates\", \"Post\")\nexport class FormTemplatesRequest implements IReturn<ResponseBase<FormTemplatesResponse>>\n{\n public types: string[]|null;\n\n public constructor(init?: Partial<FormTemplatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FormTemplatesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<FormTemplatesResponse>(); }\n}\n(FormTemplatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/template/editor/{Id}\")\nexport class FormTemplateEditorRequest\n{\n public id: number|null;\n\n public constructor(init?: Partial<FormTemplateEditorRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FormTemplateEditorRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(FormTemplateEditorRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/submit\")\nexport class SubmitFormRequest implements IReturn<boolean>\n{\n public recordedBy: number|null;\n public templateId: string|null;\n public globalId: string|null;\n public reportData: string|null;\n public updates: Update[]|null;\n public patientId: number|null;\n public caseId: number|null;\n\n public constructor(init?: Partial<SubmitFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SubmitFormRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(SubmitFormRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/complete\")\nexport class CompleteFormRequest implements IReturn<boolean>\n{\n public id: string|null;\n public patientId: number|null;\n public templateId: string|null;\n public caseId: number|null;\n public updates: Update[]|null;\n public reportData: string|null;\n public signature: string|null;\n\n public constructor(init?: Partial<CompleteFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CompleteFormRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(CompleteFormRequest as unknown)[immerable] = true;\n\nexport class PinUnlockRequest implements IReturn<ResponseBase<boolean>>\n{\n public pin: string|null;\n public unlock: boolean|null;\n\n public constructor(init?: Partial<PinUnlockRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PinUnlockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PinUnlockRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/send\")\nexport class SendFormRequest implements IReturn<boolean>\n{\n public patientId: number|null;\n public templateId: string|null;\n public caseId: number|null;\n public type: string|null;\n public globalId: string|null;\n public isNew: boolean|null;\n\n public constructor(init?: Partial<SendFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SendFormRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(SendFormRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/cancel\")\nexport class CancelFormRequest implements IReturn<boolean>\n{\n public id: string|null;\n\n public constructor(init?: Partial<CancelFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancelFormRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(CancelFormRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/communication\")\nexport class UpdateCommunicationTemplate implements IReturn<boolean>\n{\n public templateId: string|null;\n public smsTemplate: string|null;\n public emailTemplate: string|null;\n\n public constructor(init?: Partial<UpdateCommunicationTemplate>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateCommunicationTemplate'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(UpdateCommunicationTemplate as unknown)[immerable] = true;\n\nexport class UpdateFormStatusRequest implements IReturn<ResponseBase<T>>\n{\n public status: FormStatus|null;\n public id: number|null;\n\n public constructor(init?: Partial<UpdateFormStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateFormStatusRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateFormStatusRequest as unknown)[immerable] = true;\n\n// @Route(\"/form/decline\")\nexport class DeclineFormRequest implements IReturn<boolean>\n{\n public id: string|null;\n\n public constructor(init?: Partial<DeclineFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeclineFormRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(DeclineFormRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/classes\", \"POST\")\nexport class ClassesRequest implements IReturn<ResponseBase<ClassesResponse>>\n{\n public fromDate: string|null;\n public showWeekends: boolean|null;\n\n public constructor(init?: Partial<ClassesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClassesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClassesResponse>(); }\n}\n(ClassesRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/classes/filter\", \"POST\")\nexport class FilterClassesRequest implements IReturn<ResponseBase<ClassesResponse>>\n{\n public fromDate: string|null;\n public classTypeIds: number[]|null;\n public courseTypeIds: number[]|null;\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public hideCancellations: boolean|null;\n public showWeekends: boolean|null;\n\n public constructor(init?: Partial<FilterClassesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FilterClassesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClassesResponse>(); }\n}\n(FilterClassesRequest as unknown)[immerable] = true;\n\nexport class PatientClassesRequest\n{\n public patientId: number|null;\n\n public constructor(init?: Partial<PatientClassesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientClassesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PatientClassesRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/prepaid/classes/{PatientId}\", \"POST\")\nexport class PatientPrePaidClassRequest implements IReturn<ResponseBase<PatientClass>>\n{\n public patientId: number|null;\n public prePaidItemIds: number[]|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<PatientPrePaidClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientPrePaidClassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PatientClass>(); }\n}\n(PatientPrePaidClassRequest as unknown)[immerable] = true;\n\n// @Route(\"/dashboard\")\nexport class DashboardRequest implements IReturn<ResponseBase<DashboardResponse>>, IFilterServiceTypeManually\n{\n\n public constructor(init?: Partial<DashboardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DashboardRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DashboardResponse>(); }\n}\n(DashboardRequest as unknown)[immerable] = true;\n\n// @Route(\"/dashboard/list\")\nexport class DashboardListRequest\n{\n public startDate: string|null;\n public endDate: string|null;\n public locationIds: number[]|null;\n public practitionerIds: number[]|null;\n public roomIds: number[]|null;\n\n public constructor(init?: Partial<DashboardListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DashboardListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(DashboardListRequest as unknown)[immerable] = true;\n\nexport class TimelineRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<Timeline>>, ISecurityLocator\n{\n public mode: FileAreaType|null;\n public id: number|null;\n public types: TimelineType[]|null;\n public subTypes: string[]|null;\n public linkedObjectTypes: TimelineLinkedObjectType[]|null;\n public contexts: TimelineContextObjectType[]|null;\n public context: TimelineContextObjectType|null;\n public contextId: number|null;\n public linkedObjectType: TimelineLinkedObjectType|null;\n public linkedObjectId: number|null;\n public securityLocator: Func<Object, IClientDbAccess, SecurityDto>|null;\n\n public constructor(init?: Partial<TimelineRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'TimelineRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Timeline>(); }\n}\n(TimelineRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/anonymise\")\nexport class AnonymiseCustomerRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public id: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<AnonymiseCustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AnonymiseCustomerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AnonymiseCustomerRequest as unknown)[immerable] = true;\n\nexport class CustomerUpcomingAppointmentRequest implements IReturn<ResponseBase<number>>, ICustomerId, IFilterServiceTypeManually\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<CustomerUpcomingAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerUpcomingAppointmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(CustomerUpcomingAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/appointments/{CustomerId}\")\n// @Route(\"/customer/appointments/{CustomerId}/{CaseId}\")\nexport class CustomerAppointmentRequest implements IReturn<ResponseBase<AppointmentResponse>>, ICustomerId, IFilterServiceTypeManually\n{\n public customerId: number|null;\n public appointmentId: number|null;\n public prePaidItemIds: number[]|null;\n public caseId: number|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<CustomerAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerAppointmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AppointmentResponse>(); }\n}\n(CustomerAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/download/patient\")\nexport class DownloadPatientRequest implements ICustomerId\n{\n public customerId: number|null;\n public requestDate: string|null;\n public demographic: boolean|null;\n public clinical: boolean|null;\n public financial: boolean|null;\n public documents: boolean|null;\n public forms: boolean|null;\n public full: boolean|null;\n\n public constructor(init?: Partial<DownloadPatientRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadPatientRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(DownloadPatientRequest as unknown)[immerable] = true;\n\n// @Route(\"/patient/{Id}/cases\")\nexport class PatientCaseSearchRequest implements IReturn<ResponseBase<CaseSearchResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public sort: QueryField[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<PatientCaseSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientCaseSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseSearchResponse>(); }\n}\n(PatientCaseSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/consent\", \"GET\")\nexport class OnlineConsentRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<OnlineConsentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineConsentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineConsentRequest as unknown)[immerable] = true;\n\n// @Route(\"/consent/change\", \"POST\")\nexport class OnlineConsentChangeRequest extends OnlineConsent implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<OnlineConsentChangeRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineConsentChangeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineConsentChangeRequest as unknown)[immerable] = true;\n\n// @Route(\"/batchEmail\")\nexport class CustomBatchEmailRequest implements ISecurityIds\n{\n public ids: BatchEmailRequestObject[]|null;\n public template: string|null;\n public contactId: number|null;\n public securityIds: number[]|null;\n\n public constructor(init?: Partial<CustomBatchEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomBatchEmailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CustomBatchEmailRequest as unknown)[immerable] = true;\n\n// @Route(\"/payment/emailReceipt\")\nexport class PaymentReceiptRequest implements ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public mode: string|null;\n public template: string|null;\n\n public constructor(init?: Partial<PaymentReceiptRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentReceiptRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(PaymentReceiptRequest as unknown)[immerable] = true;\n\n// @Route(\"/quickbill/email\")\nexport class QuickBillEmailRequest implements ISecurityId, ISecurityType\n{\n public id: number|null;\n public securityId: number|null;\n public type: string|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<QuickBillEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'QuickBillEmailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(QuickBillEmailRequest as unknown)[immerable] = true;\n\n// @Route(\"/email\")\nexport class CustomEmailRequest implements ISecurityId, ISecurityType\n{\n public to: string[]|null;\n public from: string|null;\n public cc: string[]|null;\n public bcc: string[]|null;\n public subject: string|null;\n public message: string|null;\n public type: string|null;\n public typeId: number|null;\n public medicalContactId: number|null;\n public fileName: string|null;\n public attachments: AttachmentGroup|null;\n public logMessage: string|null;\n public createLog: boolean|null;\n public createDocumentHistory: boolean|null;\n public securityId: number|null;\n public securityType: string|null;\n public calendar: string|null;\n public isOnline: boolean|null;\n public fallbackCustomerId: number|null;\n public typeGuid: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CustomEmailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomEmailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CustomEmailRequest as unknown)[immerable] = true;\n\n// @Route(\"/ccl/{ClientID}\")\nexport class ClearCachedLicenseRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedLicenseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedLicenseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedLicenseRequest as unknown)[immerable] = true;\n\n// @Route(\"/ccp/{ClientID}\")\nexport class ClearCachedPermissionsRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedPermissionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedPermissionsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedPermissionsRequest as unknown)[immerable] = true;\n\n// @Route(\"/ccc/{ClientID}\")\nexport class ClearCachedConfigRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedConfigRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedConfigRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedConfigRequest as unknown)[immerable] = true;\n\n// @Route(\"/ccwt/{ClientID}\")\nexport class ClearCachedWebTemplatesRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedWebTemplatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedWebTemplatesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedWebTemplatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/ccwr/{ClientID}\")\nexport class ClearCachedWebReportsRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedWebReportsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedWebReportsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedWebReportsRequest as unknown)[immerable] = true;\n\n// @Route(\"/config/clear/{ClientId}/{Key}\")\nexport class ClearCachedConfig implements IReturn<Object>\n{\n public key: string|null;\n public clientId: string|null;\n\n public constructor(init?: Partial<ClearCachedConfig>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedConfig'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedConfig as unknown)[immerable] = true;\n\n// @Route(\"/ccek/{ClientID}\")\nexport class ClearCachedExtractionKeyRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedExtractionKeyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedExtractionKeyRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedExtractionKeyRequest as unknown)[immerable] = true;\n\n// @Route(\"/hangfire/trigger/{Code}/{Job}\")\nexport class HangfireJobTrigger implements IReturn<Object>\n{\n public job: string|null;\n public code: string|null;\n\n public constructor(init?: Partial<HangfireJobTrigger>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'HangfireJobTrigger'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(HangfireJobTrigger as unknown)[immerable] = true;\n\n// @Route(\"/ccj/{ClientId}\")\nexport class ClearCachedJobsRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedJobsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedJobsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedJobsRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/labels\")\nexport class ClinicalLabelRequest\n{\n\n public constructor(init?: Partial<ClinicalLabelRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalLabelRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(ClinicalLabelRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/reportingfields\")\nexport class ClinicalReportingFieldRequest implements IReturn<ResponseBase<ClinicalReportingFieldResponse>>\n{\n\n public constructor(init?: Partial<ClinicalReportingFieldRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalReportingFieldRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicalReportingFieldResponse>(); }\n}\n(ClinicalReportingFieldRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/diagnosisCodes\", \"GET\")\nexport class ClinicalSettingsDiagnosisRequest implements IReturn<ResponseBase<CustomListItemResponse>>\n{\n public text: string|null;\n public bodySite: string|null;\n public mapping: string|null;\n\n public constructor(init?: Partial<ClinicalSettingsDiagnosisRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsDiagnosisRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomListItemResponse>(); }\n}\n(ClinicalSettingsDiagnosisRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/diagnosisCodes\", \"POST\")\nexport class ClinicalSettingsDiagnosisRequestPost implements IReturn<DiagnosisCode>\n{\n public text: string|null;\n public bodySite: string|null;\n public mapping: string|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<ClinicalSettingsDiagnosisRequestPost>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsDiagnosisRequestPost'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DiagnosisCode(); }\n}\n(ClinicalSettingsDiagnosisRequestPost as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/diagnosisCodes/delete\")\nexport class ClinicalSettingsDeleteDiagnosisRequest implements IReturnVoid\n{\n public text: string|null;\n public bodySite: string|null;\n\n public constructor(init?: Partial<ClinicalSettingsDeleteDiagnosisRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsDeleteDiagnosisRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ClinicalSettingsDeleteDiagnosisRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/mytemplates\")\n// @Route(\"/clinical/settings/mytemplates/{Id}\")\nexport class ClinicalMyTemplatesRequest implements IReturn<ResponseBase<ClinicalMyTemplatesResponse>>, ILocationId\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public type: string|null;\n public body: string|null;\n public summary: string|null;\n public globalId: string|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n public format: BlockTemplateFormat|null;\n public signatureRequired: boolean|null;\n\n public constructor(init?: Partial<ClinicalMyTemplatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalMyTemplatesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicalMyTemplatesResponse>(); }\n}\n(ClinicalMyTemplatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/mytemplates/delete\")\nexport class ClinicalMyTemplatesDeleteRequest implements IReturn<ResponseBase<ClinicalMyTemplatesResponse>>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ClinicalMyTemplatesDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalMyTemplatesDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClinicalMyTemplatesResponse>(); }\n}\n(ClinicalMyTemplatesDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/mytemplates/default\")\nexport class ClinicalMyTemplatesDefaultRequest implements IReturn<ResponseBase<ClinicalMyTemplatesResponse>>, ILocationId\n{\n public globalId: string|null;\n public serviceTypeId: number|null;\n public type: string|null;\n public isFirst: boolean|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ClinicalMyTemplatesDefaultRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalMyTemplatesDefaultRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClinicalMyTemplatesResponse>(); }\n}\n(ClinicalMyTemplatesDefaultRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/mytemplates/clone/{Id}\")\nexport class ClinicalMyTemplatesCloneRequest implements IReturn<ResponseBase<ClinicalMyTemplatesResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ClinicalMyTemplatesCloneRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalMyTemplatesCloneRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicalMyTemplatesResponse>(); }\n}\n(ClinicalMyTemplatesCloneRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/flags/used\", \"GET\")\nexport class UsedFlagsRequest implements IReturn<ResponseBase<Lookup>>\n{\n\n public constructor(init?: Partial<UsedFlagsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UsedFlagsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Lookup>(); }\n}\n(UsedFlagsRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/flags\", \"GET\")\nexport class ClinicalSettingsFlagsRequest implements IReturn<ClinicalSettingsFlagsResponse>\n{\n public colour: string|null;\n public title: string|null;\n\n public constructor(init?: Partial<ClinicalSettingsFlagsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsFlagsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ClinicalSettingsFlagsResponse(); }\n}\n(ClinicalSettingsFlagsRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/flags\", \"POST\")\nexport class ClinicalSettingsFlagsRequestPost implements IReturn<ResponseBase<boolean>>\n{\n public colour: string|null;\n public title: string|null;\n\n public constructor(init?: Partial<ClinicalSettingsFlagsRequestPost>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsFlagsRequestPost'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClinicalSettingsFlagsRequestPost as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/flags/acknowledge\")\nexport class ClinicalSettingsAcknowledgeFlagsRequest implements IReturn<ResponseBase<string>>, ILocationId\n{\n public colour: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ClinicalSettingsAcknowledgeFlagsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsAcknowledgeFlagsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(ClinicalSettingsAcknowledgeFlagsRequest as unknown)[immerable] = true;\n\n// @Route(\"/integrations\", \"GET\")\nexport class ClinicalSettingsIntegrationsRequest implements IReturn<ResponseBase<SystemConfig>>\n{\n\n public constructor(init?: Partial<ClinicalSettingsIntegrationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsIntegrationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SystemConfig>(); }\n}\n(ClinicalSettingsIntegrationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/integrations\", \"POST\")\nexport class ClinicalSettingsIntegrationsRequestPost implements IReturn<ResponseBase<boolean>>\n{\n public settingsToUpdate: SystemConfig[]|null;\n\n public constructor(init?: Partial<ClinicalSettingsIntegrationsRequestPost>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsIntegrationsRequestPost'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClinicalSettingsIntegrationsRequestPost as unknown)[immerable] = true;\n\n// @Route(\"/integrations/physitrack\")\nexport class ClinicalSettingsPhysitrackIntegrationRequest implements IReturn<ResponseBase<PractitionerResponse>>\n{\n\n public constructor(init?: Partial<ClinicalSettingsPhysitrackIntegrationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsPhysitrackIntegrationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PractitionerResponse>(); }\n}\n(ClinicalSettingsPhysitrackIntegrationRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/fixconvertedimages\")\nexport class ClinicalSettingsFixConvertedImagesRequest implements IReturn<ResponseBase<boolean>>\n{\n public email: string|null;\n\n public constructor(init?: Partial<ClinicalSettingsFixConvertedImagesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalSettingsFixConvertedImagesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClinicalSettingsFixConvertedImagesRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/settings/mytemplates/hide\")\nexport class ClinicalMyTemplatesHideRequest implements IReturn<ResponseBase<ClinicalMyTemplatesResponse>>\n{\n public id: number|null;\n public archived: boolean|null;\n\n public constructor(init?: Partial<ClinicalMyTemplatesHideRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalMyTemplatesHideRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ClinicalMyTemplatesResponse>(); }\n}\n(ClinicalMyTemplatesHideRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookups/nested/search\", \"POST\")\nexport class CustomLookupSearchRequest implements IReturn<ResponseBase<CustomLookupResponse>>\n{\n public term: string|null;\n public terms: string[]|null;\n\n public constructor(init?: Partial<CustomLookupSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomLookupSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomLookupResponse>(); }\n}\n(CustomLookupSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookups/nested\", \"POST\")\n// @Route(\"/lookups/nested/{Id}\", \"GET, PUT, DELETE\")\nexport class CustomLookupRequest implements IReturn<ResponseBase<CustomLookupResponse>>\n{\n public id: number|null;\n public name: string|null;\n public value: string|null;\n public alternates: string[]|null;\n public groupId: number|null;\n public serviceTypeId: number|null;\n\n public constructor(init?: Partial<CustomLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomLookupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomLookupResponse>(); }\n}\n(CustomLookupRequest as unknown)[immerable] = true;\n\nexport class CustomLookupsPutRequest implements IReturn<ResponseBase<boolean>>\n{\n public lookups: CustomLookupRequest[]|null;\n\n public constructor(init?: Partial<CustomLookupsPutRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomLookupsPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CustomLookupsPutRequest as unknown)[immerable] = true;\n\n// @Route(\"/lookups/nested/alternates\")\nexport class AlternateLookupRequest implements IReturn<ResponseBase<{ [index:string]: { [index:string]: string; }; }>>\n{\n\n public constructor(init?: Partial<AlternateLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlternateLookupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: { [index:string]: string; }; }>(); }\n}\n(AlternateLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/keepalive\", \"POST\")\nexport class KeepAliveRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<KeepAliveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'KeepAliveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(KeepAliveRequest as unknown)[immerable] = true;\n\n// @Route(\"/sso\")\nexport class SsoRequest\n{\n public sso: string|null;\n public sig: string|null;\n\n public constructor(init?: Partial<SsoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SsoRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(SsoRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/templates\", \"GET\")\nexport class ClinicalTemplateRequest implements IReturn<ResponseBase<ClinicalTemplatesResponse>>\n{\n\n public constructor(init?: Partial<ClinicalTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicalTemplatesResponse>(); }\n}\n(ClinicalTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/templates/type\", \"POST\")\n// @Route(\"/templates/type/{Type}\", \"POST\")\nexport class TemplatesByTypeRequest implements IReturn<ResponseBase<Template>>\n{\n public type: string|null;\n public types: string[]|null;\n\n public constructor(init?: Partial<TemplatesByTypeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TemplatesByTypeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Template>(); }\n}\n(TemplatesByTypeRequest as unknown)[immerable] = true;\n\nexport class TemplateRequest implements IReturn<ResponseBase<TemplateResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<TemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TemplateResponse>(); }\n}\n(TemplateRequest as unknown)[immerable] = true;\n\nexport class SaveTemplateRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n public body: string|null;\n public name: string|null;\n public signatureRequired: boolean|null;\n\n public constructor(init?: Partial<SaveTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveTemplateRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SaveTemplateRequest as unknown)[immerable] = true;\n\nexport class ClickAccountPaymentsStatsRequest implements IReturn<ResponseBase<ClickAccountPaymentsStatsResponse>>\n{\n public accountId: number|null;\n\n public constructor(init?: Partial<ClickAccountPaymentsStatsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickAccountPaymentsStatsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickAccountPaymentsStatsResponse>(); }\n}\n(ClickAccountPaymentsStatsRequest as unknown)[immerable] = true;\n\nexport class ClickAccountInvoiceStatsRequest implements IReturn<ResponseBase<ClickAccountInvoiceStatsResponse>>\n{\n public accountId: number|null;\n\n public constructor(init?: Partial<ClickAccountInvoiceStatsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickAccountInvoiceStatsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickAccountInvoiceStatsResponse>(); }\n}\n(ClickAccountInvoiceStatsRequest as unknown)[immerable] = true;\n\nexport class ClickAccountUninvoicedChargesCountRequest implements IReturn<ResponseBase<ClickAccountUninvoicedChargesCountResponse>>\n{\n public accountId: number|null;\n\n public constructor(init?: Partial<ClickAccountUninvoicedChargesCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickAccountUninvoicedChargesCountRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickAccountUninvoicedChargesCountResponse>(); }\n}\n(ClickAccountUninvoicedChargesCountRequest as unknown)[immerable] = true;\n\nexport class ClickAccountBusinessUninvoicedChargesCountRequest implements IReturn<ResponseBase<ClickAccountUninvoicedChargesCountResponse>>\n{\n public accountId: number|null;\n\n public constructor(init?: Partial<ClickAccountBusinessUninvoicedChargesCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickAccountBusinessUninvoicedChargesCountRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickAccountUninvoicedChargesCountResponse>(); }\n}\n(ClickAccountBusinessUninvoicedChargesCountRequest as unknown)[immerable] = true;\n\nexport class ClickAccountBusinessInvoiceStatsRequest implements IReturn<ResponseBase<ClickAccountInvoiceStatsResponse>>\n{\n public accountId: number|null;\n\n public constructor(init?: Partial<ClickAccountBusinessInvoiceStatsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickAccountBusinessInvoiceStatsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickAccountInvoiceStatsResponse>(); }\n}\n(ClickAccountBusinessInvoiceStatsRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/print\", \"POST\")\nexport class CasePrintingRequest implements IReturn<ResponseBase<CasePrintingResponse>>, ISecurityId, IFilterServiceTypeManually\n{\n public id: number|null;\n public locationIds: number[]|null;\n public items: CasePrintingItem[]|null;\n public goals: number[]|null;\n public scores: number[]|null;\n public discharge: boolean|null;\n public pmh: boolean|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CasePrintingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CasePrintingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CasePrintingResponse>(); }\n}\n(CasePrintingRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{id}/reports/search\", \"GET\")\nexport class CaseReportSearchRequest implements IReturn<ResponseBase<CaseReportSearchResponse>>, ILocationIds, ISecurityId\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseReportSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReportSearchRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseReportSearchResponse>(); }\n}\n(CaseReportSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/reports\", \"POST\")\n// @Route(\"/cases/{CaseId}/reports/{Id}\", \"PUT\")\nexport class CaseReportRequest extends CaseReport implements IReturn<ResponseBase<CaseReport>>, IHasCaseId, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseReport>(); }\n}\n(CaseReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/reports/{Id}/submit\", \"POST\")\nexport class CaseReportSubmitRequest extends CaseReport implements IReturn<ResponseBase<CaseReport>>, IHasCaseId, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseReportSubmitRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReportSubmitRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseReport>(); }\n}\n(CaseReportSubmitRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/reports/{Id}/clone\", \"POST\")\nexport class CaseReportCloneRequest extends CaseReport implements IReturn<ResponseBase<Object>>, IHasCaseId, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseReportCloneRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReportCloneRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(CaseReportCloneRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/reports/{Id}/acknowledge\", \"POST\")\nexport class CaseReportAcknowledgeRequest implements IReturn<Object>, ISecurityId\n{\n public id: string|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseReportAcknowledgeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReportAcknowledgeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(CaseReportAcknowledgeRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/attachments/{Name}\", \"GET\")\nexport class CaseReportAttachmentRequest implements IReturn<Object>, ISecurityId\n{\n public name: string|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseReportAttachmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReportAttachmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Object(); }\n}\n(CaseReportAttachmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/dashboard/search\")\nexport class CaseDashboardSearchRequest implements IReturn<ResponseBase<CaseDashboardResponse>>, ILocationIds, IFilterServiceTypeManually\n{\n public skip: number|null;\n public take: number|null;\n public awaiting: boolean|null;\n public inTreatment: boolean|null;\n public noNotes: boolean|null;\n public practitionerId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseDashboardSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseDashboardSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseDashboardResponse>(); }\n}\n(CaseDashboardSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/search\")\nexport class CaseSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<CaseSearchResponse>>\n{\n public admittedBetweenDates: DateRange|null;\n public dischargedBetweenDates: DateRange|null;\n public bodySites: string[]|null;\n public diagnosisCode: string[]|null;\n public practitionerIds: number[]|null;\n public id: number|null;\n public businessIds: number[]|null;\n public statuses: number[]|null;\n public name: string|null;\n public searchApplied: boolean|null;\n public userIsPractitioner: boolean|null;\n public dashboardRequest: boolean|null;\n public initialLoad: boolean|null;\n\n public constructor(init?: Partial<CaseSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseSearchResponse>(); }\n}\n(CaseSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/case/{Id}/audit\", \"POST\")\nexport class CaseAudit implements IReturn<CaseAuditResponse>, ILocationIds, ISecurityId\n{\n public id: number|null;\n public userId: number|null;\n public note: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseAudit>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseAudit'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CaseAuditResponse(); }\n}\n(CaseAudit as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/autosave\", \"POST\")\nexport class CaseAutoSaveRequest implements IReturn<AutoSaveResult[]>, ILocationIds\n{\n public id: number|null;\n public updates: AutoSaveUpdate[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseAutoSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseAutoSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<AutoSaveResult>(); }\n}\n(CaseAutoSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/close\", \"POST\")\nexport class CaseCloseRequest implements IReturn<AutoSaveResult[]>, ILocationIds\n{\n public id: number|null;\n public updates: AutoSaveUpdate[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseCloseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseCloseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<AutoSaveResult>(); }\n}\n(CaseCloseRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/delete\", \"POST\")\nexport class CaseDeleteRequest implements IReturn<ResponseBase<boolean>>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/delete\", \"POST\")\nexport class CaseUnlinkAndDelete extends CaseDeleteRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<CaseUnlinkAndDelete>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseUnlinkAndDelete'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseUnlinkAndDelete as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/update\", \"POST\")\nexport class CaseUpdateRequest implements IReturnVoid, ILocationIds\n{\n public id: number|null;\n public updates: AutoSaveUpdate[]|null;\n public lastModified: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseUpdateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CaseUpdateRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/discharge\", \"POST\")\nexport class CaseDischargeRequest implements IReturn<ResponseBase<string>>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseDischargeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseDischargeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(CaseDischargeRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/highlight\", \"POST\")\nexport class CaseHighlightRequest implements IReturn<ResponseBase<boolean>>, ILocationIds\n{\n public id: number|null;\n public type: string|null;\n public highlights: { [index:string]: number[]; }|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseHighlightRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseHighlightRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseHighlightRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}\", \"GET\")\nexport class CaseGetRequest implements IReturn<CaseDetailsDto>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CaseDetailsDto(); }\n}\n(CaseGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/new\", \"GET\")\nexport class CaseNewRequest implements IReturn<CaseDetailsDto>, ILocationIds\n{\n public patientId: number|null;\n public appointmentId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseNewRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseNewRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CaseDetailsDto(); }\n}\n(CaseNewRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/upgrade\")\nexport class CaseUpgradeRequest implements IReturn<ResponseBase<boolean>>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseUpgradeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseUpgradeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseUpgradeRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{id}/history\")\nexport class CaseHistoryRequest implements IReturn<ResponseBase<HistoryResult>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public formStatus: FormStatus[]|null;\n\n public constructor(init?: Partial<CaseHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<HistoryResult>(); }\n}\n(CaseHistoryRequest as unknown)[immerable] = true;\n\n// @Route(\"/case/{CustomerId}\")\n// @Route(\"/case\")\nexport class CaseDropdownRequest implements IReturn<ResponseBase<CaseDropDownResposne>>, ILocationIds\n{\n public skip: number|null;\n public take: number|null;\n public customerId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseDropdownRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseDropdownRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseDropDownResposne>(); }\n}\n(CaseDropdownRequest as unknown)[immerable] = true;\n\n// @Route(\"/case/reviewDate\")\nexport class CaseReviewDateRequest implements IReturn<ResponseBase<boolean>>, ILocationIds\n{\n public caseId: number|null;\n public reviewDate: string|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<CaseReviewDateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseReviewDateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseReviewDateRequest as unknown)[immerable] = true;\n\n// @Route(\"/case/{CaseId}/notes/add\")\nexport class PostCloseNotesRequest implements IReturn<ResponseBase<PostCloseNotesWithUser>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n public treatmentId: number|null;\n public userId: number|null;\n public notes: string|null;\n public date: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<PostCloseNotesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PostCloseNotesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PostCloseNotesWithUser>(); }\n}\n(PostCloseNotesRequest as unknown)[immerable] = true;\n\n// @Route(\"/case/customers/{CustomerId}/{CaseId}\")\nexport class CaseCustomerRequest implements IReturn<ResponseBase<GeneralCustomerResponse>>, ISecurityId\n{\n public customerId: number|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseCustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseCustomerRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GeneralCustomerResponse>(); }\n}\n(CaseCustomerRequest as unknown)[immerable] = true;\n\n// @Route(\"/casecheck/appt\")\nexport class AppointmentCheck implements IReturn<ResponseBase<boolean>>\n{\n public caseId: number|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<AppointmentCheck>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentCheck'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AppointmentCheck as unknown)[immerable] = true;\n\n// @Route(\"/cases/{Id}/background\", \"GET, POST\")\nexport class CaseBackgroundRequest implements IReturn<ResponseBase<CustomerBackgroundResponse>>, ISecurityId\n{\n public id: number|null;\n public data: { [index:string]: Object; }|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CaseBackgroundRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseBackgroundRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomerBackgroundResponse>(); }\n}\n(CaseBackgroundRequest as unknown)[immerable] = true;\n\n// @Route(\"/customer/{CustomerId}/background\", \"GET, POST\")\nexport class CustomerBackgroundRequest implements IReturn<ResponseBase<CustomerBackgroundResponse>>, ICustomerId\n{\n public customerId: number|null;\n public data: { [index:string]: Object; }|null;\n\n public constructor(init?: Partial<CustomerBackgroundRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerBackgroundRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomerBackgroundResponse>(); }\n}\n(CustomerBackgroundRequest as unknown)[immerable] = true;\n\n// @Route(\"/background/{Id}/highlight\", \"POST\")\nexport class BackgroundHighlightRequest implements IReturn<ResponseBase<boolean>>, ILocationIds\n{\n public id: number|null;\n public highlights: { [index:string]: number[]; }|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<BackgroundHighlightRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BackgroundHighlightRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(BackgroundHighlightRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/cache/all\", \"GET\")\nexport class ClinicalCacheRequest implements IReturn<ClinicalCacheResponse>\n{\n\n public constructor(init?: Partial<ClinicalCacheRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalCacheRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ClinicalCacheResponse(); }\n}\n(ClinicalCacheRequest as unknown)[immerable] = true;\n\n// @Route(\"/clinical/logs/{CustomerId}/{CaseId}\")\n// @Route(\"/clinical/logs/{CustomerId}/{CaseId}/{Id}\")\nexport class ClinicalLogRequest implements IReturn<ResponseBase<IPatientInfoResponse>>, ICustomerId, IDepartmentIds\n{\n public id: number|null;\n public customerId: number|null;\n public caseId: number|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<ClinicalLogRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalLogRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<IPatientInfoResponse>(); }\n}\n(ClinicalLogRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/consultation/{TreatmentId}/items/{Id}/highlight\", \"POST\")\nexport class ConsultationItemHighlightRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public treatmentId: number|null;\n public highlights: { [index:string]: number[]; }|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ConsultationItemHighlightRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConsultationItemHighlightRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ConsultationItemHighlightRequest as unknown)[immerable] = true;\n\n// @Route(\"/diagnosiscodes/all\")\nexport class DiagnosisCodeRequest implements IReturn<ResponseBase<CustomListItemResponse>>\n{\n\n public constructor(init?: Partial<DiagnosisCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiagnosisCodeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomListItemResponse>(); }\n}\n(DiagnosisCodeRequest as unknown)[immerable] = true;\n\n// @Route(\"/diagnosiscodes/allVals\")\n// @Route(\"/diagnosiscodes/lookupVals\")\nexport class DiagnosisCodeLookupRequest implements IReturn<ResponseBase<DiagnosisCodeTempResponse>>\n{\n\n public constructor(init?: Partial<DiagnosisCodeLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiagnosisCodeLookupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DiagnosisCodeTempResponse>(); }\n}\n(DiagnosisCodeLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/diagram\", \"POST\")\n// @Route(\"/cases/{CaseId}/diagram/{Id}\", \"PUT, DELETE\")\nexport class DiagramRequest implements IReturn<ClinicalDiagram>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n public treatmentId: number|null;\n public dateTime: string|null;\n public value: { [index:string]: Object; }[]|null;\n\n public constructor(init?: Partial<DiagramRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiagramRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ClinicalDiagram(); }\n}\n(DiagramRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/diagram/{Id}/lock\", \"PUT\")\nexport class DiagramLockRequest implements IReturn<ClinicalDiagram>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<DiagramLockRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DiagramLockRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ClinicalDiagram(); }\n}\n(DiagramLockRequest as unknown)[immerable] = true;\n\nexport class CreatePsfsRequest implements IReturn<ResponseBase<Psfs[]>>\n{\n public caseId: number|null;\n public activities: NewPsfs[]|null;\n public hasInitialValues: boolean|null;\n\n public constructor(init?: Partial<CreatePsfsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreatePsfsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Psfs[]>(); }\n}\n(CreatePsfsRequest as unknown)[immerable] = true;\n\nexport class UpdatePsfsRequest implements IReturn<ResponseBase<Psfs[]>>\n{\n public caseId: number|null;\n public psfs: Psfs[]|null;\n public activities: NewPsfs[]|null;\n\n public constructor(init?: Partial<UpdatePsfsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdatePsfsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Psfs[]>(); }\n}\n(UpdatePsfsRequest as unknown)[immerable] = true;\n\nexport class GetTreatmentRequest implements IReturn<ResponseBase<Treatment>>, ISecurityLocator\n{\n public id: number|null;\n public securityLocator: Func<Object, IClientDbAccess, SecurityDto>|null;\n\n public constructor(init?: Partial<GetTreatmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTreatmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Treatment>(); }\n}\n(GetTreatmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/consultation\", \"POST\")\n// @Route(\"/cases/{CaseId}/consultation/{Id}\", \"PUT, DELETE\")\nexport class TreatmentAutoSaveRequest implements IReturn<TreatmentResult>, ISecurityId\n{\n public id: number|null;\n public appointmentId: number|null;\n public caseId: number|null;\n public details: TreatmentDetails|null;\n public treatment: string|null;\n public locationId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<TreatmentAutoSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentAutoSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new TreatmentResult(); }\n}\n(TreatmentAutoSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/consultation/{Id}\", \"POST\")\nexport class TreatmentSaveRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public lock: boolean|null;\n public updates: DynamicUpdate[]|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<TreatmentSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TreatmentSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/consultation/{Id}/highlight\", \"POST\")\nexport class TreatmentHighlightRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public highlights: { [index:string]: number[]; }|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<TreatmentHighlightRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TreatmentHighlightRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TreatmentHighlightRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/{ScoreId}/entry\", \"POST\")\nexport class ScoreEntryPostRequest extends ScoreEntryRequest implements IReturn<ResponseBase<ScoreEntryResponse>>\n{\n\n public constructor(init?: Partial<ScoreEntryPostRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreEntryPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ScoreEntryResponse>(); }\n}\n(ScoreEntryPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/{ScoreId}/entry/{Id}\", \"PUT\")\nexport class ScoreEntryPutRequest extends ScoreEntryRequest implements IReturn<ResponseBase<ScoreEntryResponse>>\n{\n\n public constructor(init?: Partial<ScoreEntryPutRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreEntryPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ScoreEntryResponse>(); }\n}\n(ScoreEntryPutRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/{ScoreId}/entry/{Id}\", \"DELETE\")\nexport class ScoreEntryDeleteRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n public scoreId: number|null;\n\n public constructor(init?: Partial<ScoreEntryDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreEntryDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ScoreEntryDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/scores/available\", \"POST\")\nexport class AvailableScoresRequest implements IReturn<ResponseBase<CaseScoreGoalResponse>>\n{\n public isFree: boolean|null;\n\n public constructor(init?: Partial<AvailableScoresRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AvailableScoresRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseScoreGoalResponse>(); }\n}\n(AvailableScoresRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/search\", \"POST\")\nexport class ScoreSearchRequest implements IReturn<ResponseBase<ScoreSearchResponse>>, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ScoreSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ScoreSearchResponse>(); }\n}\n(ScoreSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/order\", \"POST\")\nexport class ScoreOrderRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n public order: number[]|null;\n\n public constructor(init?: Partial<ScoreOrderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreOrderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ScoreOrderRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/{Id}\", \"POST\")\nexport class ScoreGetRequest implements IReturn<ScoreResponse>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ScoreGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreGetRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ScoreResponse(); }\n}\n(ScoreGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores\", \"POST\")\nexport class ScorePostRequest extends ScoreRequest implements IReturn<ResponseBase<ScoreResponse>>\n{\n\n public constructor(init?: Partial<ScorePostRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScorePostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ScoreResponse>(); }\n}\n(ScorePostRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/scores/{Id}\", \"PUT\")\nexport class ScorePutRequest extends ScoreRequest implements IReturn<ResponseBase<ScoreResponse>>\n{\n\n public constructor(init?: Partial<ScorePutRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScorePutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ScoreResponse>(); }\n}\n(ScorePutRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/score/{Id}/\", \"DELETE\")\nexport class ScoreDeleteRequest extends ScoreRequest implements IReturn<ResponseBase<ScoreResponse>>\n{\n\n public constructor(init?: Partial<ScoreDeleteRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ScoreDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<ScoreResponse>(); }\n}\n(ScoreDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/{GoalId}/entry\", \"POST\")\nexport class GoalEntryPostRequest extends GoalEntryRequest implements IReturn<ResponseBase<GoalEntryResponse>>, ILocationId\n{\n\n public constructor(init?: Partial<GoalEntryPostRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalEntryPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GoalEntryResponse>(); }\n}\n(GoalEntryPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/{GoalId}/entry/{Id}\", \"PUT\")\nexport class GoalEntryPutRequest extends GoalEntryRequest implements IReturn<ResponseBase<GoalEntryResponse>>, ILocationId\n{\n\n public constructor(init?: Partial<GoalEntryPutRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalEntryPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<GoalEntryResponse>(); }\n}\n(GoalEntryPutRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/{GoalId}/entry/{Id}\", \"DELETE\")\nexport class GoalEntryDeleteRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n public goalId: number|null;\n\n public constructor(init?: Partial<GoalEntryDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalEntryDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(GoalEntryDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/goals/available\", \"POST\")\nexport class AvailableGoalsRequest implements IReturn<ResponseBase<CaseScoreGoalResponse>>\n{\n\n public constructor(init?: Partial<AvailableGoalsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AvailableGoalsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseScoreGoalResponse>(); }\n}\n(AvailableGoalsRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/search\", \"POST\")\nexport class GoalSearchRequest implements IReturn<ResponseBase<GoalSearchResponse>>, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<GoalSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GoalSearchResponse>(); }\n}\n(GoalSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/order\", \"POST\")\nexport class GoalOrderRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public caseId: number|null;\n public securityId: number|null;\n public order: number[]|null;\n\n public constructor(init?: Partial<GoalOrderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalOrderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(GoalOrderRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/{Id}\", \"GET\")\nexport class GoalsGetRequest implements IReturn<GoalResponse>, ILocationId, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<GoalsGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalsGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new GoalResponse(); }\n}\n(GoalsGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals\", \"POST\")\nexport class GoalPostRequest extends GoalRequest implements IReturn<ResponseBase<GoalResponse>>, ILocationId\n{\n\n public constructor(init?: Partial<GoalPostRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GoalResponse>(); }\n}\n(GoalPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/{Id}\", \"PUT\")\nexport class GoalPutRequest extends GoalRequest implements IReturn<ResponseBase<GoalResponse>>, ILocationId\n{\n\n public constructor(init?: Partial<GoalPutRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<GoalResponse>(); }\n}\n(GoalPutRequest as unknown)[immerable] = true;\n\n// @Route(\"/cases/{CaseId}/goals/{Id}\", \"DELETE\")\nexport class GoalDeleteRequest extends GoalRequest implements IReturn<ResponseBase<GoalResponse>>\n{\n public settingId: number|null;\n\n public constructor(init?: Partial<GoalDeleteRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GoalDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<GoalResponse>(); }\n}\n(GoalDeleteRequest as unknown)[immerable] = true;\n\nexport class BulkUpdateFieldRequest implements IReturn<ResponseBase<T>>\n{\n public recordType: BulkActionRecordType|null;\n\n public constructor(init?: Partial<BulkUpdateFieldRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BulkUpdateFieldRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(BulkUpdateFieldRequest as unknown)[immerable] = true;\n\nexport class DiarySMSBulkActionRequest extends DiaryBulkActionBaseRequest implements IReturn<ResponseBase<SMSBulkActionResponse>>\n{\n public templateNames: string[]|null;\n\n public constructor(init?: Partial<DiarySMSBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiarySMSBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SMSBulkActionResponse>(); }\n}\n(DiarySMSBulkActionRequest as unknown)[immerable] = true;\n\nexport class DiaryEmailBulkActionRequest extends DiaryBulkActionBaseRequest implements IReturn<ResponseBase<EmailBulkActionResponse>>\n{\n public templateNames: string[]|null;\n\n public constructor(init?: Partial<DiaryEmailBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryEmailBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<EmailBulkActionResponse>(); }\n}\n(DiaryEmailBulkActionRequest as unknown)[immerable] = true;\n\nexport class DiaryContactBulkActionRequest extends DiaryBulkActionBaseRequest implements IReturn<ResponseBase<ContactBulkActionResponse>>\n{\n public customMessage: string|null;\n\n public constructor(init?: Partial<DiaryContactBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryContactBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ContactBulkActionResponse>(); }\n}\n(DiaryContactBulkActionRequest as unknown)[immerable] = true;\n\nexport class DiaryFormBulkActionRequest extends DiaryBulkActionBaseRequest implements IReturn<ResponseBase<FormBulkActionResponse>>\n{\n public formTemplateIds: string[]|null;\n\n public constructor(init?: Partial<DiaryFormBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryFormBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<FormBulkActionResponse>(); }\n}\n(DiaryFormBulkActionRequest as unknown)[immerable] = true;\n\nexport class DiaryTagBulkActionRequest extends DiaryBulkActionBaseRequest implements IReturn<ResponseBase<TagBulkActionResponse>>\n{\n public tags: string[]|null;\n public tagActionType: TagActionType|null;\n\n public constructor(init?: Partial<DiaryTagBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryTagBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TagBulkActionResponse>(); }\n}\n(DiaryTagBulkActionRequest as unknown)[immerable] = true;\n\nexport class CustomerSMSBulkActionRequest extends CustomerBulkActionBaseRequest implements IReturn<ResponseBase<SMSBulkActionResponse>>\n{\n public templateNames: string[]|null;\n\n public constructor(init?: Partial<CustomerSMSBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerSMSBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SMSBulkActionResponse>(); }\n}\n(CustomerSMSBulkActionRequest as unknown)[immerable] = true;\n\nexport class CustomerEmailBulkActionRequest extends CustomerBulkActionBaseRequest implements IReturn<ResponseBase<EmailBulkActionResponse>>\n{\n public templateNames: string[]|null;\n\n public constructor(init?: Partial<CustomerEmailBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerEmailBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<EmailBulkActionResponse>(); }\n}\n(CustomerEmailBulkActionRequest as unknown)[immerable] = true;\n\nexport class CustomerFormBulkActionRequest extends CustomerBulkActionBaseRequest implements IReturn<ResponseBase<FormBulkActionResponse>>\n{\n public formTemplateIds: string[]|null;\n\n public constructor(init?: Partial<CustomerFormBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerFormBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<FormBulkActionResponse>(); }\n}\n(CustomerFormBulkActionRequest as unknown)[immerable] = true;\n\nexport class CustomerTagBulkActionRequest extends CustomerBulkActionBaseRequest implements IReturn<ResponseBase<TagBulkActionResponse>>\n{\n public tags: string[]|null;\n public tagActionType: TagActionType|null;\n\n public constructor(init?: Partial<CustomerTagBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerTagBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TagBulkActionResponse>(); }\n}\n(CustomerTagBulkActionRequest as unknown)[immerable] = true;\n\nexport class CustomerContactBulkActionRequest extends CustomerBulkActionBaseRequest implements IReturn<ResponseBase<ContactBulkActionResponse>>\n{\n public customMessage: string|null;\n\n public constructor(init?: Partial<CustomerContactBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerContactBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ContactBulkActionResponse>(); }\n}\n(CustomerContactBulkActionRequest as unknown)[immerable] = true;\n\nexport class MailChimpSubscriptionBulkActionRequest extends CustomerBulkActionBaseRequest implements IReturn<ResponseBase<MailChimpSubscriptionBulkActionResponse>>\n{\n public audienceIds: string[]|null;\n\n public constructor(init?: Partial<MailChimpSubscriptionBulkActionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'MailChimpSubscriptionBulkActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MailChimpSubscriptionBulkActionResponse>(); }\n}\n(MailChimpSubscriptionBulkActionRequest as unknown)[immerable] = true;\n\nexport class GetAllAutomationEvents extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<AutomationEvent>>\n{\n public showAll: boolean|null;\n\n public constructor(init?: Partial<GetAllAutomationEvents>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllAutomationEvents'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AutomationEvent>(); }\n}\n(GetAllAutomationEvents as unknown)[immerable] = true;\n\nexport class GetAutomationEvent implements IReturn<ResponseBase<AutomationEvent>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetAutomationEvent>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAutomationEvent'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AutomationEvent>(); }\n}\n(GetAutomationEvent as unknown)[immerable] = true;\n\nexport class SaveAutomationEvent extends AutomationEvent implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<SaveAutomationEvent>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveAutomationEvent'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveAutomationEvent as unknown)[immerable] = true;\n\nexport class GetAllAutomationJobs implements IReturn<ResponseBase<AutomationJob>>\n{\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<GetAllAutomationJobs>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllAutomationJobs'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AutomationJob>(); }\n}\n(GetAllAutomationJobs as unknown)[immerable] = true;\n\nexport class ToggleAutomationJobStatus implements IReturn<ResponseBase<AutomationJob>>\n{\n public id: string|null;\n public isActive: boolean|null;\n\n public constructor(init?: Partial<ToggleAutomationJobStatus>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ToggleAutomationJobStatus'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AutomationJob>(); }\n}\n(ToggleAutomationJobStatus as unknown)[immerable] = true;\n\nexport class CloneAutomationRequest implements IReturn<ResponseBase<string>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<CloneAutomationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CloneAutomationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(CloneAutomationRequest as unknown)[immerable] = true;\n\nexport class ArchiveAutomationRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n public archiveAutomation: boolean|null;\n\n public constructor(init?: Partial<ArchiveAutomationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ArchiveAutomationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ArchiveAutomationRequest as unknown)[immerable] = true;\n\nexport class GetAllTags implements IReturn<ResponseBase<Tag>>\n{\n public skip: number|null;\n public take: number|null;\n public showAll: boolean|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<GetAllTags>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllTags'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Tag>(); }\n}\n(GetAllTags as unknown)[immerable] = true;\n\nexport class GetTag implements IReturn<ResponseBase<Tag>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetTag>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTag'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Tag>(); }\n}\n(GetTag as unknown)[immerable] = true;\n\nexport class SaveTag extends Tag implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<SaveTag>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveTag'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveTag as unknown)[immerable] = true;\n\n// @Route(\"/webinars\")\nexport class WebinarRequest implements IReturn<ResponseBase<WebinarResponse>>\n{\n\n public constructor(init?: Partial<WebinarRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WebinarRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WebinarResponse>(); }\n}\n(WebinarRequest as unknown)[immerable] = true;\n\n// @Route(\"/training\")\nexport class TrainingRequest\n{\n\n public constructor(init?: Partial<TrainingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TrainingRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(TrainingRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/current\", \"GET\")\nexport class GetCurrentUser implements IReturn<CurrentUser>\n{\n\n public constructor(init?: Partial<GetCurrentUser>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCurrentUser'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CurrentUser(); }\n}\n(GetCurrentUser as unknown)[immerable] = true;\n\n// @Route(\"/user/location/change\", \"Post\")\n// @Route(\"/user/location/change/{Id}\", \"Post\")\nexport class ChangeLoggedInLocation implements IReturn<CurrentUser>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ChangeLoggedInLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangeLoggedInLocation'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CurrentUser(); }\n}\n(ChangeLoggedInLocation as unknown)[immerable] = true;\n\n// @Route(\"/user/all\", \"GET\")\nexport class AllUsersRequest implements IReturn<SimpleUser[]>, ILocationIds\n{\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AllUsersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllUsersRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<SimpleUser>(); }\n}\n(AllUsersRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/current/roles\", \"GET\")\nexport class UserRolesRequest\n{\n\n public constructor(init?: Partial<UserRolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UserRolesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(UserRolesRequest as unknown)[immerable] = true;\n\n// @Route(\"/user/verify/{Code}\", \"GET\")\nexport class VerifyCode implements IReturn<CurrentUser>\n{\n public code: string|null;\n\n public constructor(init?: Partial<VerifyCode>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'VerifyCode'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CurrentUser(); }\n}\n(VerifyCode as unknown)[immerable] = true;\n\n// @Route(\"/user/reset\", \"Post\")\nexport class ResetPassword implements IReturn<ResponseBase<boolean>>\n{\n public email: string|null;\n\n public constructor(init?: Partial<ResetPassword>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ResetPassword'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ResetPassword as unknown)[immerable] = true;\n\n// @Route(\"/user/changePassword\", \"Post\")\nexport class ChangePassword implements IReturn<CurrentUser>\n{\n public code: string|null;\n public confirmPassword: string|null;\n public newPassword: string|null;\n public score: number|null;\n\n public constructor(init?: Partial<ChangePassword>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangePassword'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CurrentUser(); }\n}\n(ChangePassword as unknown)[immerable] = true;\n\n// @Route(\"/user/password/change\", \"Post\")\nexport class ChangePasswordRequest implements IReturn<ResponseBase<T>>\n{\n public oldPassword: string|null;\n public newPassword: string|null;\n public score: number|null;\n\n public constructor(init?: Partial<ChangePasswordRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangePasswordRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ChangePasswordRequest as unknown)[immerable] = true;\n\nexport class ChangePINRequest implements IReturn<ResponseBase<string>>\n{\n public password: string|null;\n public pin: string|null;\n\n public constructor(init?: Partial<ChangePINRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangePINRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(ChangePINRequest as unknown)[immerable] = true;\n\nexport class ChangeSignatureRequest implements IReturn<ResponseBase<string>>\n{\n public signature: string|null;\n\n public constructor(init?: Partial<ChangeSignatureRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChangeSignatureRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(ChangeSignatureRequest as unknown)[immerable] = true;\n\n// @Route(\"/logout/soon\")\nexport class LogoutSoonRequest implements IHasAutoRefresh\n{\n public autoRefresh: boolean|null;\n\n public constructor(init?: Partial<LogoutSoonRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LogoutSoonRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LogoutSoonRequest as unknown)[immerable] = true;\n\n// @Route(\"/logout/now\")\nexport class LogoutNowRequest\n{\n\n public constructor(init?: Partial<LogoutNowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LogoutNowRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LogoutNowRequest as unknown)[immerable] = true;\n\nexport class GetAssertionOptions implements IReturn<AssertionOptions>\n{\n public username: string|null;\n public userVerification: string|null;\n\n public constructor(init?: Partial<GetAssertionOptions>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAssertionOptions'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AssertionOptions(); }\n}\n(GetAssertionOptions as unknown)[immerable] = true;\n\nexport class MakeAssertionRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n public rawId: string|null;\n public response: AssertionResponse|null;\n public type: PublicKeyCredentialType|null;\n public extensions: AuthenticationExtensionsClientOutputs|null;\n\n public constructor(init?: Partial<MakeAssertionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MakeAssertionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(MakeAssertionRequest as unknown)[immerable] = true;\n\nexport class MakeCredentialsOptionsRequest implements IReturn<HttpResult>\n{\n public username: string|null;\n public displayName: string|null;\n public attType: string|null;\n public authType: string|null;\n public residentKey: string|null;\n public userVerification: string|null;\n\n public constructor(init?: Partial<MakeCredentialsOptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MakeCredentialsOptionsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(MakeCredentialsOptionsRequest as unknown)[immerable] = true;\n\nexport class RegisterCredentialWithServerRequest implements IReturn<ResponseBase<CredentialMakeResult>>\n{\n public id: string|null;\n public rawId: string|null;\n public type: PublicKeyCredentialType|null;\n public response: ResponseData|null;\n public extensions: AuthenticationExtensionsClientOutputs|null;\n\n public constructor(init?: Partial<RegisterCredentialWithServerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RegisterCredentialWithServerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CredentialMakeResult>(); }\n}\n(RegisterCredentialWithServerRequest as unknown)[immerable] = true;\n\n// @Route(\"/license\")\nexport class LicenseRequest implements IReturn<ResponseBase<LicenseDetailsResponse>>\n{\n\n public constructor(init?: Partial<LicenseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LicenseRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LicenseDetailsResponse>(); }\n}\n(LicenseRequest as unknown)[immerable] = true;\n\nexport class ModularFeaturesRequest implements IReturn<ResponseBase<ModularLicence>>\n{\n\n public constructor(init?: Partial<ModularFeaturesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ModularFeaturesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ModularLicence>(); }\n}\n(ModularFeaturesRequest as unknown)[immerable] = true;\n\n// @Route(\"/modular-licence\")\nexport class LicenceModulesRequest implements IReturn<string>\n{\n\n public constructor(init?: Partial<LicenceModulesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LicenceModulesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return ''; }\n}\n(LicenceModulesRequest as unknown)[immerable] = true;\n\nexport class TwoFactorVerify implements IReturn<ResponseBase<boolean>>\n{\n public code: string|null;\n public remember: boolean|null;\n\n public constructor(init?: Partial<TwoFactorVerify>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TwoFactorVerify'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TwoFactorVerify as unknown)[immerable] = true;\n\nexport class TwoFactorRequestCode implements IReturn<ResponseBase<boolean>>\n{\n public setupNew: boolean|null;\n\n public constructor(init?: Partial<TwoFactorRequestCode>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TwoFactorRequestCode'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TwoFactorRequestCode as unknown)[immerable] = true;\n\nexport class TwoFactorUpdateSecret implements IReturn<ResponseBase<boolean>>\n{\n public secret: string|null;\n public codeForExistingSecret: string|null;\n\n public constructor(init?: Partial<TwoFactorUpdateSecret>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TwoFactorUpdateSecret'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TwoFactorUpdateSecret as unknown)[immerable] = true;\n\n// @Route(\"/{HandlerName}/webhook\")\n// @Route(\"/webhook/{HandlerName}/{Other*}\")\nexport class InboundWebHookRequest implements IReturn<HttpResult>\n{\n public handlerName: string|null;\n public other: string|null;\n public requestStream: string|null;\n\n public constructor(init?: Partial<InboundWebHookRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InboundWebHookRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(InboundWebHookRequest as unknown)[immerable] = true;\n\nexport class GetCustomAttributes implements IReturn<ResponseBase<CustomAttributeDto>>\n{\n public types: string[]|null;\n\n public constructor(init?: Partial<GetCustomAttributes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomAttributes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomAttributeDto>(); }\n}\n(GetCustomAttributes as unknown)[immerable] = true;\n\nexport class GetCustomAttributeLists implements IReturn<GetCustomAttributeListsResponse[]>\n{\n\n public constructor(init?: Partial<GetCustomAttributeLists>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomAttributeLists'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Array<GetCustomAttributeListsResponse>(); }\n}\n(GetCustomAttributeLists as unknown)[immerable] = true;\n\nexport class GetAssignedAttributes implements IReturn<ResponseBase<T>>\n{\n public objectId: number|null;\n public objectGuid: string|null;\n public objectType: string|null;\n public customAttributeTypes: string[]|null;\n\n public constructor(init?: Partial<GetAssignedAttributes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAssignedAttributes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAssignedAttributes as unknown)[immerable] = true;\n\n// @Route(\"/updatecustomattributes\", \"POST\")\nexport class UpdateCustomAttributeRequest implements IReturnVoid\n{\n public objectId: number|null;\n public objectGuid: string|null;\n public objectType: string|null;\n public attributes: AssignedCustomAttributeDto[]|null;\n\n public constructor(init?: Partial<UpdateCustomAttributeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateCustomAttributeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateCustomAttributeRequest as unknown)[immerable] = true;\n\nexport class CreateNewCustomAttributeRequest implements IReturn<ResponseBase<CustomAttributes>>\n{\n public typeId: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<CreateNewCustomAttributeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateNewCustomAttributeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomAttributes>(); }\n}\n(CreateNewCustomAttributeRequest as unknown)[immerable] = true;\n\nexport class DeleteCustomAttributeRequest implements IReturnVoid\n{\n public typeId: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<DeleteCustomAttributeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteCustomAttributeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(DeleteCustomAttributeRequest as unknown)[immerable] = true;\n\nexport class TokenSearchRequest implements IReturn<ResponseBase<TokenSearchResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<TokenSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TokenSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TokenSearchResponse>(); }\n}\n(TokenSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/finances/token/register\", \"POST\")\nexport class TokenRegisterRequest implements IReturn<ResponseBase<T>>\n{\n public customerId: number|null;\n public pan: string|null;\n public token: string|null;\n public merchant: string|null;\n public expiryDate: string|null;\n\n public constructor(init?: Partial<TokenRegisterRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TokenRegisterRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(TokenRegisterRequest as unknown)[immerable] = true;\n\nexport class TokenDeleteRequest implements IReturn<ResponseBase<boolean>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<TokenDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TokenDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TokenDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/multidiscipline/servicetype/{Id}\")\nexport class ServiceTypeRequest implements IReturn<ResponseBase<ServiceTypeResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ServiceTypeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ServiceTypeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ServiceTypeResponse>(); }\n}\n(ServiceTypeRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/multidiscipline/servicetype/search\")\nexport class ServiceTypeSearch implements IReturn<ResponseBase<ServiceTypeResponse>>\n{\n public isCurrent: boolean|null;\n\n public constructor(init?: Partial<ServiceTypeSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ServiceTypeSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ServiceTypeResponse>(); }\n}\n(ServiceTypeSearch as unknown)[immerable] = true;\n\nexport class ServiceTypeSave implements IReturn<ResponseBase<ServiceTypeResponse>>\n{\n public id: number|null;\n public name: string|null;\n public isCurrent: boolean|null;\n public clinicalAccessMode: AccessMode|null;\n public patientAccessMode: AccessMode|null;\n public usesScores: boolean|null;\n public usesGoals: boolean|null;\n public usesImages: boolean|null;\n public labelOverrides: { [index:string]: string; }|null;\n public listOverrides: { [index:string]: string; }|null;\n public configOverrides: { [index:string]: string; }|null;\n public workflowAccessMode: AccessMode|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<ServiceTypeSave>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ServiceTypeSave'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ServiceTypeResponse>(); }\n}\n(ServiceTypeSave as unknown)[immerable] = true;\n\n// @Route(\"/appointments/{Id}\", \"GET\")\nexport class AppointmentGetRequest implements IReturn<ResponseBase<AppointmentDetailsResponse>>, ILocationIds, IFilterServiceTypeManually\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AppointmentGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AppointmentDetailsResponse>(); }\n}\n(AppointmentGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/update\", \"POST\")\nexport class AppointmentPutRequest implements IReturn<ResponseBase<{ [index:string]: ScheduleAppointment[]; }>>, ILocationIds\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public resourceMode: string|null;\n public yesToWarnings: boolean|null;\n public apptType: string|null;\n public practitionerId: number|null;\n public roomId: number|null;\n public caseId: number|null;\n public locationId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public resendConfirmations: boolean|null;\n public reminderType: string|null;\n\n public constructor(init?: Partial<AppointmentPutRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentPutRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: ScheduleAppointment[]; }>(); }\n}\n(AppointmentPutRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/delete\", \"POST\")\nexport class AppointmentDeleteRequest implements IReturn<ResponseBase<{ [index:string]: ScheduleAppointment[]; }>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public all: boolean|null;\n public includePast: boolean|null;\n public backgroundJobId: string|null;\n\n public constructor(init?: Partial<AppointmentDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: ScheduleAppointment[]; }>(); }\n}\n(AppointmentDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/book\", \"POST\")\nexport class AppointmentBookRequest implements IReturn<ResponseBase<{ [index:string]: ScheduleAppointment[]; }>>, ILocationId\n{\n public id: number|null;\n public tempId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public roomId: number|null;\n public groupId: number|null;\n public authId: number|null;\n public customerId: number|null;\n public firstAppointment: boolean|null;\n public stockType: DefaultStockTypes|null;\n public apptType: string|null;\n public stockId: number|null;\n public colour: number|null;\n public comment: string|null;\n public name: string|null;\n public duration: number|null;\n public resourceMode: string|null;\n public recurrenceInterval: RecurrenceType|null;\n public yesToWarnings: boolean|null;\n public excludeWarnings: boolean|null;\n public excludeNonWorkingDays: boolean|null;\n public status: number|null;\n public hexColour: string|null;\n public moved: boolean|null;\n public caseId: number|null;\n public bodySite: string|null;\n public bookingMethod: string|null;\n public reminderType: string|null;\n public reminderDate: string|null;\n public stockColour: number|null;\n public customDuration: number|null;\n public customFreq: number|null;\n public customInterval: string|null;\n public resendConfirmations: boolean|null;\n public meta: { [index:string]: Object; }|null;\n public updatePatientGroupToo: boolean|null;\n public prontoAuditId: string|null;\n public prontoServiceId: string|null;\n public prontoAppointmentId: string|null;\n public isProntoReferralBooking: boolean|null;\n public serviceTypeId: number|null;\n public discountCodeId: string|null;\n public discountCodeAppliedDate: string|null;\n public discountCodeAdvance: boolean|null;\n public customer: CustomerSaveRequest|null;\n public authCode: TreatmentAuthResponse|null;\n public customerGroupReference: string|null;\n public customerInsuranceNumber: string|null;\n public isVideo: boolean|null;\n public addToWaitingList: boolean|null;\n public videoCode: string|null;\n public videoLink: string|null;\n public videoMeetingHostJoinUrl: string|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingPassword: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n public videoMeetingId: string|null;\n public prepaymentType: PrepaymentType|null;\n public batchNo: number|null;\n public backgroundJobId: string|null;\n public stockSpecialismId: string|null;\n\n public constructor(init?: Partial<AppointmentBookRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentBookRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: ScheduleAppointment[]; }>(); }\n}\n(AppointmentBookRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/{Id}/case\", \"POST\")\nexport class AppointmentCreateClickCaseRequest implements IReturn<ResponseBase<AppointmentCreateClickCaseResponse>>\n{\n public appointmentId: number|null;\n\n public constructor(init?: Partial<AppointmentCreateClickCaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentCreateClickCaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AppointmentCreateClickCaseResponse>(); }\n}\n(AppointmentCreateClickCaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/{id}/linkToCase/{caseId}\", \"POST\")\nexport class LinkAppointmentToCaseRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public caseId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<LinkAppointmentToCaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LinkAppointmentToCaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(LinkAppointmentToCaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/{Id}/case\", \"POST\")\nexport class CreateCaseFromAppointmentPostRequest implements IReturn<ResponseBase<number>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<CreateCaseFromAppointmentPostRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateCaseFromAppointmentPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(CreateCaseFromAppointmentPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointments/other\", \"POST\")\nexport class CustomerOtherAppointmentsRequest implements IReturn<ResponseBase<{ [index:string]: Object; }[]>>, ICustomerId\n{\n public customerId: number|null;\n public startDateTime: string|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<CustomerOtherAppointmentsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerOtherAppointmentsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: Object; }[]>(); }\n}\n(CustomerOtherAppointmentsRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/alerts\", \"GET\")\nexport class AppointmentAlertsRequest implements IReturn<ResponseBase<AlertResponse>>, ISecurityId\n{\n public appointmentId: number|null;\n public customerId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<AppointmentAlertsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentAlertsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AlertResponse>(); }\n}\n(AppointmentAlertsRequest as unknown)[immerable] = true;\n\nexport class AppointmentBookingInfoRequest implements IReturn<ResponseBase<AppointmentBookingInfoResponse>>, ICustomerId, ILocationId\n{\n public caseId: number|null;\n public customerId: number|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n public practitionerId: number|null;\n public groupId: number|null;\n public forceFollowup: boolean|null;\n public stockId: number|null;\n public skillRestrictions: string[]|null;\n\n public constructor(init?: Partial<AppointmentBookingInfoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentBookingInfoRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AppointmentBookingInfoResponse>(); }\n}\n(AppointmentBookingInfoRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/temporary/create\", \"POST\")\nexport class CreateTemporaryAppointmentRequest implements IReturn<ResponseBase<CreateTemporaryAppointmentResponse>>, ILocationId\n{\n public practitionerId: number|null;\n public locationId: number|null;\n public roomId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n\n public constructor(init?: Partial<CreateTemporaryAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateTemporaryAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CreateTemporaryAppointmentResponse>(); }\n}\n(CreateTemporaryAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/temporary/update\", \"POST\")\nexport class UpdateTemporaryAppointmentRequest implements IReturn<ResponseBase<T>>, ISecurityId\n{\n public id: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UpdateTemporaryAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateTemporaryAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateTemporaryAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/temporary/confirm\", \"POST\")\nexport class AppointmentConfirmTemporaryBookingRequest implements IReturn<ResponseBase<boolean>>, ISecurityId\n{\n public id: number|null;\n public securityId: number|null;\n public customerId: number|null;\n public bookingMethod: string|null;\n public backgroundJobId: string|null;\n public treatmentAuthId: number|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<AppointmentConfirmTemporaryBookingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentConfirmTemporaryBookingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AppointmentConfirmTemporaryBookingRequest as unknown)[immerable] = true;\n\nexport class AppointmentPrepaidIncomeRequest implements IReturn<ResponseBase<AppointmentPrepaidIncomeResponse>>, ILocationId\n{\n public id: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<AppointmentPrepaidIncomeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentPrepaidIncomeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AppointmentPrepaidIncomeResponse>(); }\n}\n(AppointmentPrepaidIncomeRequest as unknown)[immerable] = true;\n\n// @Route(\"/appointment/defaultStock\")\nexport class GetDefaultStockRequest implements IReturn<ResponseBase<StockResponse>>, ICustomerId\n{\n public practitionerId: number|null;\n public groupId: number|null;\n public customerId: number|null;\n public stockType: DefaultStockTypes|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n public forcePrivate: boolean|null;\n public skillRestrictions: string[]|null;\n\n public constructor(init?: Partial<GetDefaultStockRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDefaultStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<StockResponse>(); }\n}\n(GetDefaultStockRequest as unknown)[immerable] = true;\n\n// @Route(\"/alert/complete/{Id}\", \"GET\")\nexport class AlertCompleteRequest implements IReturn<ResponseBase<boolean>>, ISecurityLocator\n{\n public id: number|null;\n\n public constructor(init?: Partial<AlertCompleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertCompleteRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AlertCompleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/alert/acknowledge\", \"POST\")\n// @Route(\"/alert/acknowledge/{Id}\", \"POST\")\nexport class AlertAcknowledgeRequest implements IReturn<ResponseBase<boolean>>, ILocationIds\n{\n public id: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<AlertAcknowledgeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertAcknowledgeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AlertAcknowledgeRequest as unknown)[immerable] = true;\n\n// @Route(\"/alert/forObject\", \"POST\")\nexport class AlertSearchRequest implements IReturn<Alert[]>, ISecurityId, ISecurityType, IFilterServiceTypeManually, IAlertRequest\n{\n public objectId: number|null;\n public discriminatorType: string|null;\n public securityId: number|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<AlertSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<Alert>(); }\n}\n(AlertSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/alerts/clinical/flags\")\nexport class CaseAlertFlagsRequest implements IReturn<ResponseBase<CaseAlertFlagsResponse>>\n{\n\n public constructor(init?: Partial<CaseAlertFlagsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseAlertFlagsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseAlertFlagsResponse>(); }\n}\n(CaseAlertFlagsRequest as unknown)[immerable] = true;\n\n// @Route(\"/alerts/{Id}\")\nexport class CaseAlertSearchRequest implements IReturn<CaseAlertSearchResponse>, ISecurityLocator, IDepartmentIds, IAlertRequest\n{\n public id: number|null;\n public isPatientId: boolean|null;\n public securityId: number|null;\n public departmentIds: number[]|null;\n public securityLocator: Func<Object, IClientDbAccess, SecurityDto>|null;\n\n public constructor(init?: Partial<CaseAlertSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseAlertSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CaseAlertSearchResponse(); }\n}\n(CaseAlertSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/alert/{Id}\", \"GET\")\nexport class AlertGetRequest implements IReturn<AlertDialogResponse>, ILocationId, ISecurityLocator, IFilterServiceTypeManually\n{\n public id: number|null;\n public locationId: number|null;\n public securityLocator: Func<Object, IClientDbAccess, SecurityDto>|null;\n\n public constructor(init?: Partial<AlertGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new AlertDialogResponse(); }\n}\n(AlertGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/alerts/{Id}/{DiscriminatorType}\", \"GET\")\nexport class AlertsGetRequest implements IReturn<ResponseBase<AlertDialogResponse>>, ISecurityId, ISecurityType, IAlertRequest, IDepartmentIds\n{\n public id: number|null;\n public discriminatorType: string|null;\n public securityId: number|null;\n public securityType: string|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<AlertsGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertsGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AlertDialogResponse>(); }\n}\n(AlertsGetRequest as unknown)[immerable] = true;\n\nexport class AlertsMultipleGetRequest implements IReturn<ResponseBase<AlertDialogResponse>>, IAlertRequest, IDepartmentIds\n{\n public requestedAlerts: IdDescriminatorType[]|null;\n public departmentIds: number[]|null;\n\n public constructor(init?: Partial<AlertsMultipleGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertsMultipleGetRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AlertDialogResponse>(); }\n}\n(AlertsMultipleGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/alert/{Id}\", \"PUT\")\n// @Route(\"/alert/save\", \"POST\")\nexport class AlertPostRequest implements IReturn<ResponseBase<Alert>>, ILocationId, ISecurityId, ISecurityType, IAlertRequest, IFilterServiceTypeManually\n{\n public id: number|null;\n public userId: number|null;\n public createdByUserId: number|null;\n public discriminatorType: string|null;\n public objectId: number|null;\n public title: string|null;\n public notes: string|null;\n public createdDateTime: string|null;\n public startDateTime: string|null;\n public requiresAcknowledgement: boolean|null;\n public complete: boolean|null;\n public expiryDateTime: string|null;\n public diaryDateTime: string|null;\n public includeInMyWork: boolean|null;\n public forYourEyesOnly: boolean|null;\n public flagType: number|null;\n public future: boolean|null;\n public alertForPerson: string|null;\n public alertForDate: string|null;\n public alertExpiryDate: string|null;\n public locationId: number|null;\n public serviceTypeId: number|null;\n public securityId: number|null;\n public securityType: string|null;\n\n public constructor(init?: Partial<AlertPostRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AlertPostRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Alert>(); }\n}\n(AlertPostRequest as unknown)[immerable] = true;\n\n// @Route(\"/alert/quickPicks\", \"PUT\")\nexport class ClinicalQuickPickAlertPostRequest implements IReturn<CaseAlertSearchResponse>, ISecurityId, IFilterServiceTypeManually\n{\n public quickPicks: Alert[]|null;\n public caseId: number|null;\n public alertGenre: string|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<ClinicalQuickPickAlertPostRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalQuickPickAlertPostRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new CaseAlertSearchResponse(); }\n}\n(ClinicalQuickPickAlertPostRequest as unknown)[immerable] = true;\n\nexport class GetAllAdvancedSearchFiltersRequest implements IReturn<ResponseBase<GetAllAdvancedSearchFiltersResponse>>\n{\n public searchModule: SearchModuleEntityType|null;\n\n public constructor(init?: Partial<GetAllAdvancedSearchFiltersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllAdvancedSearchFiltersRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GetAllAdvancedSearchFiltersResponse>(); }\n}\n(GetAllAdvancedSearchFiltersRequest as unknown)[immerable] = true;\n\nexport class AdvancedSearchSaveFilterRequest extends SearchFilter implements IReturn<ResponseBase<T>>\n{\n public filterConditionsToSave: SearchFilterCondition[]|null;\n\n public constructor(init?: Partial<AdvancedSearchSaveFilterRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AdvancedSearchSaveFilterRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AdvancedSearchSaveFilterRequest as unknown)[immerable] = true;\n\nexport class AdvancedSearchDeleteFilterRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<AdvancedSearchDeleteFilterRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AdvancedSearchDeleteFilterRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AdvancedSearchDeleteFilterRequest as unknown)[immerable] = true;\n\nexport class GetInitialRegistrationSessionTokenRequest implements IReturn<ResponseBase<GetInitialRegistrationSessionTokenResponse>>\n{\n public accountingSystemName: AccountingSystemProviderName|null;\n\n public constructor(init?: Partial<GetInitialRegistrationSessionTokenRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInitialRegistrationSessionTokenRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetInitialRegistrationSessionTokenResponse>(); }\n}\n(GetInitialRegistrationSessionTokenRequest as unknown)[immerable] = true;\n\nexport class DeactivateAccountingSystemRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<DeactivateAccountingSystemRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeactivateAccountingSystemRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeactivateAccountingSystemRequest as unknown)[immerable] = true;\n\n// @Route(\"/accounting/getLedgerAccountsInfo\")\nexport class GetLedgerAccountsRequest implements IReturn<ResponseBase<LedgerAccountInfo[]>>\n{\n\n public constructor(init?: Partial<GetLedgerAccountsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetLedgerAccountsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<LedgerAccountInfo[]>(); }\n}\n(GetLedgerAccountsRequest as unknown)[immerable] = true;\n\nexport class GetTaxRatesRequest implements IReturn<ResponseBase<TaxRateInfo[]>>\n{\n\n public constructor(init?: Partial<GetTaxRatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTaxRatesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TaxRateInfo[]>(); }\n}\n(GetTaxRatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/accounting/getTrackingCategories\")\nexport class GetTrackingCategories implements IReturn<ResponseBase<AccountingTrackingCategory[]>>\n{\n\n public constructor(init?: Partial<GetTrackingCategories>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetTrackingCategories'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AccountingTrackingCategory[]>(); }\n}\n(GetTrackingCategories as unknown)[immerable] = true;\n\n// @Route(\"/accounting/updateLocationTrackingCategory\")\nexport class UpdateLocationTrackingCategory implements IReturn<boolean>\n{\n public locationId: number|null;\n public trackingCategory: string|null;\n\n public constructor(init?: Partial<UpdateLocationTrackingCategory>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateLocationTrackingCategory'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(UpdateLocationTrackingCategory as unknown)[immerable] = true;\n\nexport class GetAccountingSettingsInfoRequest implements IReturn<ResponseBase<AllAccountingConfigAndSettings>>\n{\n\n public constructor(init?: Partial<GetAccountingSettingsInfoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAccountingSettingsInfoRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AllAccountingConfigAndSettings>(); }\n}\n(GetAccountingSettingsInfoRequest as unknown)[immerable] = true;\n\nexport class SaveAccountingSettingsInfoRequest implements IReturn<ResponseBase<AllAccountingConfigAndSettings>>\n{\n public newAccountingSettings: AccountingSettingInfo|null;\n public isInitialSetup: boolean|null;\n public isReactivation: boolean|null;\n\n public constructor(init?: Partial<SaveAccountingSettingsInfoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveAccountingSettingsInfoRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AllAccountingConfigAndSettings>(); }\n}\n(SaveAccountingSettingsInfoRequest as unknown)[immerable] = true;\n\nexport class SyncPaymentUpdateFromXeroManuallyRequest implements IReturn<ResponseBase<IncomingAccountingPaymentResponse>>\n{\n public paymentId: number|null;\n\n public constructor(init?: Partial<SyncPaymentUpdateFromXeroManuallyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SyncPaymentUpdateFromXeroManuallyRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<IncomingAccountingPaymentResponse>(); }\n}\n(SyncPaymentUpdateFromXeroManuallyRequest as unknown)[immerable] = true;\n\nexport class AccountingApiSyncHistorySearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<T>>\n{\n public invoiceId: number|null;\n public paymentId: number|null;\n public status: string|null;\n\n public constructor(init?: Partial<AccountingApiSyncHistorySearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AccountingApiSyncHistorySearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AccountingApiSyncHistorySearchRequest as unknown)[immerable] = true;\n\nexport class GetAccountingApiSyncHistoryRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetAccountingApiSyncHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAccountingApiSyncHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAccountingApiSyncHistoryRequest as unknown)[immerable] = true;\n\n// @Route(\"/accounting/cacheApiDeckRequests\", \"POST\")\nexport class CacheApiDeckRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<CacheApiDeckRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CacheApiDeckRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CacheApiDeckRequest as unknown)[immerable] = true;\n\n// @Route(\"/oauth/start\", \"GET\")\nexport class OAuthInitiateRequest implements IReturnVoid\n{\n\n public constructor(init?: Partial<OAuthInitiateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OAuthInitiateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(OAuthInitiateRequest as unknown)[immerable] = true;\n\n// @Route(\"/oauth/callback\", \"GET\")\nexport class OAuthCallbackRequest implements IReturn<OAuthCallbackResponse>\n{\n public code: string|null;\n public state: string|null;\n\n public constructor(init?: Partial<OAuthCallbackRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OAuthCallbackRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new OAuthCallbackResponse(); }\n}\n(OAuthCallbackRequest as unknown)[immerable] = true;\n\n// @Route(\"/sys/config/all\")\nexport class SysConfigRequest implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n\n public constructor(init?: Partial<SysConfigRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SysConfigRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(SysConfigRequest as unknown)[immerable] = true;\n\n// @Route(\"/sys/config/update\")\nexport class ConfigUpdate implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n public id: number|null;\n public description: string|null;\n public value: string|null;\n\n public constructor(init?: Partial<ConfigUpdate>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConfigUpdate'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(ConfigUpdate as unknown)[immerable] = true;\n\nexport class BatchConfigUpdates implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n public updates: ConfigUpdate[]|null;\n\n public constructor(init?: Partial<BatchConfigUpdates>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BatchConfigUpdates'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(BatchConfigUpdates as unknown)[immerable] = true;\n\n// @Route(\"/test/error\")\nexport class TestError\n{\n\n public constructor(init?: Partial<TestError>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TestError'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(TestError as unknown)[immerable] = true;\n\n// @Route(\"/locale\")\nexport class LocaleRequest\n{\n\n public constructor(init?: Partial<LocaleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocaleRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(LocaleRequest as unknown)[immerable] = true;\n\n// @Route(\"/loginMode\")\nexport class LoginModeRequest\n{\n\n public constructor(init?: Partial<LoginModeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LoginModeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(LoginModeRequest as unknown)[immerable] = true;\n\n// @Route(\"/sys/config/features\")\nexport class FeatureRequest implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n\n public constructor(init?: Partial<FeatureRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FeatureRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(FeatureRequest as unknown)[immerable] = true;\n\nexport class GetPhioConfigRequest implements IReturn<ResponseBase<PhioConfigResponse>>\n{\n\n public constructor(init?: Partial<GetPhioConfigRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPhioConfigRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PhioConfigResponse>(); }\n}\n(GetPhioConfigRequest as unknown)[immerable] = true;\n\nexport class GetMediPassApiKeyRequest implements IReturn<ResponseBase<string>>\n{\n\n public constructor(init?: Partial<GetMediPassApiKeyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMediPassApiKeyRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(GetMediPassApiKeyRequest as unknown)[immerable] = true;\n\n// @Route(\"/healthz\")\n// @Route(\"/healthz/{clientId}\")\nexport class HeartbeatRequest implements IReturn<ResponseBase<boolean>>\n{\n public clientId: number|null;\n\n public constructor(init?: Partial<HeartbeatRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'HeartbeatRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(HeartbeatRequest as unknown)[immerable] = true;\n\nexport class GetSubscriptionRequest implements IReturn<ResponseBase<SubscriptionResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetSubscriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSubscriptionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SubscriptionResponse>(); }\n}\n(GetSubscriptionRequest as unknown)[immerable] = true;\n\nexport class GetSubscriptionHistoryRequest implements IReturn<ResponseBase<SubscriptionHistoryResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetSubscriptionHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSubscriptionHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SubscriptionHistoryResponse>(); }\n}\n(GetSubscriptionHistoryRequest as unknown)[immerable] = true;\n\nexport class SubscriptionSearchRequest extends BaseAdvancedSearchRequest implements IReturn<ResponseBase<SubscriptionResponse>>\n{\n public id: number|null;\n public customerId: number|null;\n public invoiceStatus: string|null;\n public status: SubscriptionStatus|null;\n public amount: CurrencyRange|null;\n public lastRunOn: DateRange|null;\n public nextDue: DateRange|null;\n public startDate: DateRange|null;\n public expiryDate: DateRange|null;\n\n public constructor(init?: Partial<SubscriptionSearchRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SubscriptionSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SubscriptionResponse>(); }\n}\n(SubscriptionSearchRequest as unknown)[immerable] = true;\n\nexport class CreateSubscriptionRequest implements IReturn<ResponseBase<SubscriptionResponse>>, ILocationId\n{\n public customer: CustomerSaveRequest|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public packageId: string|null;\n public startDate: string|null;\n public billingMode: SubscriptionBillingMode|null;\n public paymentMode: SubscriptionPaymentMode|null;\n public paymentMethod: SubscriptionPaymentMethod|null;\n public paymentMethodOther: string|null;\n public terminalPayment: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<CreateSubscriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateSubscriptionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SubscriptionResponse>(); }\n}\n(CreateSubscriptionRequest as unknown)[immerable] = true;\n\nexport class UpdateSubscriptionRequest implements IReturn<ResponseBase<SubscriptionResponse>>\n{\n public id: number|null;\n public status: SubscriptionStatus|null;\n public startDate: string|null;\n public expiryDate: string|null;\n public name: string|null;\n public packageId: string|null;\n public totalExVat: number|null;\n public vatRate: number|null;\n public totalIncVat: number|null;\n public locationId: number|null;\n public practitionerId: number|null;\n public nextDue: string|null;\n public subscriptionInterval: number|null;\n public subscriptionIntervalUnit: SubscriptionRecurrenceInterval|null;\n public earliestAllowedCancellationDate: string|null;\n public bundles: PackageBundleResponse[]|null;\n\n public constructor(init?: Partial<UpdateSubscriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateSubscriptionRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<SubscriptionResponse>(); }\n}\n(UpdateSubscriptionRequest as unknown)[immerable] = true;\n\n// @Route(\"/apple-developer-merchantid-domain-association\")\nexport class SquareApplePayVerificationFileRequest implements IReturn<HttpResult>\n{\n\n public constructor(init?: Partial<SquareApplePayVerificationFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareApplePayVerificationFileRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(SquareApplePayVerificationFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/square/redirect\", \"GET\")\nexport class SquareRedirectRequest implements IReturn<HttpResult>\n{\n public state: string|null;\n public code: string|null;\n public error: string|null;\n public error_Description: string|null;\n\n public constructor(init?: Partial<SquareRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareRedirectRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(SquareRedirectRequest as unknown)[immerable] = true;\n\nexport class SquareSaveStateRequest implements IReturn<ResponseBase<T>>\n{\n public state: string|null;\n\n public constructor(init?: Partial<SquareSaveStateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareSaveStateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SquareSaveStateRequest as unknown)[immerable] = true;\n\nexport class SquareIntegrationRequest implements IReturn<ResponseBase<SquareOAuthResponse>>\n{\n public state: string|null;\n\n public constructor(init?: Partial<SquareIntegrationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareIntegrationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SquareOAuthResponse>(); }\n}\n(SquareIntegrationRequest as unknown)[immerable] = true;\n\nexport class SquareDeAuthRequest implements IReturn<ResponseBase<SquareOAuthResponse>>\n{\n\n public constructor(init?: Partial<SquareDeAuthRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareDeAuthRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SquareOAuthResponse>(); }\n}\n(SquareDeAuthRequest as unknown)[immerable] = true;\n\nexport class SquareGetOAuthPermissionsRequest implements IReturn<ResponseBase<SquareOAuthPermissionsResponse>>\n{\n\n public constructor(init?: Partial<SquareGetOAuthPermissionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareGetOAuthPermissionsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SquareOAuthPermissionsResponse>(); }\n}\n(SquareGetOAuthPermissionsRequest as unknown)[immerable] = true;\n\nexport class BasicCardDetailsRequest implements IReturn<ResponseBase<BasicCardDetailsResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<BasicCardDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BasicCardDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BasicCardDetailsResponse>(); }\n}\n(BasicCardDetailsRequest as unknown)[immerable] = true;\n\nexport class FullCardDetailsRequest implements IReturn<ResponseBase<FullCardDetailsResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<FullCardDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FullCardDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<FullCardDetailsResponse>(); }\n}\n(FullCardDetailsRequest as unknown)[immerable] = true;\n\nexport class DeleteCardDetailsRequest implements IReturn<ResponseBase<DeleteCardDetailsResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<DeleteCardDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteCardDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DeleteCardDetailsResponse>(); }\n}\n(DeleteCardDetailsRequest as unknown)[immerable] = true;\n\nexport class GetPackageRequest implements IReturn<ResponseBase<PackageResponse>>\n{\n public packageId: string|null;\n\n public constructor(init?: Partial<GetPackageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPackageRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PackageResponse>(); }\n}\n(GetPackageRequest as unknown)[immerable] = true;\n\nexport class PackagesSearchRequest implements IReturn<ResponseBase<PackageResponse>>\n{\n public term: string|null;\n public includeNonCurrent: boolean|null;\n\n public constructor(init?: Partial<PackagesSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PackagesSearchRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PackageResponse>(); }\n}\n(PackagesSearchRequest as unknown)[immerable] = true;\n\nexport class SavePackageRequest implements IReturn<ResponseBase<PackageResponse>>, IDepartmentIds, ILocationIds\n{\n public id: number|null;\n public reference: string|null;\n public totalPrice: number|null;\n public description: string|null;\n public appointmentLength: number|null;\n public groupLocationLocationId: number|null;\n public locationId: number|null;\n public colour: number|null;\n public online: boolean|null;\n public onlineGuid: string|null;\n public inUse: boolean|null;\n public priceExVAT: number|null;\n public vatRate: number|null;\n public vatAmount: number|null;\n public costAmount: number|null;\n public costVATRate: number|null;\n public costExVAT: number|null;\n public costVATAmount: number|null;\n public longDescription: string|null;\n public ledgerCode: string|null;\n public ledgerCodeOverrides: AccountingStockLedgerLookup[]|null;\n public legderCodeAccountId: string|null;\n public category: string|null;\n public level: number|null;\n public minimumLevel: number|null;\n public displayInPriceList: boolean|null;\n public totalWorth: number|null;\n public supplierId: number|null;\n public serviceTypeId: number|null;\n public isPrivateCharge: boolean|null;\n public stockIsCancel: boolean|null;\n public stockIsFirst: boolean|null;\n public stockIsFollowUp: boolean|null;\n public stockIsDNA: boolean|null;\n public isMultiple: boolean|null;\n public groupName: string|null;\n public overrides: StockOverrideResponse[]|null;\n public validForDaysFromPurchase: number|null;\n public isSubscriptionType: boolean|null;\n public subscriptionInterval: number|null;\n public subscriptionIntervalUnit: SubscriptionRecurrenceInterval|null;\n public hasMinimumTerm: boolean|null;\n public minimumTermValue: number|null;\n public minimumTermInterval: number|null;\n public minimumTermIntervalUnit: SubscriptionRecurrenceInterval|null;\n public hasMaximumTerm: boolean|null;\n public maximumTermValue: number|null;\n public maximumTermInterval: number|null;\n public maximumTermIntervalUnit: SubscriptionRecurrenceInterval|null;\n public onePerCustomer: boolean|null;\n public newCustomersOnly: boolean|null;\n public allowDiscountCodes: boolean|null;\n public hasValidityPeriod: boolean|null;\n public validFrom: string|null;\n public validTo: string|null;\n public termsAndConditionsFormId: string|null;\n public updateExistingSubscriptionsToUseNewBundles: boolean|null;\n public bundles: PackageBundleResponse[]|null;\n public departmentIds: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public colourCss: string|null;\n public urlSlug: string|null;\n public imageName: string|null;\n public isCloning: boolean|null;\n public expirationValue: number|null;\n public quantityThreshold: number|null;\n public creditAmount: number|null;\n public excludedStockItemIds: number[]|null;\n public excludedClassTypeIds: number[]|null;\n public packageType: PackageType|null;\n\n public constructor(init?: Partial<SavePackageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SavePackageRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<PackageResponse>(); }\n}\n(SavePackageRequest as unknown)[immerable] = true;\n\nexport class MyDiaryRequest implements IReturn<ResponseBase<MyDiaryResponse>>\n{\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<MyDiaryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MyDiaryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MyDiaryResponse>(); }\n}\n(MyDiaryRequest as unknown)[immerable] = true;\n\nexport class OnlineGetExistingWaitingListsForCustomer implements IReturn<ResponseBase<WaitingListResponse>>\n{\n public patientId: number|null;\n\n public constructor(init?: Partial<OnlineGetExistingWaitingListsForCustomer>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineGetExistingWaitingListsForCustomer'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WaitingListResponse>(); }\n}\n(OnlineGetExistingWaitingListsForCustomer as unknown)[immerable] = true;\n\n// @Route(\"/diary/waiting-lists/save\", \"POST\")\nexport class SaveWaitingListRequest extends WaitingList implements IReturn<ResponseBase<boolean>>\n{\n public days: number[]|null;\n public customer: CustomerSaveRequest|null;\n\n public constructor(init?: Partial<SaveWaitingListRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveWaitingListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SaveWaitingListRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/waiting-lists/save\", \"POST\")\nexport class OnlineSaveWaitingListRequest extends SaveWaitingListRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<OnlineSaveWaitingListRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineSaveWaitingListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineSaveWaitingListRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/waiting-list/{Id}\", \"DELETE\")\nexport class DeleteWaitingListRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteWaitingListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteWaitingListRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteWaitingListRequest as unknown)[immerable] = true;\n\n// @Route(\"/diary/waiting-list/{Id}\", \"DELETE\")\nexport class OnlineDeleteWaitingListRequest extends DeleteWaitingListRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<OnlineDeleteWaitingListRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineDeleteWaitingListRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineDeleteWaitingListRequest as unknown)[immerable] = true;\n\nexport class AppointmentConfirmRequest implements IReturn<ResponseBase<AppointmentSummary>>, IPut\n{\n public selectedAppointment: AppointmentSearchResult|null;\n public offeredAppointment: AppointmentSearchResult|null;\n public customer: OnlineCustomerDto|null;\n public id: string|null;\n public prepaymentId: number|null;\n public usePrepayment: boolean|null;\n public paymentType: PaymentMode|null;\n public packageId: string|null;\n public stockId: string|null;\n public serviceId: string|null;\n public discountCodeId: string|null;\n public takePaymentRequest: TakePaymentRequest|null;\n public metadata: JsonField|null;\n public appointmentType: AppointmentType|null;\n public isFollowUp: boolean|null;\n public overrideProductServiceId: string|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<AppointmentConfirmRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentConfirmRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<AppointmentSummary>(); }\n}\n(AppointmentConfirmRequest as unknown)[immerable] = true;\n\nexport class OnlinePatientFormsRequest implements IReturn<ResponseBase<OnlinePatientFormResponse>>\n{\n\n public constructor(init?: Partial<OnlinePatientFormsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlinePatientFormsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlinePatientFormResponse>(); }\n}\n(OnlinePatientFormsRequest as unknown)[immerable] = true;\n\nexport class OnlineStripeDeleteCardRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<OnlineStripeDeleteCardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineStripeDeleteCardRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineStripeDeleteCardRequest as unknown)[immerable] = true;\n\nexport class OnlineGetCardDetailsRequest implements IReturn<ResponseBase<CardDetails>>\n{\n\n public constructor(init?: Partial<OnlineGetCardDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineGetCardDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CardDetails>(); }\n}\n(OnlineGetCardDetailsRequest as unknown)[immerable] = true;\n\nexport class OnlineCancelBookingRequest implements IReturn<ResponseBase<boolean>>\n{\n public appointmentId: number|null;\n public classAttendanceId: number|null;\n public cancellationReason: string|null;\n public payFee: boolean|null;\n public takePaymentRequest: TakePaymentRequest|null;\n\n public constructor(init?: Partial<OnlineCancelBookingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCancelBookingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineCancelBookingRequest as unknown)[immerable] = true;\n\nexport class OnlineCancellationOptionsRequest implements IReturn<ResponseBase<OnlineCancellationOptionsResponse>>\n{\n public appointmentId: number|null;\n public classAttendanceId: number|null;\n\n public constructor(init?: Partial<OnlineCancellationOptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCancellationOptionsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<OnlineCancellationOptionsResponse>(); }\n}\n(OnlineCancellationOptionsRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoices/{CustomerId}\", \"GET\")\nexport class OnlineInvoiceListRequest implements IReturn<ResponseBase<T>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<OnlineInvoiceListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineInvoiceListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineInvoiceListRequest as unknown)[immerable] = true;\n\n// @Route(\"/invoice/download/{InvoiceId}\")\n// @Route(\"/receipt/download/{IncomeId}\")\nexport class OnlineInvoiceDownloadRequest implements IReturn<HttpResult>\n{\n public invoiceId: number|null;\n public incomeId: number|null;\n\n public constructor(init?: Partial<OnlineInvoiceDownloadRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineInvoiceDownloadRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(OnlineInvoiceDownloadRequest as unknown)[immerable] = true;\n\nexport class OnlineGetPaymentDetailsRequest implements IReturn<ResponseBase<OnlinePaymentDetailsResponse>>\n{\n public stockId: string|null;\n public classTypeId: number|null;\n public courseTypeId: number|null;\n\n public constructor(init?: Partial<OnlineGetPaymentDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineGetPaymentDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<OnlinePaymentDetailsResponse>(); }\n}\n(OnlineGetPaymentDetailsRequest as unknown)[immerable] = true;\n\n// @Route(\"/packages/list\", \"GET\")\nexport class OnlineCustomerPackageRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<OnlineCustomerPackageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCustomerPackageRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineCustomerPackageRequest as unknown)[immerable] = true;\n\nexport class BuyPackageRequest implements IReturn<ResponseBase<T>>\n{\n public packageId: string|null;\n public isSubscription: boolean|null;\n public saveCard: boolean|null;\n public isConnectCustomer: boolean|null;\n public takePaymentRequest: TakePaymentRequest|null;\n\n public constructor(init?: Partial<BuyPackageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BuyPackageRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(BuyPackageRequest as unknown)[immerable] = true;\n\nexport class OnlinePasswordChangeRequest implements IReturn<ResponseBase<T>>\n{\n public oldPassword: string|null;\n public newPassword: string|null;\n public passwordScore: number|null;\n public userEmail: string|null;\n\n public constructor(init?: Partial<OnlinePasswordChangeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlinePasswordChangeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlinePasswordChangeRequest as unknown)[immerable] = true;\n\nexport class OnlineUpdateSubscriptionRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public status: SubscriptionStatus|null;\n\n public constructor(init?: Partial<OnlineUpdateSubscriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineUpdateSubscriptionRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineUpdateSubscriptionRequest as unknown)[immerable] = true;\n\nexport class GetAppointmentLocationsRequest implements IReturn<ResponseBase<T>>\n{\n public serviceId: string|null;\n public overrideProductServiceId: string|null;\n public stockId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<GetAppointmentLocationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAppointmentLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAppointmentLocationsRequest as unknown)[immerable] = true;\n\nexport class GetAuthAppointmentLocationsRequest extends GetAppointmentLocationsRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<GetAuthAppointmentLocationsRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAuthAppointmentLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAuthAppointmentLocationsRequest as unknown)[immerable] = true;\n\nexport class OnlineCaseflowFormRequest implements IReturn<ResponseBase<T>>\n{\n public productId: string|null;\n\n public constructor(init?: Partial<OnlineCaseflowFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCaseflowFormRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OnlineCaseflowFormRequest as unknown)[immerable] = true;\n\nexport class OnlineCaseflowContactRoleRequest implements IReturn<ResponseBase<OnlineRole>>\n{\n\n public constructor(init?: Partial<OnlineCaseflowContactRoleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCaseflowContactRoleRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlineRole>(); }\n}\n(OnlineCaseflowContactRoleRequest as unknown)[immerable] = true;\n\nexport class OnlineCaseflowContactSearch implements IReturn<ResponseBase<OnlineCaseflowContact>>\n{\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n\n public constructor(init?: Partial<OnlineCaseflowContactSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCaseflowContactSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<OnlineCaseflowContact>(); }\n}\n(OnlineCaseflowContactSearch as unknown)[immerable] = true;\n\nexport class ValidateDiscountCode implements IReturn<ResponseBase<DiscountCodeDto>>\n{\n public discountCodeId: string|null;\n public code: string|null;\n public appointmentDate: string|null;\n public getInUseFlag: boolean|null;\n public enableForConnect: boolean|null;\n public stockId: string|null;\n public sessionCount: number|null;\n\n public constructor(init?: Partial<ValidateDiscountCode>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ValidateDiscountCode'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DiscountCodeDto>(); }\n}\n(ValidateDiscountCode as unknown)[immerable] = true;\n\nexport class OnlineSettingsRequest implements IReturn<OnlineSettingsResponse>\n{\n public businessId: number|null;\n\n public constructor(init?: Partial<OnlineSettingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineSettingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new OnlineSettingsResponse(); }\n}\n(OnlineSettingsRequest as unknown)[immerable] = true;\n\nexport class OnlineCurrentUserRequest implements IReturn<ResponseBase<CurrentUser>>\n{\n\n public constructor(init?: Partial<OnlineCurrentUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineCurrentUserRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CurrentUser>(); }\n}\n(OnlineCurrentUserRequest as unknown)[immerable] = true;\n\nexport class OnlineInitialRequest implements IReturn<ResponseBase<OnlineInitialResponse>>\n{\n\n public constructor(init?: Partial<OnlineInitialRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineInitialRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlineInitialResponse>(); }\n}\n(OnlineInitialRequest as unknown)[immerable] = true;\n\nexport class ConnectValidateBusinessRouteRequest implements IReturn<ResponseBase<BusinessCategoryResponse>>\n{\n public url: string|null;\n\n public constructor(init?: Partial<ConnectValidateBusinessRouteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConnectValidateBusinessRouteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BusinessCategoryResponse>(); }\n}\n(ConnectValidateBusinessRouteRequest as unknown)[immerable] = true;\n\nexport class ConnectValidateAccessCodeRequest implements IReturn<ResponseBase<boolean>>\n{\n public serviceId: string|null;\n public accessCode: string|null;\n\n public constructor(init?: Partial<ConnectValidateAccessCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConnectValidateAccessCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ConnectValidateAccessCodeRequest as unknown)[immerable] = true;\n\n// @Route(\"/availablity/sessions\", \"POST\")\nexport class GetOnlineSessions implements IReturn<ResponseBase<AvailabilitySession>>\n{\n public from: string|null;\n public to: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<GetOnlineSessions>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetOnlineSessions'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AvailabilitySession>(); }\n}\n(GetOnlineSessions as unknown)[immerable] = true;\n\nexport class GetLocationOverridesRequest implements IReturn<ResponseBase<T>>\n{\n public stockId: string|null;\n\n public constructor(init?: Partial<GetLocationOverridesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetLocationOverridesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetLocationOverridesRequest as unknown)[immerable] = true;\n\nexport class GetCaseflowNetworkLocationsRequest extends GetAppointmentLocationsRequest implements IReturn<ResponseBase<T>>\n{\n public latLong: string|null;\n public postCode: string|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<GetCaseflowNetworkLocationsRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCaseflowNetworkLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetCaseflowNetworkLocationsRequest as unknown)[immerable] = true;\n\nexport class GetOnlineDistinctAppointmentRequest implements IReturn<AppointmentSearchResponse>\n{\n public from: string|null;\n public to: string|null;\n public appointmentLength: number|null;\n public locationIds: string[]|null;\n public serviceId: string|null;\n public stockId: string|null;\n public allowPast: boolean|null;\n public overrideProductServiceId: string|null;\n public isFollowUp: boolean|null;\n\n public constructor(init?: Partial<GetOnlineDistinctAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetOnlineDistinctAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AppointmentSearchResponse(); }\n}\n(GetOnlineDistinctAppointmentRequest as unknown)[immerable] = true;\n\nexport class BookTempAppointmentRequest implements IReturn<ReserveAppointmentResponse>\n{\n public practitionerGuid: string|null;\n public locationGuid: string|null;\n public roomId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n public stockId: string|null;\n public serviceId: string|null;\n public appointmentType: AppointmentType|null;\n\n public constructor(init?: Partial<BookTempAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BookTempAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ReserveAppointmentResponse(); }\n}\n(BookTempAppointmentRequest as unknown)[immerable] = true;\n\nexport class OnlineDeleteReservationRequest\n{\n public appointmentId: number|null;\n\n public constructor(init?: Partial<OnlineDeleteReservationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineDeleteReservationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(OnlineDeleteReservationRequest as unknown)[immerable] = true;\n\nexport class GetUserByEmailOrMobile implements IReturn<ResponseBase<GetUserByEmailOrMobileResponse>>\n{\n public term: string|null;\n public businessId: number|null;\n\n public constructor(init?: Partial<GetUserByEmailOrMobile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetUserByEmailOrMobile'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GetUserByEmailOrMobileResponse>(); }\n}\n(GetUserByEmailOrMobile as unknown)[immerable] = true;\n\nexport class OnlineResetRequest implements IReturn<ResponseBase<boolean>>\n{\n public userName: string|null;\n public recaptcha: string|null;\n\n public constructor(init?: Partial<OnlineResetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineResetRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineResetRequest as unknown)[immerable] = true;\n\nexport class OnlineChangePasswordByReset implements IReturn<CurrentUser>\n{\n public resetCode: string|null;\n public newPassword: string|null;\n public score: number|null;\n\n public constructor(init?: Partial<OnlineChangePasswordByReset>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineChangePasswordByReset'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CurrentUser(); }\n}\n(OnlineChangePasswordByReset as unknown)[immerable] = true;\n\nexport class OnlineLogoutRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<OnlineLogoutRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineLogoutRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineLogoutRequest as unknown)[immerable] = true;\n\nexport class OnlineVerifyRequest implements IReturn<ResponseBase<OnlineCustomerDto>>\n{\n public code: string|null;\n\n public constructor(init?: Partial<OnlineVerifyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineVerifyRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<OnlineCustomerDto>(); }\n}\n(OnlineVerifyRequest as unknown)[immerable] = true;\n\nexport class OnlineRegisterRequest extends OnlineCustomerDto implements IReturn<ResponseBase<boolean>>\n{\n public newPassword: string|null;\n public passwordScore: number|null;\n public givenConsent: boolean|null;\n public recaptcha: string|null;\n\n public constructor(init?: Partial<OnlineRegisterRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineRegisterRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineRegisterRequest as unknown)[immerable] = true;\n\nexport class OnlineRegisterValidationRequest implements IReturn<ResponseBase<OnlineRegisterValidationResponse>>\n{\n public email: string|null;\n public mobileNumber: string|null;\n public businessId: number|null;\n\n public constructor(init?: Partial<OnlineRegisterValidationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineRegisterValidationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<OnlineRegisterValidationResponse>(); }\n}\n(OnlineRegisterValidationRequest as unknown)[immerable] = true;\n\n// @Route(\"/online/files/bykey\")\n// @Route(\"/online/files/bykey/{Key}\")\nexport class OnlineFileByKeyRequest implements IReturn<HttpResult>\n{\n public key: string|null;\n\n public constructor(init?: Partial<OnlineFileByKeyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineFileByKeyRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(OnlineFileByKeyRequest as unknown)[immerable] = true;\n\n// @Route(\"/online/files/bypath/{Path}\")\nexport class OnlineFileByPathRequest implements IReturn<HttpResult>\n{\n public path: string|null;\n\n public constructor(init?: Partial<OnlineFileByPathRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineFileByPathRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(OnlineFileByPathRequest as unknown)[immerable] = true;\n\nexport class OnlineContentByKeyRequest implements IReturn<ResponseBase<string>>\n{\n public key: string|null;\n\n public constructor(init?: Partial<OnlineContentByKeyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineContentByKeyRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(OnlineContentByKeyRequest as unknown)[immerable] = true;\n\nexport class AppointmentPaymentDetailsRequest implements IReturn<ResponseEnhancerBase<OnlinePaymentDetailsResponse>>\n{\n public appointmentId: number|null;\n public totalPrice: number|null;\n\n public constructor(init?: Partial<AppointmentPaymentDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentPaymentDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseEnhancerBase<OnlinePaymentDetailsResponse>(); }\n}\n(AppointmentPaymentDetailsRequest as unknown)[immerable] = true;\n\nexport class OnlinePatientFormRequest implements IReturn<ResponseBase<OnlinePatientFormResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<OnlinePatientFormRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlinePatientFormRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlinePatientFormResponse>(); }\n}\n(OnlinePatientFormRequest as unknown)[immerable] = true;\n\nexport class OnlinePatientFormSubmit implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n public reportData: string|null;\n public isDraft: boolean|null;\n public updates: Update[]|null;\n\n public constructor(init?: Partial<OnlinePatientFormSubmit>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlinePatientFormSubmit'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlinePatientFormSubmit as unknown)[immerable] = true;\n\nexport class GetOnlineWaitingListReservedRequest implements IReturn<ResponseBase<OnlineWaitingListReservationConfirmResponse>>\n{\n public waitingListGlobalId: string|null;\n\n public constructor(init?: Partial<GetOnlineWaitingListReservedRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetOnlineWaitingListReservedRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlineWaitingListReservationConfirmResponse>(); }\n}\n(GetOnlineWaitingListReservedRequest as unknown)[immerable] = true;\n\nexport class ActionWaitingListReserveRequest implements IReturn<ResponseBase<boolean>>\n{\n public waitingListGlobalId: string|null;\n public waitingListStatus: WaitingListStatus|null;\n public subStatus: WaitingListSubStatus|null;\n public notificationType: WaitingListNotificationType|null;\n public pauseUntilDateTime: string|null;\n public takePaymentRequest: TakePaymentRequest|null;\n public paymentType: number|null;\n public packageId: string|null;\n public discountCodeId: string|null;\n\n public constructor(init?: Partial<ActionWaitingListReserveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ActionWaitingListReserveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ActionWaitingListReserveRequest as unknown)[immerable] = true;\n\nexport class OnlineSiteRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<OnlineSiteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineSiteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(OnlineSiteRequest as unknown)[immerable] = true;\n\nexport class GetChasedPaymentRequest implements IReturn<ResponseBase<ChasedPaymentDTO>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetChasedPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetChasedPaymentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ChasedPaymentDTO>(); }\n}\n(GetChasedPaymentRequest as unknown)[immerable] = true;\n\nexport class GetSquareCustomerDetailsRequest implements IReturn<ResponseBase<GetSquareCustomerDetailsResponse>>\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<GetSquareCustomerDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSquareCustomerDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetSquareCustomerDetailsResponse>(); }\n}\n(GetSquareCustomerDetailsRequest as unknown)[immerable] = true;\n\nexport class PayChasedPaymentRequest implements IReturn<ResponseBase<T>>\n{\n public chaseSlug: string|null;\n public saveCard: boolean|null;\n public cardDetails: CardDetails|null;\n public takePaymentRequest: TakePaymentRequest|null;\n\n public constructor(init?: Partial<PayChasedPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayChasedPaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(PayChasedPaymentRequest as unknown)[immerable] = true;\n\nexport class IsTwoFactorAuthRequired implements IReturn<boolean>\n{\n public token: string|null;\n\n public constructor(init?: Partial<IsTwoFactorAuthRequired>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IsTwoFactorAuthRequired'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(IsTwoFactorAuthRequired as unknown)[immerable] = true;\n\nexport class OnlineAutoLoginCodeRequest implements IReturn<boolean>\n{\n public token: string|null;\n\n public constructor(init?: Partial<OnlineAutoLoginCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineAutoLoginCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(OnlineAutoLoginCodeRequest as unknown)[immerable] = true;\n\nexport class OnlineAutoLoginVerifyCodeRequest implements IReturn<OnlineAutoLoginVerifyCodeResponse>\n{\n public token: string|null;\n public accessCode: string|null;\n public password: string|null;\n\n public constructor(init?: Partial<OnlineAutoLoginVerifyCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineAutoLoginVerifyCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new OnlineAutoLoginVerifyCodeResponse(); }\n}\n(OnlineAutoLoginVerifyCodeRequest as unknown)[immerable] = true;\n\nexport class OnlineRequestAccessCodeRequest implements IReturn<boolean>\n{\n public email: string|null;\n public phoneNumber: string|null;\n\n public constructor(init?: Partial<OnlineRequestAccessCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineRequestAccessCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return false; }\n}\n(OnlineRequestAccessCodeRequest as unknown)[immerable] = true;\n\nexport class ConnectFeatureFlagsRequest implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n\n public constructor(init?: Partial<ConnectFeatureFlagsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConnectFeatureFlagsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(ConnectFeatureFlagsRequest as unknown)[immerable] = true;\n\nexport class UsedLicenseRequest implements IReturn<ResponseBase<number>>\n{\n\n public constructor(init?: Partial<UsedLicenseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UsedLicenseRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(UsedLicenseRequest as unknown)[immerable] = true;\n\nexport class MsInvoicesRequest implements IReturn<ResponseBase<MsInvoiceResponse>>\n{\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<MsInvoicesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MsInvoicesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MsInvoiceResponse>(); }\n}\n(MsInvoicesRequest as unknown)[immerable] = true;\n\nexport class MsInvoiceRequest implements IReturn<ResponseBase<MsInvoiceResponse>>\n{\n public invoiceId: number|null;\n\n public constructor(init?: Partial<MsInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MsInvoiceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MsInvoiceResponse>(); }\n}\n(MsInvoiceRequest as unknown)[immerable] = true;\n\nexport class CurrentLicenceQuoteRequest implements IReturn<ResponseBase<Tm3License>>\n{\n\n public constructor(init?: Partial<CurrentLicenceQuoteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CurrentLicenceQuoteRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Tm3License>(); }\n}\n(CurrentLicenceQuoteRequest as unknown)[immerable] = true;\n\nexport class MsClientResponse implements IReturn<ResponseBase<MsClientResponse>>\n{\n public reference: string|null;\n public forename: string|null;\n public title: string|null;\n public surname: string|null;\n public email: string|null;\n public homeTelephone: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public postCode: string|null;\n public invoiceAddressLine1: string|null;\n public invoiceAddressLine2: string|null;\n public invoiceAddressLine3: string|null;\n public invoiceAddressLine4: string|null;\n public invoicePostCode: string|null;\n public accountHolders: MsContact[]|null;\n public accountEmails: MsContact[]|null;\n public supportEmails: MsContact[]|null;\n public bzAccountManager: string|null;\n public bzAccountManagerEmail: string|null;\n public bzAccountManagerTelephone: string|null;\n public subscriptionMonthly: number|null;\n public subscriptionAnnual: number|null;\n public returnEmail: string|null;\n public useSMSCredits: boolean|null;\n public useSystemCredits: boolean|null;\n public locationID: number|null;\n\n public constructor(init?: Partial<MsClientResponse>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MsClientResponse'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<MsClientResponse>(); }\n}\n(MsClientResponse as unknown)[immerable] = true;\n\nexport class MsClientRequest implements IReturn<ResponseBase<MsClientResponse>>\n{\n\n public constructor(init?: Partial<MsClientRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MsClientRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MsClientResponse>(); }\n}\n(MsClientRequest as unknown)[immerable] = true;\n\nexport class GetClientPricing implements IReturn<ResponseBase<GetClientPricingResponse>>\n{\n\n public constructor(init?: Partial<GetClientPricing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClientPricing'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetClientPricingResponse>(); }\n}\n(GetClientPricing as unknown)[immerable] = true;\n\nexport class ConfirmClientSignUp implements IReturn<ResponseBase<ConfirmClientSignUpResponse>>\n{\n public noOfPractitioners: number|null;\n public paymentMethod: PaymentMethod|null;\n\n public constructor(init?: Partial<ConfirmClientSignUp>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConfirmClientSignUp'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ConfirmClientSignUpResponse>(); }\n}\n(ConfirmClientSignUp as unknown)[immerable] = true;\n\nexport class ConfirmClickPlusSignUp implements IReturn<ResponseBase<ConfirmClientSignUpResponse>>\n{\n public paymentMethod: PaymentMethod|null;\n\n public constructor(init?: Partial<ConfirmClickPlusSignUp>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConfirmClickPlusSignUp'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ConfirmClientSignUpResponse>(); }\n}\n(ConfirmClickPlusSignUp as unknown)[immerable] = true;\n\nexport class GetClientPaymentDetailsRequest implements IReturn<ResponseBase<GetClientPaymentDetailsResponse>>\n{\n\n public constructor(init?: Partial<GetClientPaymentDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClientPaymentDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetClientPaymentDetailsResponse>(); }\n}\n(GetClientPaymentDetailsRequest as unknown)[immerable] = true;\n\nexport class SaveClientPaymentDetailsRequest implements IReturn<ResponseBase<SaveClientPaymentDetailsResponse>>\n{\n public paymentMethod: PaymentMethod|null;\n\n public constructor(init?: Partial<SaveClientPaymentDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveClientPaymentDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SaveClientPaymentDetailsResponse>(); }\n}\n(SaveClientPaymentDetailsRequest as unknown)[immerable] = true;\n\nexport class ClickPPCDetailsRequest implements IReturn<ResponseBase<ClickPPCDetailsResponse>>\n{\n\n public constructor(init?: Partial<ClickPPCDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickPPCDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClickPPCDetailsResponse>(); }\n}\n(ClickPPCDetailsRequest as unknown)[immerable] = true;\n\nexport class ClickUpgradeDetailsRequest implements IReturn<ResponseBase<ClickUpgradeDetailsResponse>>\n{\n\n public constructor(init?: Partial<ClickUpgradeDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickUpgradeDetailsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClickUpgradeDetailsResponse>(); }\n}\n(ClickUpgradeDetailsRequest as unknown)[immerable] = true;\n\nexport class ClickTrialRequest implements IReturn<ResponseBase<ClickTrialResponse>>\n{\n\n public constructor(init?: Partial<ClickTrialRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickTrialRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickTrialResponse>(); }\n}\n(ClickTrialRequest as unknown)[immerable] = true;\n\nexport class ClickDowngradeRequest implements IReturn<ResponseBase<ClickDowngradeResponse>>\n{\n\n public constructor(init?: Partial<ClickDowngradeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickDowngradeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickDowngradeResponse>(); }\n}\n(ClickDowngradeRequest as unknown)[immerable] = true;\n\nexport class ClientDowngradeToSingleLicenseRequest implements IReturn<ResponseBase<ClientDowngradeToSingleLicenseResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ClientDowngradeToSingleLicenseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientDowngradeToSingleLicenseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClientDowngradeToSingleLicenseResponse>(); }\n}\n(ClientDowngradeToSingleLicenseRequest as unknown)[immerable] = true;\n\nexport class ClientNoLongerWantsToCancelRequest implements IReturn<ResponseBase<ClientNoLongerWantsToCancelResponse>>\n{\n\n public constructor(init?: Partial<ClientNoLongerWantsToCancelRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClientNoLongerWantsToCancelRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClientNoLongerWantsToCancelResponse>(); }\n}\n(ClientNoLongerWantsToCancelRequest as unknown)[immerable] = true;\n\nexport class ConfirmClientCancellation implements IReturn<ResponseBase<ConfirmClientCancellationResponse>>\n{\n public trialLapsed: boolean|null;\n public comments: string|null;\n\n public constructor(init?: Partial<ConfirmClientCancellation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConfirmClientCancellation'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ConfirmClientCancellationResponse>(); }\n}\n(ConfirmClientCancellation as unknown)[immerable] = true;\n\nexport class HasInvalidCardRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<HasInvalidCardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'HasInvalidCardRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(HasInvalidCardRequest as unknown)[immerable] = true;\n\nexport class MSCurrencyRequest implements IReturn<ResponseBase<MSCurrencyResponse>>\n{\n\n public constructor(init?: Partial<MSCurrencyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MSCurrencyRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MSCurrencyResponse>(); }\n}\n(MSCurrencyRequest as unknown)[immerable] = true;\n\nexport class MSSubscriptionRequest implements IReturn<ResponseBase<MSSubscriptionResponse>>\n{\n\n public constructor(init?: Partial<MSSubscriptionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MSSubscriptionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<MSSubscriptionResponse>(); }\n}\n(MSSubscriptionRequest as unknown)[immerable] = true;\n\nexport class CreditAutoTopUpAmountRequest implements IReturn<ResponseBase<CreditAutoTopUpAmountResponse>>\n{\n public bundleType: string|null;\n public number: number|null;\n\n public constructor(init?: Partial<CreditAutoTopUpAmountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreditAutoTopUpAmountRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CreditAutoTopUpAmountResponse>(); }\n}\n(CreditAutoTopUpAmountRequest as unknown)[immerable] = true;\n\nexport class SMSOrderHistoryRequest implements IReturn<ResponseBase<SMSOrderHistoryResponse>>, IHasGuidId\n{\n public id: string|null;\n\n public constructor(init?: Partial<SMSOrderHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SMSOrderHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SMSOrderHistoryResponse>(); }\n}\n(SMSOrderHistoryRequest as unknown)[immerable] = true;\n\nexport class SMSBundlePurchaseRequest implements IReturn<ResponseBase<number>>\n{\n public number: number|null;\n\n public constructor(init?: Partial<SMSBundlePurchaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SMSBundlePurchaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(SMSBundlePurchaseRequest as unknown)[immerable] = true;\n\nexport class SMSBundleOptionsRequest implements IReturn<ResponseBase<SMSBundleOptionsResponse>>\n{\n\n public constructor(init?: Partial<SMSBundleOptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SMSBundleOptionsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SMSBundleOptionsResponse>(); }\n}\n(SMSBundleOptionsRequest as unknown)[immerable] = true;\n\nexport class SystemCreditBundleOptionsRequest implements IReturn<ResponseBase<SystemCreditBundleOptionsResponse>>\n{\n\n public constructor(init?: Partial<SystemCreditBundleOptionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SystemCreditBundleOptionsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SystemCreditBundleOptionsResponse>(); }\n}\n(SystemCreditBundleOptionsRequest as unknown)[immerable] = true;\n\nexport class CreditOrderHistoryRequest implements IReturn<ResponseBase<CreditOrderHistoryResponse>>, IHasGuidId\n{\n public id: string|null;\n\n public constructor(init?: Partial<CreditOrderHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreditOrderHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CreditOrderHistoryResponse>(); }\n}\n(CreditOrderHistoryRequest as unknown)[immerable] = true;\n\nexport class CreditBundlePurchaseRequest implements IReturn<ResponseBase<number>>\n{\n public number: number|null;\n\n public constructor(init?: Partial<CreditBundlePurchaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreditBundlePurchaseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(CreditBundlePurchaseRequest as unknown)[immerable] = true;\n\nexport class PayMSInvoiceRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<PayMSInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayMSInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PayMSInvoiceRequest as unknown)[immerable] = true;\n\nexport class DownloadMSInvoiceRequest implements IReturn<ResponseBase<string>>\n{\n public invoiceId: number|null;\n\n public constructor(init?: Partial<DownloadMSInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DownloadMSInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(DownloadMSInvoiceRequest as unknown)[immerable] = true;\n\nexport class PayPerClickDetailRequest implements IReturn<ResponseBase<T>>\n{\n public skip: number|null;\n public take: number|null;\n public includedInAllowance: boolean|null;\n public isSystemCredit: boolean|null;\n\n public constructor(init?: Partial<PayPerClickDetailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayPerClickDetailRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(PayPerClickDetailRequest as unknown)[immerable] = true;\n\nexport class PayPerClickSMSDetailRequest implements IReturn<ResponseBase<T>>\n{\n public itemType: ItemType|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public fromDate: string|null;\n public toDate: string|null;\n\n public constructor(init?: Partial<PayPerClickSMSDetailRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayPerClickSMSDetailRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(PayPerClickSMSDetailRequest as unknown)[immerable] = true;\n\nexport class PayPerClickStatsRequest implements IReturn<ResponseBase<PayPerClickStatsResponse>>\n{\n\n public constructor(init?: Partial<PayPerClickStatsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayPerClickStatsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PayPerClickStatsResponse>(); }\n}\n(PayPerClickStatsRequest as unknown)[immerable] = true;\n\nexport class UnrestrictedUserRequest implements IReturn<ResponseBase<UnrestrictedUserResponse>>\n{\n\n public constructor(init?: Partial<UnrestrictedUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UnrestrictedUserRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<UnrestrictedUserResponse>(); }\n}\n(UnrestrictedUserRequest as unknown)[immerable] = true;\n\nexport class AddUnrestrictedUserRequest implements IReturn<ResponseBase<UnrestrictedUserResponse>>\n{\n public userId: number|null;\n\n public constructor(init?: Partial<AddUnrestrictedUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddUnrestrictedUserRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<UnrestrictedUserResponse>(); }\n}\n(AddUnrestrictedUserRequest as unknown)[immerable] = true;\n\nexport class DeleteUnrestrictedUserRequest implements IReturn<ResponseBase<boolean>>\n{\n public userId: number|null;\n\n public constructor(init?: Partial<DeleteUnrestrictedUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteUnrestrictedUserRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteUnrestrictedUserRequest as unknown)[immerable] = true;\n\n// @Route(\"/reports/diary/appointment-analysis\")\nexport class DiaryAnalysisReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<DiaryAnalysisResponse>>\n{\n public diaryEventCategories: string[]|null;\n public appointmentStatuses: number[]|null;\n public bookingMethods: string[]|null;\n public rooms: number[]|null;\n public ageCategory: string[]|null;\n public cancellationReasons: string[]|null;\n\n public constructor(init?: Partial<DiaryAnalysisReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryAnalysisReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DiaryAnalysisResponse>(); }\n}\n(DiaryAnalysisReportRequest as unknown)[immerable] = true;\n\nexport class NonReturningReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<T>>\n{\n public weekCount: number|null;\n\n public constructor(init?: Partial<NonReturningReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NonReturningReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NonReturningReportRequest as unknown)[immerable] = true;\n\nexport class TrafficReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<T>>\n{\n public instructor: number[]|null;\n public paymentMethods: string[]|null;\n public orderBy: TrafficReportOrdering|null;\n\n public constructor(init?: Partial<TrafficReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'TrafficReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(TrafficReportRequest as unknown)[immerable] = true;\n\nexport class AutopayReportRequest extends BaseParamsForAllReports implements IReturn<ResponseBase<T>>\n{\n public status: SubscriptionStatus[]|null;\n public cardsExpiringSoon: boolean|null;\n public upcomingRenewals: boolean|null;\n\n public constructor(init?: Partial<AutopayReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AutopayReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AutopayReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/stripe/redirect\", \"GET\")\nexport class StripeRedirectRequest\n{\n public state: string|null;\n public code: string|null;\n public error: string|null;\n public error_Description: string|null;\n\n public constructor(init?: Partial<StripeRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StripeRedirectRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(StripeRedirectRequest as unknown)[immerable] = true;\n\nexport class StripeStateRequest\n{\n public state: string|null;\n\n public constructor(init?: Partial<StripeStateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StripeStateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(StripeStateRequest as unknown)[immerable] = true;\n\nexport class StripeIntegrationRequest implements IReturn<StripeOAuthResponse>\n{\n public state: string|null;\n\n public constructor(init?: Partial<StripeIntegrationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StripeIntegrationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new StripeOAuthResponse(); }\n}\n(StripeIntegrationRequest as unknown)[immerable] = true;\n\nexport class GetSettingsRequest implements IReturn<ResponseBase<GetSettingsResponse>>\n{\n public id: number|null;\n public businessId: number|null;\n\n public constructor(init?: Partial<GetSettingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSettingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetSettingsResponse>(); }\n}\n(GetSettingsRequest as unknown)[immerable] = true;\n\nexport class PutSettingsRequest extends OnlineSettings implements IReturn<ResponseBase<OnlineSettings>>\n{\n // @Ignore()\n public logo: string|null;\n\n public constructor(init?: Partial<PutSettingsRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PutSettingsRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<OnlineSettings>(); }\n}\n(PutSettingsRequest as unknown)[immerable] = true;\n\nexport class GetCategoryAndServicesRequest implements IReturn<ResponseBase<OnlineCategoryResponse>>, IGet\n{\n public businessId: number|null;\n\n public constructor(init?: Partial<GetCategoryAndServicesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCategoryAndServicesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlineCategoryResponse>(); }\n}\n(GetCategoryAndServicesRequest as unknown)[immerable] = true;\n\nexport class PutServiceRequest extends OnlineClinicService implements IReturn<ResponseBase<OnlineClinicService>>, IPut\n{\n public category: string|null;\n\n public constructor(init?: Partial<PutServiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PutServiceRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<OnlineClinicService>(); }\n}\n(PutServiceRequest as unknown)[immerable] = true;\n\nexport class PutCategoryRequest extends OnlineServiceCategory implements IReturn<ResponseBase<OnlineServiceCategory>>, IPut\n{\n\n public constructor(init?: Partial<PutCategoryRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PutCategoryRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<OnlineServiceCategory>(); }\n}\n(PutCategoryRequest as unknown)[immerable] = true;\n\nexport class GetOnlineSectionRequest implements IReturn<ResponseBase<OnlineSection>>\n{\n\n public constructor(init?: Partial<GetOnlineSectionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetOnlineSectionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlineSection>(); }\n}\n(GetOnlineSectionRequest as unknown)[immerable] = true;\n\nexport class PutSectionRequest extends OnlineSection implements IReturn<ResponseBase<OnlineSection>>\n{\n\n public constructor(init?: Partial<PutSectionRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PutSectionRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<OnlineSection>(); }\n}\n(PutSectionRequest as unknown)[immerable] = true;\n\nexport class DeleteSectionRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteSectionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteSectionRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteSectionRequest as unknown)[immerable] = true;\n\nexport class PutCategoriesRequest implements IReturn<ResponseBase<OnlineServiceCategory>>, IPut\n{\n public categories: PutCategoryRequest[]|null;\n\n public constructor(init?: Partial<PutCategoriesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PutCategoriesRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<OnlineServiceCategory>(); }\n}\n(PutCategoriesRequest as unknown)[immerable] = true;\n\nexport class DeleteCategoryRequest implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public businessId: number|null;\n\n public constructor(init?: Partial<DeleteCategoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteCategoryRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteCategoryRequest as unknown)[immerable] = true;\n\nexport class PutSectionsRequest extends OnlineSection implements IReturn<ResponseBase<OnlineSection>>\n{\n public sections: PutSectionRequest[]|null;\n\n public constructor(init?: Partial<PutSectionsRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'PutSectionsRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<OnlineSection>(); }\n}\n(PutSectionsRequest as unknown)[immerable] = true;\n\nexport class CanDeleteImageRequest implements IReturn<ResponseBase<CanDeleteImageResponse>>\n{\n public filename: string|null;\n\n public constructor(init?: Partial<CanDeleteImageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CanDeleteImageRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CanDeleteImageResponse>(); }\n}\n(CanDeleteImageRequest as unknown)[immerable] = true;\n\nexport class GetBusinessSettingsIdRequest implements IReturn<ResponseBase<BusinessSettingsIdResponse>>\n{\n public businessId: number|null;\n public currentSettingsId: number|null;\n\n public constructor(init?: Partial<GetBusinessSettingsIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessSettingsIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessSettingsIdResponse>(); }\n}\n(GetBusinessSettingsIdRequest as unknown)[immerable] = true;\n\nexport class RemoveBusinessSettingsIdRequest implements IReturn<ResponseBase<GetSettingsResponse>>\n{\n public businessId: number|null;\n\n public constructor(init?: Partial<RemoveBusinessSettingsIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveBusinessSettingsIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetSettingsResponse>(); }\n}\n(RemoveBusinessSettingsIdRequest as unknown)[immerable] = true;\n\nexport class SearchAllClassesRequest implements IReturn<ResponseBase<ClassSearchResponse>>\n{\n public date: string|null;\n public locationGuid: string|null;\n public practitionerId: number|null;\n public serviceIds: string[]|null;\n public parentServiceId: string|null;\n\n public constructor(init?: Partial<SearchAllClassesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SearchAllClassesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClassSearchResponse>(); }\n}\n(SearchAllClassesRequest as unknown)[immerable] = true;\n\nexport class FindSimilarTimedClassesRequest implements IReturn<ResponseBase<SimilarClass>>\n{\n public classSessionId: number|null;\n public serviceId: string|null;\n\n public constructor(init?: Partial<FindSimilarTimedClassesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FindSimilarTimedClassesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SimilarClass>(); }\n}\n(FindSimilarTimedClassesRequest as unknown)[immerable] = true;\n\nexport class BookTempClassRequest extends BookingClassResponse implements IReturn<ResponseBase<T>>\n{\n public isCourse: boolean|null;\n public classSessionId: number|null;\n public serviceId: string|null;\n public attendanceIds: number[]|null;\n public attendeeId: number|null;\n\n public constructor(init?: Partial<BookTempClassRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'BookTempClassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(BookTempClassRequest as unknown)[immerable] = true;\n\nexport class DeleteTempClassBookingRequest implements IReturnVoid\n{\n public isCourse: boolean|null;\n public classAttendanceIds: number[]|null;\n public attendeeId: number|null;\n\n public constructor(init?: Partial<DeleteTempClassBookingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteTempClassBookingRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() {}\n}\n(DeleteTempClassBookingRequest as unknown)[immerable] = true;\n\nexport class GetAllCoursesFromTypeRequest implements IReturn<ResponseBase<T>>\n{\n public classTypeId: number|null;\n public serviceId: string|null;\n\n public constructor(init?: Partial<GetAllCoursesFromTypeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllCoursesFromTypeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAllCoursesFromTypeRequest as unknown)[immerable] = true;\n\nexport class BookClassRequest implements IReturn<ResponseBase<T>>\n{\n public classSessionId: number|null;\n public isCourse: boolean|null;\n public classAttendanceIds: number[]|null;\n public attendeeId: number|null;\n public paymentType: PaymentMode|null;\n public packageId: string|null;\n public discountCodeId: string|null;\n public takePaymentRequest: TakePaymentRequest|null;\n\n public constructor(init?: Partial<BookClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BookClassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(BookClassRequest as unknown)[immerable] = true;\n\n/** @description Used to get a JWT Token and Refresh Token. */\n// @Route(\"/token\")\nexport class TokenRequest implements IReturn<ResponseBase<ConvertSessionToTokenResponse>>\n{\n\n public constructor(init?: Partial<TokenRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TokenRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ConvertSessionToTokenResponse>(); }\n}\n(TokenRequest as unknown)[immerable] = true;\n\n// @Route(\"/zoom/publicAuthorisationRedirect\")\nexport class PublicAuthorisationRedirectRequest implements IReturn<HttpResult>\n{\n public code: string|null;\n public stateId: string|null;\n\n public constructor(init?: Partial<PublicAuthorisationRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PublicAuthorisationRedirectRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(PublicAuthorisationRedirectRequest as unknown)[immerable] = true;\n\n// @Route(\"/zoom\", \"POST\")\nexport class PublicLinkToZoomRequest implements IReturn<ZoomLinkToTM3Response>\n{\n public clientId: string|null;\n\n public constructor(init?: Partial<PublicLinkToZoomRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PublicLinkToZoomRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ZoomLinkToTM3Response(); }\n}\n(PublicLinkToZoomRequest as unknown)[immerable] = true;\n\nexport class SaveZoomStateRequest implements IReturn<ResponseBase<ZoomSaveStateResponse>>\n{\n\n public constructor(init?: Partial<SaveZoomStateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveZoomStateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ZoomSaveStateResponse>(); }\n}\n(SaveZoomStateRequest as unknown)[immerable] = true;\n\nexport class CustomRedirectRequest\n{\n public redirectUri: string|null;\n\n public constructor(init?: Partial<CustomRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomRedirectRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CustomRedirectRequest as unknown)[immerable] = true;\n\n// @Route(\"/zoom/authorisationRedirect\")\nexport class AuthorisationRedirectRequest implements IReturn<HttpResult>\n{\n public code: string|null;\n public stateId: string|null;\n\n public constructor(init?: Partial<AuthorisationRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AuthorisationRedirectRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(AuthorisationRedirectRequest as unknown)[immerable] = true;\n\nexport class GetZoomUsersRequest implements IReturn<ResponseBase<ZoomUser>>\n{\n\n public constructor(init?: Partial<GetZoomUsersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetZoomUsersRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ZoomUser>(); }\n}\n(GetZoomUsersRequest as unknown)[immerable] = true;\n\nexport class IsZoomIntegrationConfiguredRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<IsZoomIntegrationConfiguredRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IsZoomIntegrationConfiguredRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(IsZoomIntegrationConfiguredRequest as unknown)[immerable] = true;\n\nexport class UnlinkTm3FromZoomRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<UnlinkTm3FromZoomRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UnlinkTm3FromZoomRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UnlinkTm3FromZoomRequest as unknown)[immerable] = true;\n\nexport class AreZoomTokensValid implements IReturn<ResponseBase<ZoomReauthResponse>>\n{\n\n public constructor(init?: Partial<AreZoomTokensValid>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AreZoomTokensValid'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ZoomReauthResponse>(); }\n}\n(AreZoomTokensValid as unknown)[immerable] = true;\n\nexport class WaitingListsRequest implements IReturn<ResponseBase<WaitingListResponse>>, ILocationIds\n{\n public patientId: number|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n\n public constructor(init?: Partial<WaitingListsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WaitingListsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WaitingListResponse>(); }\n}\n(WaitingListsRequest as unknown)[immerable] = true;\n\nexport class WaitingListById implements IReturn<ResponseBase<WaitingListByIdResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<WaitingListById>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WaitingListById'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WaitingListByIdResponse>(); }\n}\n(WaitingListById as unknown)[immerable] = true;\n\nexport class WaitingListStateHistoryRequest implements IReturn<ResponseBase<WaitingListStateHistoryResponse[]>>\n{\n public id: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<WaitingListStateHistoryRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WaitingListStateHistoryRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WaitingListStateHistoryResponse[]>(); }\n}\n(WaitingListStateHistoryRequest as unknown)[immerable] = true;\n\nexport class AllowedIPRequest implements IReturn<ResponseBase<AllowedIPResponse>>\n{\n\n public constructor(init?: Partial<AllowedIPRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllowedIPRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AllowedIPResponse>(); }\n}\n(AllowedIPRequest as unknown)[immerable] = true;\n\nexport class AddAllowedIPRequest implements IReturn<ResponseBase<AllowedIPResponse>>\n{\n public address: string|null;\n\n public constructor(init?: Partial<AddAllowedIPRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddAllowedIPRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AllowedIPResponse>(); }\n}\n(AddAllowedIPRequest as unknown)[immerable] = true;\n\nexport class DeleteAllowedIPRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteAllowedIPRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteAllowedIPRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteAllowedIPRequest as unknown)[immerable] = true;\n\n// @Route(\"/sentry/{Action}/{ClientId}\")\nexport class SentryApmRequest implements IReturn<ResponseBase<T>>\n{\n public clientId: number|null;\n public action: SentryApmAction|null;\n\n public constructor(init?: Partial<SentryApmRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SentryApmRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SentryApmRequest as unknown)[immerable] = true;\n\nexport class EmbeddableDashboardTokenRequest implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<EmbeddableDashboardTokenRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EmbeddableDashboardTokenRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(EmbeddableDashboardTokenRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalCurrentUserRequest implements IReturn<ResponseBase<CurrentUser>>\n{\n\n public constructor(init?: Partial<ReferralPortalCurrentUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCurrentUserRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CurrentUser>(); }\n}\n(ReferralPortalCurrentUserRequest as unknown)[immerable] = true;\n\nexport class GetAllSystemLogRequest implements IReturn<ResponseBase<SystemLogWithCustomerName>>\n{\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<GetAllSystemLogRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllSystemLogRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SystemLogWithCustomerName>(); }\n}\n(GetAllSystemLogRequest as unknown)[immerable] = true;\n\nexport class SquareGetDeviceCodeRequest implements IReturn<ResponseBase<SquareGetDeviceCodeResponse>>\n{\n public locationId: number|null;\n public name: string|null;\n\n public constructor(init?: Partial<SquareGetDeviceCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareGetDeviceCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SquareGetDeviceCodeResponse>(); }\n}\n(SquareGetDeviceCodeRequest as unknown)[immerable] = true;\n\nexport class ClearAcceptTerminalSaveRequest implements IReturn<ResponseBase<boolean>>\n{\n public locationId: number|null;\n public name: string|null;\n public merchantId: string|null;\n public deviceCode: string|null;\n public inUse: boolean|null;\n\n public constructor(init?: Partial<ClearAcceptTerminalSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearAcceptTerminalSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClearAcceptTerminalSaveRequest as unknown)[immerable] = true;\n\nexport class SquareUnpairTerminalRequest implements IReturn<ResponseBase<boolean>>\n{\n public deviceCode: string|null;\n\n public constructor(init?: Partial<SquareUnpairTerminalRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareUnpairTerminalRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SquareUnpairTerminalRequest as unknown)[immerable] = true;\n\nexport class TerminalPairCheckRequest implements IReturn<ResponseBase<TerminalPairingResponse>>\n{\n public deviceCode: string|null;\n\n public constructor(init?: Partial<TerminalPairCheckRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TerminalPairCheckRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TerminalPairingResponse>(); }\n}\n(TerminalPairCheckRequest as unknown)[immerable] = true;\n\nexport class TerminalListRequest implements IReturn<ResponseBase<Terminal[]>>\n{\n\n public constructor(init?: Partial<TerminalListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TerminalListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Terminal[]>(); }\n}\n(TerminalListRequest as unknown)[immerable] = true;\n\nexport class TerminalFailPairingRequest implements IReturn<ResponseBase<boolean>>\n{\n public deviceCode: string|null;\n\n public constructor(init?: Partial<TerminalFailPairingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TerminalFailPairingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(TerminalFailPairingRequest as unknown)[immerable] = true;\n\nexport class SquareTerminalPaymentRequest implements IReturn<ResponseBase<SquareTerminalPaymentResponse>>\n{\n public amount: number|null;\n public terminalId: string|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<SquareTerminalPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareTerminalPaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SquareTerminalPaymentResponse>(); }\n}\n(SquareTerminalPaymentRequest as unknown)[immerable] = true;\n\n// @Route(\"/add-terminal-payment\")\nexport class AddTerminalPaymentToInvoiceRequest implements IReturn<ResponseBase<boolean>>\n{\n public invoiceId: number|null;\n public terminalPaymentDto: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<AddTerminalPaymentToInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddTerminalPaymentToInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AddTerminalPaymentToInvoiceRequest as unknown)[immerable] = true;\n\nexport class GetPaymentFromTerminalDto implements IReturn<ResponseBase<Income>>\n{\n public terminalPaymentDto: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<GetPaymentFromTerminalDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPaymentFromTerminalDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Income>(); }\n}\n(GetPaymentFromTerminalDto as unknown)[immerable] = true;\n\nexport class CreatePaymentIntent\n{\n public amount: number|null;\n public futureUsage: boolean|null;\n public paymentMethodId: string|null;\n\n public constructor(init?: Partial<CreatePaymentIntent>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreatePaymentIntent'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CreatePaymentIntent as unknown)[immerable] = true;\n\nexport class OnlineStripeChangeCardRequest implements IReturn<ResponseBase<ChangeCardResponse>>\n{\n public paymentMethodId: string|null;\n\n public constructor(init?: Partial<OnlineStripeChangeCardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineStripeChangeCardRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ChangeCardResponse>(); }\n}\n(OnlineStripeChangeCardRequest as unknown)[immerable] = true;\n\nexport class CreateChasePaymentIntent extends CreatePaymentIntent\n{\n public paymentUrlCode: string|null;\n\n public constructor(init?: Partial<CreateChasePaymentIntent>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateChasePaymentIntent'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CreateChasePaymentIntent as unknown)[immerable] = true;\n\nexport class CreateWaitingListPaymentIntent extends CreatePaymentIntent\n{\n public waitingListUrlCode: string|null;\n\n public constructor(init?: Partial<CreateWaitingListPaymentIntent>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateWaitingListPaymentIntent'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CreateWaitingListPaymentIntent as unknown)[immerable] = true;\n\nexport class SquareStartPaymentCaptureRequest extends TakePaymentRequest implements IReturn<ResponseBase<TakePaymentRequest>>\n{\n public amount: number|null;\n public paymentUrlCode: string|null;\n public cardholderName: string|null;\n\n public constructor(init?: Partial<SquareStartPaymentCaptureRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SquareStartPaymentCaptureRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TakePaymentRequest>(); }\n}\n(SquareStartPaymentCaptureRequest as unknown)[immerable] = true;\n\nexport class OnlineSquareChangeCardRequest implements IReturn<ResponseBase<ChangeCardResponse>>\n{\n public tokenId: string|null;\n public cardholderName: string|null;\n public verificationToken: string|null;\n\n public constructor(init?: Partial<OnlineSquareChangeCardRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OnlineSquareChangeCardRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<ChangeCardResponse>(); }\n}\n(OnlineSquareChangeCardRequest as unknown)[immerable] = true;\n\nexport class ClearAcceptSaveCardDetailsRequest implements IReturn<ResponseBase<boolean>>\n{\n public takePaymentRequest: TakePaymentRequest|null;\n\n public constructor(init?: Partial<ClearAcceptSaveCardDetailsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearAcceptSaveCardDetailsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClearAcceptSaveCardDetailsRequest as unknown)[immerable] = true;\n\nexport class ClearAcceptRegisterInterest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<ClearAcceptRegisterInterest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearAcceptRegisterInterest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClearAcceptRegisterInterest as unknown)[immerable] = true;\n\nexport class ClearAcceptConfigRequest implements IReturn<ResponseBase<ClearAcceptConfigResponse>>\n{\n\n public constructor(init?: Partial<ClearAcceptConfigRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearAcceptConfigRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClearAcceptConfigResponse>(); }\n}\n(ClearAcceptConfigRequest as unknown)[immerable] = true;\n\nexport class ClearAcceptStartPaymentCaptureRequest implements IReturn<ResponseBase<TakePaymentRequest>>\n{\n public amount: number|null;\n public locationId: number|null;\n public saveCard: boolean|null;\n public paymentUrlCode: string|null;\n public waitingListUrlCode: string|null;\n\n public constructor(init?: Partial<ClearAcceptStartPaymentCaptureRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearAcceptStartPaymentCaptureRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TakePaymentRequest>(); }\n}\n(ClearAcceptStartPaymentCaptureRequest as unknown)[immerable] = true;\n\nexport class UpdateAddressOnPaymentRequest implements IReturn<ResponseBase<boolean>>\n{\n public takePaymentRequest: TakePaymentRequest|null;\n public paymentUrlCode: string|null;\n public amount: number|null;\n public customerId: number|null;\n public waitingListUrlCode: string|null;\n\n public constructor(init?: Partial<UpdateAddressOnPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateAddressOnPaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UpdateAddressOnPaymentRequest as unknown)[immerable] = true;\n\nexport class StartTerminalPaymentRequest implements IReturn<ResponseBase<TerminalPaymentDto>>\n{\n public amount: number|null;\n public terminalId: string|null;\n public customerId: number|null;\n public locationId: number|null;\n public receivedAtLocationId: number|null;\n public practitionerId: number|null;\n public invoiceId: number|null;\n\n public constructor(init?: Partial<StartTerminalPaymentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StartTerminalPaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TerminalPaymentDto>(); }\n}\n(StartTerminalPaymentRequest as unknown)[immerable] = true;\n\nexport class CancelTerminalCheckoutRequest implements IReturn<ResponseBase<boolean>>\n{\n public terminalPayment: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<CancelTerminalCheckoutRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancelTerminalCheckoutRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CancelTerminalCheckoutRequest as unknown)[immerable] = true;\n\nexport class TerminalPaymentStatusRequest implements IReturn<ResponseBase<TerminalPaymentDto>>\n{\n public terminalPayment: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<TerminalPaymentStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TerminalPaymentStatusRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TerminalPaymentDto>(); }\n}\n(TerminalPaymentStatusRequest as unknown)[immerable] = true;\n\nexport class StartVirtualTerminalPaymentCaptureRequest implements IReturn<ResponseBase<TakePaymentRequest>>\n{\n public amount: number|null;\n public locationId: number|null;\n public customerId: number|null;\n public invoiceId: number|null;\n\n public constructor(init?: Partial<StartVirtualTerminalPaymentCaptureRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StartVirtualTerminalPaymentCaptureRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TakePaymentRequest>(); }\n}\n(StartVirtualTerminalPaymentCaptureRequest as unknown)[immerable] = true;\n\nexport class CompleteVirtualTerminalPaymentCaptureRequest implements IReturn<ResponseBase<TakePaymentRequest>>\n{\n public amount: number|null;\n public locationId: number|null;\n public customerId: number|null;\n public invoiceId: number|null;\n public takePaymentRequest: TakePaymentRequest|null;\n\n public constructor(init?: Partial<CompleteVirtualTerminalPaymentCaptureRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CompleteVirtualTerminalPaymentCaptureRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TakePaymentRequest>(); }\n}\n(CompleteVirtualTerminalPaymentCaptureRequest as unknown)[immerable] = true;\n\nexport class CreateApiCredentials implements IReturn<ResponseBase<T>>\n{\n public notes: string|null;\n\n public constructor(init?: Partial<CreateApiCredentials>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateApiCredentials'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CreateApiCredentials as unknown)[immerable] = true;\n\nexport class RevokeApiCredentials implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<RevokeApiCredentials>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RevokeApiCredentials'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(RevokeApiCredentials as unknown)[immerable] = true;\n\nexport class GetApiCredentials implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<GetApiCredentials>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetApiCredentials'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetApiCredentials as unknown)[immerable] = true;\n\nexport class ClickBillRequest implements IReturn<ResponseBase<ClickBillResponse>>\n{\n public appointmentId: number|null;\n public useTerminalPayment: boolean|null;\n public requestViaPaymentProvider: boolean|null;\n public reminderToSetupPaymentProvider: boolean|null;\n public invoiceNow: boolean|null;\n public status: AppointmentStatus|null;\n public incomeId: number|null;\n\n public constructor(init?: Partial<ClickBillRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickBillRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickBillResponse>(); }\n}\n(ClickBillRequest as unknown)[immerable] = true;\n\nexport class BlankInvoiceRequest implements IReturn<ResponseBase<number>>\n{\n public accountId: number|null;\n\n public constructor(init?: Partial<BlankInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BlankInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(BlankInvoiceRequest as unknown)[immerable] = true;\n\nexport class ClickInvoiceUsePaymentRequest extends ClickInvoiceReqBase implements IReturn<ResponseBase<T>>\n{\n public paymentIds: number[]|null;\n\n public constructor(init?: Partial<ClickInvoiceUsePaymentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickInvoiceUsePaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClickInvoiceUsePaymentRequest as unknown)[immerable] = true;\n\nexport class ClickEmailInvoiceRequest extends ClickInvoiceReqBase implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<ClickEmailInvoiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickEmailInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClickEmailInvoiceRequest as unknown)[immerable] = true;\n\nexport class ClickDownloadInvoiceRequest extends ClickInvoiceReqBase implements IReturn<ResponseBase<ClickDownloadInvoiceResponse>>\n{\n\n public constructor(init?: Partial<ClickDownloadInvoiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickDownloadInvoiceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClickDownloadInvoiceResponse>(); }\n}\n(ClickDownloadInvoiceRequest as unknown)[immerable] = true;\n\nexport class ClickInvoiceTransferRequest extends ClickInvoiceReqBase implements IReturn<ResponseBase<number>>\n{\n public transferFullAmount: boolean|null;\n public charge: Charge|null;\n public useCredit: boolean|null;\n public shouldAutopay: boolean|null;\n\n public constructor(init?: Partial<ClickInvoiceTransferRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickInvoiceTransferRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(ClickInvoiceTransferRequest as unknown)[immerable] = true;\n\nexport class ClickCreatePaymentForInvoiceRequest extends Income implements IReturn<ResponseBase<ClickCreatePaymentResponse>>\n{\n public emailReceipt: boolean|null;\n public invoiceId: number|null;\n public reminderToSetupPaymentProvider: boolean|null;\n public downloadPDF: boolean|null;\n\n public constructor(init?: Partial<ClickCreatePaymentForInvoiceRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickCreatePaymentForInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickCreatePaymentResponse>(); }\n}\n(ClickCreatePaymentForInvoiceRequest as unknown)[immerable] = true;\n\nexport class ClickCreatePaymentRequest extends Income implements IReturn<ResponseBase<ClickCreatePaymentResponse>>\n{\n public emailReceipt: boolean|null;\n public reminderToSetupPaymentProvider: boolean|null;\n public downloadPDF: boolean|null;\n public status: string|null;\n\n public constructor(init?: Partial<ClickCreatePaymentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickCreatePaymentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClickCreatePaymentResponse>(); }\n}\n(ClickCreatePaymentRequest as unknown)[immerable] = true;\n\nexport class ClickSendEmailReceiptRequest implements IReturn<ResponseBase<boolean>>\n{\n public customerId: number|null;\n public groupId: number|null;\n public locationId: number|null;\n public paymentId: number|null;\n\n public constructor(init?: Partial<ClickSendEmailReceiptRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickSendEmailReceiptRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClickSendEmailReceiptRequest as unknown)[immerable] = true;\n\nexport class ClickDownloadReceiptRequest extends ClickSendEmailReceiptRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<ClickDownloadReceiptRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickDownloadReceiptRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClickDownloadReceiptRequest as unknown)[immerable] = true;\n\nexport class ClickCommunicationRequest implements IReturn<ResponseBase<ClickCommunicationResponse>>\n{\n public mode: CommunicationMode|null;\n public type: string|null;\n public typeId: number|null;\n\n public constructor(init?: Partial<ClickCommunicationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClickCommunicationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClickCommunicationResponse>(); }\n}\n(ClickCommunicationRequest as unknown)[immerable] = true;\n\nexport class GetClassSessionRequest implements IReturn<ResponseBase<ClassSessionBaseResponse>>\n{\n public id: number|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<GetClassSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClassSessionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClassSessionBaseResponse>(); }\n}\n(GetClassSessionRequest as unknown)[immerable] = true;\n\nexport class CreateClassRequest implements IReturn<ResponseBase<CreateClassResponse>>\n{\n public locationId: number|null;\n public roomId: number|null;\n public practitionerId: number|null;\n public isAvailableOnline: boolean|null;\n public classTypeId: number|null;\n public dateCreateMode: ClassDateCreationMode|null;\n public dayOfWeek: DayOfWeek|null;\n public startTime: string|null;\n public endTime: string|null;\n public sessionDuration: number|null;\n public recurrenceStartTime: string|null;\n public recurrenceEndTime: string|null;\n public recurForNWeeks: number|null;\n public customDates: string[]|null;\n public minAttendees: number|null;\n public maxAttendees: number|null;\n public serviceTypeId: number|null;\n public colour: number|null;\n public clashMode: ClashMode|null;\n public isVideo: boolean|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingPassword: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n\n public constructor(init?: Partial<CreateClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateClassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CreateClassResponse>(); }\n}\n(CreateClassRequest as unknown)[immerable] = true;\n\nexport class GetDesktopClassRequest implements IReturn<ResponseBase<GetDesktopClassResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetDesktopClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDesktopClassRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetDesktopClassResponse>(); }\n}\n(GetDesktopClassRequest as unknown)[immerable] = true;\n\nexport class AddStudentToClassSessionRequest implements IReturn<ResponseBase<AddStudentToClassSessionResponse>>\n{\n public sessionId: number|null;\n public customerId: number|null;\n public customer: CustomerSaveRequest|null;\n public billingMode: ClassBillingMode|null;\n public paymentMode: ClassPaymentMode|null;\n public stockIdForNewBillingItem: number|null;\n public cardToken: string|null;\n public appliesTo: SessionUpdateAppliesTo|null;\n public customSessionIds: number[]|null;\n public receivedAtLocationId: number|null;\n public emailReceipt: boolean|null;\n public emailInvoice: boolean|null;\n public addToWaitingListSessionIds: number[]|null;\n public updateAttendance: boolean|null;\n public clashMode: ClashMode|null;\n public terminalPaymentDto: TerminalPaymentDto|null;\n public prepaidId: number|null;\n\n public constructor(init?: Partial<AddStudentToClassSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddStudentToClassSessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AddStudentToClassSessionResponse>(); }\n}\n(AddStudentToClassSessionRequest as unknown)[immerable] = true;\n\nexport class EditClassRequest implements IReturn<ResponseBase<EditClassResponse>>\n{\n public sessionId: number|null;\n public editing: ClassEditType|null;\n public newValue: number|null;\n public duration: number|null;\n public newDate: string|null;\n public newStartDate: string|null;\n public newEndDate: string|null;\n public clashMode: ClashMode|null;\n public appliesTo: SessionUpdateAppliesTo|null;\n public customSessionIds: number[]|null;\n\n public constructor(init?: Partial<EditClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditClassRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<EditClassResponse>(); }\n}\n(EditClassRequest as unknown)[immerable] = true;\n\nexport class CancelClassSessionRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<CancelClassSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancelClassSessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CancelClassSessionRequest as unknown)[immerable] = true;\n\nexport class GetStudentOtherSessionsRequest implements IReturn<ResponseBase<ClassSessionBaseResponse>>\n{\n public classTypeId: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<GetStudentOtherSessionsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetStudentOtherSessionsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClassSessionBaseResponse>(); }\n}\n(GetStudentOtherSessionsRequest as unknown)[immerable] = true;\n\nexport class PayForClassRequest implements IReturn<ResponseBase<PayForClassResponse>>\n{\n public sessionId: number|null;\n public customerId: number|null;\n public billingMode: ClassBillingMode|null;\n public paymentMode: ClassPaymentMode|null;\n public stockIdForNewBillingItem: number|null;\n public updateAttendance: boolean|null;\n public cardToken: string|null;\n public receivedAtLocationId: number|null;\n public emailReceipt: boolean|null;\n public emailInvoice: boolean|null;\n public terminalPaymentDto: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<PayForClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayForClassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PayForClassResponse>(); }\n}\n(PayForClassRequest as unknown)[immerable] = true;\n\nexport class UseCreditRequest implements IReturn<ResponseBase<T>>\n{\n public sessionId: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<UseCreditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UseCreditRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UseCreditRequest as unknown)[immerable] = true;\n\nexport class RemoveStudentFromSessionRequest implements IReturn<ResponseBase<CourseResponse>>\n{\n public sessionId: number|null;\n public appliesTo: SessionUpdateAppliesTo|null;\n public customSessionIds: number[]|null;\n public customerId: number|null;\n public cancellationFeeDue: boolean|null;\n public transferFeeDue: boolean|null;\n public transferToSessionId: number|null;\n public billingMode: ClassBillingMode|null;\n public paymentMode: ClassPaymentMode|null;\n public existingPrePaidId: number|null;\n public stockIdForNewBillingItem: number|null;\n public cardToken: string|null;\n public receivedAtLocationId: number|null;\n public emailInvoice: boolean|null;\n public emailReceipt: boolean|null;\n\n public constructor(init?: Partial<RemoveStudentFromSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveStudentFromSessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CourseResponse>(); }\n}\n(RemoveStudentFromSessionRequest as unknown)[immerable] = true;\n\nexport class GetClassSessionRequests implements IReturn<ResponseBase<ClassSessionBaseResponse>>\n{\n public sessionId: number|null;\n\n public constructor(init?: Partial<GetClassSessionRequests>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClassSessionRequests'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClassSessionBaseResponse>(); }\n}\n(GetClassSessionRequests as unknown)[immerable] = true;\n\nexport class GetWeeklyClassSessionRequests implements IReturn<ResponseBase<ClassSessionBaseResponse>>\n{\n public sessionId: number|null;\n\n public constructor(init?: Partial<GetWeeklyClassSessionRequests>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetWeeklyClassSessionRequests'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClassSessionBaseResponse>(); }\n}\n(GetWeeklyClassSessionRequests as unknown)[immerable] = true;\n\nexport class MarkClassSessionAttendance implements IReturn<ResponseBase<boolean>>\n{\n public sessionId: number|null;\n public customerId: number|null;\n public updateAttendance: boolean|null;\n\n public constructor(init?: Partial<MarkClassSessionAttendance>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MarkClassSessionAttendance'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(MarkClassSessionAttendance as unknown)[immerable] = true;\n\nexport class ClassCommunicationRequest implements IReturn<ResponseBase<ClassCommunicationResponse>>\n{\n public id: number|null;\n public message: string|null;\n public userName: string|null;\n\n public constructor(init?: Partial<ClassCommunicationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClassCommunicationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClassCommunicationResponse>(); }\n}\n(ClassCommunicationRequest as unknown)[immerable] = true;\n\nexport class CustomerPrepaidRequestForClass implements IReturn<ResponseBase<PrePaidItemsForClassResponse>>\n{\n public sessionDateTime: string|null;\n public customerId: number|null;\n public classTypeId: number|null;\n\n public constructor(init?: Partial<CustomerPrepaidRequestForClass>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerPrepaidRequestForClass'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PrePaidItemsForClassResponse>(); }\n}\n(CustomerPrepaidRequestForClass as unknown)[immerable] = true;\n\nexport class DeletePayAsYouGoClassRequest implements IReturn<ResponseBase<boolean>>\n{\n public sessionId: number|null;\n\n public constructor(init?: Partial<DeletePayAsYouGoClassRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeletePayAsYouGoClassRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeletePayAsYouGoClassRequest as unknown)[immerable] = true;\n\nexport class ClassSessionMarkAllAttendanceRequest implements IReturn<ResponseBase<boolean>>\n{\n public sessionId: number|null;\n public allAttended: boolean|null;\n\n public constructor(init?: Partial<ClassSessionMarkAllAttendanceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClassSessionMarkAllAttendanceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ClassSessionMarkAllAttendanceRequest as unknown)[immerable] = true;\n\nexport class SaveClassNotesToAttendee implements IReturn<ResponseBase<ClassSessionBaseResponse>>\n{\n public data: { [index:string]: Object; }|null;\n public templateId: string|null;\n public customerId: number|null;\n public sessionId: number|null;\n\n public constructor(init?: Partial<SaveClassNotesToAttendee>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveClassNotesToAttendee'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClassSessionBaseResponse>(); }\n}\n(SaveClassNotesToAttendee as unknown)[immerable] = true;\n\nexport class GetClassTypeRequest implements IReturn<ResponseBase<ClassTypeResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetClassTypeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClassTypeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClassTypeResponse>(); }\n}\n(GetClassTypeRequest as unknown)[immerable] = true;\n\nexport class ClassTypesListRequest implements IReturn<ResponseBase<ClassTypeResponse>>\n{\n public ids: number|null;\n\n public constructor(init?: Partial<ClassTypesListRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClassTypesListRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClassTypeResponse>(); }\n}\n(ClassTypesListRequest as unknown)[immerable] = true;\n\nexport class ClassTypeSaveRequest implements IReturn<ResponseBase<ClassTypeResponse>>, IDepartmentIds, ILocationIds\n{\n public id: number|null;\n public name: string|null;\n public description: string|null;\n public imageUrl: string|null;\n public termsAndConditionsFormId: string|null;\n public colour: number|null;\n public defaultSessionLength: number|null;\n public numberOfSessions: number|null;\n public defaultMinAttendees: number|null;\n public defaultMaxAttendees: number|null;\n public isCourse: boolean|null;\n public isAvailableOnline: boolean|null;\n public isCurrent: boolean|null;\n public isFavourite: boolean|null;\n public allowPayPerSession: boolean|null;\n public perSessionStockId: number|null;\n public perSessionPrice: number|null;\n public packagesToCreate: SavePackageRequest[]|null;\n public packagesToAdd: ClassPackageResponse[]|null;\n public packagesToRemove: ClassPackageResponse[]|null;\n public cancellationChargeApplies: boolean|null;\n public cancellationHours: number|null;\n public cancellationStockId: number|null;\n public cancellationPrice: number|null;\n public lateTransferChargeApplies: boolean|null;\n public lateTransferHours: number|null;\n public lateTransferStockId: number|null;\n public lateTransferPrice: number|null;\n public serviceTypeId: number|null;\n public colourCss: string|null;\n public departmentIds: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public isVideo: boolean|null;\n\n public constructor(init?: Partial<ClassTypeSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClassTypeSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClassTypeResponse>(); }\n}\n(ClassTypeSaveRequest as unknown)[immerable] = true;\n\nexport class GetCourse implements IReturn<ResponseBase<CourseResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetCourse>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCourse'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CourseResponse>(); }\n}\n(GetCourse as unknown)[immerable] = true;\n\nexport class AddStudentToCourseRequest implements IReturn<ResponseBase<AddStudentToCourseResponse>>\n{\n public courseId: number|null;\n public customerId: number|null;\n public customer: CustomerSaveRequest|null;\n public billingMode: CourseBillingMode|null;\n public paymentMode: ClassPaymentMode|null;\n public existingPrePaidId: number|null;\n public stockIdForNewBillingItem: number|null;\n public cardToken: string|null;\n public receivedAtLocationId: number|null;\n public emailInvoice: boolean|null;\n public emailReceipt: boolean|null;\n public clashMode: ClashMode|null;\n public addToWaitingList: boolean|null;\n public sessionDateTime: string|null;\n public terminalPaymentDto: TerminalPaymentDto|null;\n\n public constructor(init?: Partial<AddStudentToCourseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddStudentToCourseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AddStudentToCourseResponse>(); }\n}\n(AddStudentToCourseRequest as unknown)[immerable] = true;\n\nexport class EditCourseRequest implements IReturn<ResponseBase<EditCourseResponse>>\n{\n public courseId: number|null;\n public sessionId: number|null;\n public editing: ClassEditType|null;\n public newValue: number|null;\n public newDate: string|null;\n public appliesTo: CourseEditAppliesTo|null;\n public clashMode: ClashMode|null;\n public newStartDate: string|null;\n public newEndDate: string|null;\n public duration: number|null;\n\n public constructor(init?: Partial<EditCourseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditCourseRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<EditCourseResponse>(); }\n}\n(EditCourseRequest as unknown)[immerable] = true;\n\nexport class CreateCourseRequest implements IReturn<ResponseBase<CreateCourseResponse>>\n{\n public locationId: number|null;\n public roomId: number|null;\n public practitionerId: number|null;\n public isAvailableOnline: boolean|null;\n public classTypeId: number|null;\n public dateCreateMode: ClassDateCreationMode|null;\n public dayOfWeek: DayOfWeek|null;\n public startTime: string|null;\n public endTime: string|null;\n public sessionDuration: number|null;\n public recurrenceStartTime: string|null;\n public recurrenceEndTime: string|null;\n public recurForNWeeks: number|null;\n public customDates: string[]|null;\n public minAttendees: number|null;\n public maxAttendees: number|null;\n public serviceTypeId: number|null;\n public colour: number|null;\n public clashMode: ClashMode|null;\n public isVideo: boolean|null;\n public videoMeetingParticipantJoinUrl: string|null;\n public videoMeetingPassword: string|null;\n public videoMeetingProvider: VideoMeetingProvider|null;\n\n public constructor(init?: Partial<CreateCourseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateCourseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CreateCourseResponse>(); }\n}\n(CreateCourseRequest as unknown)[immerable] = true;\n\nexport class SwapStudentCourseSessionRequest implements IReturn<ResponseBase<CourseResponse>>\n{\n public customerId: number|null;\n public removeFromSessionId: number|null;\n public addToSessionId: number|null;\n public courseId: number|null;\n\n public constructor(init?: Partial<SwapStudentCourseSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SwapStudentCourseSessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CourseResponse>(); }\n}\n(SwapStudentCourseSessionRequest as unknown)[immerable] = true;\n\nexport class CancelCourseSessionRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<CancelCourseSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CancelCourseSessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CancelCourseSessionRequest as unknown)[immerable] = true;\n\nexport class AddCourseSessionRequest implements IReturn<ResponseBase<CourseResponse>>\n{\n public practitionerId: number|null;\n public roomId: number|null;\n public courseId: number|null;\n public startDateTime: string|null;\n public endDateTime: string|null;\n\n public constructor(init?: Partial<AddCourseSessionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddCourseSessionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CourseResponse>(); }\n}\n(AddCourseSessionRequest as unknown)[immerable] = true;\n\nexport class GetPotentialSwapDates implements IReturn<ResponseBase<CourseResponse>>\n{\n public courseTypeId: number|null;\n public sessionId: number|null;\n public courseId: number|null;\n\n public constructor(init?: Partial<GetPotentialSwapDates>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPotentialSwapDates'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CourseResponse>(); }\n}\n(GetPotentialSwapDates as unknown)[immerable] = true;\n\nexport class PayForCourseRequest implements IReturn<ResponseBase<PayForClassResponse>>\n{\n public courseId: number|null;\n public customerId: number|null;\n public billingMode: CourseBillingMode|null;\n public paymentMode: ClassPaymentMode|null;\n public existingPrePaidId: number|null;\n public stockIdForNewBillingItem: number|null;\n public cardToken: string|null;\n public sessionId: number|null;\n public updateAttendance: boolean|null;\n public receivedAtLocationId: number|null;\n public emailInvoice: boolean|null;\n public emailReceipt: boolean|null;\n public sessionDateTime: string|null;\n\n public constructor(init?: Partial<PayForCourseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PayForCourseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<PayForClassResponse>(); }\n}\n(PayForCourseRequest as unknown)[immerable] = true;\n\nexport class RemoveStudentFromCourseRequest implements IReturn<ResponseBase<RemoveStudentFromClassResponse>>\n{\n public courseId: number|null;\n public customerId: number|null;\n public cancellationFeeDue: boolean|null;\n public billingMode: CourseBillingMode|null;\n public paymentMode: ClassPaymentMode|null;\n public stockIdForNewBillingItem: number|null;\n public cardToken: string|null;\n public receivedAtLocationId: number|null;\n public emailInvoice: boolean|null;\n public emailReceipt: boolean|null;\n\n public constructor(init?: Partial<RemoveStudentFromCourseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveStudentFromCourseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<RemoveStudentFromClassResponse>(); }\n}\n(RemoveStudentFromCourseRequest as unknown)[immerable] = true;\n\nexport class MarkCourseSessionAttendance implements IReturn<ResponseBase<boolean>>\n{\n public sessionId: number|null;\n public customerId: number|null;\n public updateAttendance: boolean|null;\n\n public constructor(init?: Partial<MarkCourseSessionAttendance>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MarkCourseSessionAttendance'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(MarkCourseSessionAttendance as unknown)[immerable] = true;\n\nexport class MarkCourseSessionDna implements IReturn<ResponseBase<boolean>>\n{\n public sessionId: number|null;\n public customerId: number|null;\n public updateDna: boolean|null;\n\n public constructor(init?: Partial<MarkCourseSessionDna>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'MarkCourseSessionDna'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(MarkCourseSessionDna as unknown)[immerable] = true;\n\nexport class CourseSessionMarkAllAttendanceRequest implements IReturn<ResponseBase<boolean>>\n{\n public sessionId: number|null;\n public allAttended: boolean|null;\n\n public constructor(init?: Partial<CourseSessionMarkAllAttendanceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CourseSessionMarkAllAttendanceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CourseSessionMarkAllAttendanceRequest as unknown)[immerable] = true;\n\nexport class DeleteCourseRequest implements IReturn<ResponseBase<boolean>>\n{\n public courseId: number|null;\n\n public constructor(init?: Partial<DeleteCourseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteCourseRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteCourseRequest as unknown)[immerable] = true;\n\n// @Route(\"/BeneManualSend/\")\nexport class BeneManualParams\n{\n public workflowId: number|null;\n public spid: string|null;\n public outcome: string|null;\n public notes: string|null;\n public secret: string|null;\n\n public constructor(init?: Partial<BeneManualParams>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BeneManualParams'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n\nexport class SearchReferralPortalDashboardStatisticsRequest implements IReturn<ResponseBase<SearchReferralPortalDashboardStatisticsResponse>>\n{\n public userLevel: string|null;\n public userId: string|null;\n\n public constructor(init?: Partial<SearchReferralPortalDashboardStatisticsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SearchReferralPortalDashboardStatisticsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SearchReferralPortalDashboardStatisticsResponse>(); }\n}\n(SearchReferralPortalDashboardStatisticsRequest as unknown)[immerable] = true;\n\nexport class FormUrlRequest implements IReturn<ResponseBase<FormUrlResponse>>\n{\n public templateId: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<FormUrlRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'FormUrlRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<FormUrlResponse>(); }\n}\n(FormUrlRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationFacilitySearchRequest implements IReturn<ResponseBase<NM_LocationFacility>>\n{\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n public facilityIds: string[]|null;\n\n public constructor(init?: Partial<NetworkLocationFacilitySearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationFacilitySearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NM_LocationFacility>(); }\n}\n(NetworkLocationFacilitySearchRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationFacilityByLocationRequest implements IReturn<ResponseBase<string>>\n{\n public locationId: string|null;\n\n public constructor(init?: Partial<NetworkLocationFacilityByLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationFacilityByLocationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(NetworkLocationFacilityByLocationRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationLocationFacilityPutRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n public facilityIds: string[]|null;\n\n public constructor(init?: Partial<NetworkLocationLocationFacilityPutRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationLocationFacilityPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(NetworkLocationLocationFacilityPutRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationFacilitySaveRequest implements IReturn<ResponseBase<boolean>>\n{\n public name: string|null;\n public icon: string|null;\n\n public constructor(init?: Partial<NetworkLocationFacilitySaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationFacilitySaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(NetworkLocationFacilitySaveRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationFacilityPutRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n public name: string|null;\n public icon: string|null;\n\n public constructor(init?: Partial<NetworkLocationFacilityPutRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationFacilityPutRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(NetworkLocationFacilityPutRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationFacilityGetRequest implements IReturn<ResponseBase<NM_LocationFacility>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<NetworkLocationFacilityGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationFacilityGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NM_LocationFacility>(); }\n}\n(NetworkLocationFacilityGetRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationFacilityDeleteRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<NetworkLocationFacilityDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationFacilityDeleteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(NetworkLocationFacilityDeleteRequest as unknown)[immerable] = true;\n\nexport class GetWorkflowBookingOffers implements IReturn<ResponseBase<BookingOfferWithDetails>>\n{\n public workflowID: number|null;\n public subWorkflowID: number|null;\n\n public constructor(init?: Partial<GetWorkflowBookingOffers>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetWorkflowBookingOffers'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BookingOfferWithDetails>(); }\n}\n(GetWorkflowBookingOffers as unknown)[immerable] = true;\n\n// @Route(\"/cswfs/{ClientID}\")\nexport class ClearCachedSubWorkflowSearchRequest implements IReturn<Object>\n{\n public clientID: string|null;\n\n public constructor(init?: Partial<ClearCachedSubWorkflowSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClearCachedSubWorkflowSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(ClearCachedSubWorkflowSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/sync/rp/{ClientID}/{Password}/{MinId}/{MaxId}\")\nexport class SyncAllSubworkflows implements IReturn<Object>\n{\n public clientID: string|null;\n public password: string|null;\n public maxId: number|null;\n public minId: number|null;\n\n public constructor(init?: Partial<SyncAllSubworkflows>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SyncAllSubworkflows'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Object(); }\n}\n(SyncAllSubworkflows as unknown)[immerable] = true;\n\n// @Route(\"/AddressLookup/UkGeoCode/{SearchTerm}\")\nexport class UkGeoCodeLookupRequest implements IReturn<ResponseBase<UkGeoCodeResponse>>\n{\n public searchTerm: string|null;\n\n public constructor(init?: Partial<UkGeoCodeLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UkGeoCodeLookupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<UkGeoCodeResponse>(); }\n}\n(UkGeoCodeLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/AddressLookup/LatLong/{postcode}\")\nexport class LatLongLookupRequest implements IReturn<ResponseBase<CoordinatesResponse>>\n{\n public postcode: string|null;\n\n public constructor(init?: Partial<LatLongLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LatLongLookupRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CoordinatesResponse>(); }\n}\n(LatLongLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/addresslookup/storefinder/findNearest\", \"POST\")\nexport class StoreFinderFindNearestRequest implements IReturn<ResponseBase<RetrieveNearestResponse>>\n{\n public origin: string|null;\n public distanceType: DistanceType|null;\n public locations: string[]|null;\n public maximumItems: number|null;\n public maximumRadius: number|null;\n public maximumTime: number|null;\n\n public constructor(init?: Partial<StoreFinderFindNearestRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StoreFinderFindNearestRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<RetrieveNearestResponse>(); }\n}\n(StoreFinderFindNearestRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/reports/bespoke\")\nexport class GetWorkflowBespokeReports implements IReturn<FolderTree>\n{\n\n public constructor(init?: Partial<GetWorkflowBespokeReports>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetWorkflowBespokeReports'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new FolderTree(); }\n}\n(GetWorkflowBespokeReports as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/capturepoint/{id}\", \"Get\")\nexport class CapturePointRequest implements IReturn<ResponseBase<CapturePointDto>>\n{\n public id: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<CapturePointRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CapturePointRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CapturePointDto>(); }\n}\n(CapturePointRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/updatecapturepoint\", \"Put\")\nexport class UpdateCapturePointRequest extends CapturePointDto\n{\n\n public constructor(init?: Partial<UpdateCapturePointRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateCapturePointRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() {}\n}\n(UpdateCapturePointRequest as unknown)[immerable] = true;\n\n// @Route(\"/referral-portal/caseflow/roles\", \"GET\")\nexport class ReferralPortalRolesRequest implements IReturn<ResponseBase<RoleResponse>>, IGet\n{\n\n public constructor(init?: Partial<ReferralPortalRolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalRolesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<RoleResponse>(); }\n}\n(ReferralPortalRolesRequest as unknown)[immerable] = true;\n\nexport class AutomatedUserRolesRequest implements IReturn<ResponseBase<string>>, IGet\n{\n\n public constructor(init?: Partial<AutomatedUserRolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AutomatedUserRolesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(AutomatedUserRolesRequest as unknown)[immerable] = true;\n\n// @Route(\"/referral-portal/businesses/contactsearch\")\n// @Route(\"/referral-portal/businesses/contactsearch/{ChildCustomerGuid}\")\nexport class ReferralPortalCaseflowContactSearch implements IReturn<ResponseBase<MedicalContactResponse>>\n{\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n public childCustomerGuid: string|null;\n public groupId: number|null;\n public childCustomerId: number|null;\n\n public constructor(init?: Partial<ReferralPortalCaseflowContactSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCaseflowContactSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<MedicalContactResponse>(); }\n}\n(ReferralPortalCaseflowContactSearch as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/businesses/contactsearch\")\nexport class CaseflowContactSearch implements IReturn<ResponseBase<CaseflowMedicalContactResponse>>\n{\n public limitToBusinesses: number[]|null;\n public addingNewContact: boolean|null;\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n\n public constructor(init?: Partial<CaseflowContactSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowContactSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseflowMedicalContactResponse>(); }\n}\n(CaseflowContactSearch as unknown)[immerable] = true;\n\nexport class WorkflowContactCreateDto implements IReturn<CaseflowMedicalContactResponse>\n{\n public id: number|null;\n public groupContact: boolean|null;\n public current: boolean|null;\n public category: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public businessName: string|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public mobile: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public altTelephone1: string|null;\n public altTelephone2: string|null;\n public fax: string|null;\n public email: string|null;\n public web: string|null;\n public locationId: number|null;\n public locationName: string|null;\n public providerNumber: string|null;\n public role: string|null;\n public roleDescription: string|null;\n public reference: string|null;\n public contactType: WorkflowContactType|null;\n public contactTypeId: number|null;\n public contactTypeGuid: string|null;\n public isAdministrative: boolean|null;\n public isPatient: boolean|null;\n public isClinical: boolean|null;\n public isFinancial: boolean|null;\n public isClinicalAdmin: boolean|null;\n public isNetwork: boolean|null;\n public owner: ContactOwner|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<WorkflowContactCreateDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowContactCreateDto'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CaseflowMedicalContactResponse(); }\n}\n(WorkflowContactCreateDto as unknown)[immerable] = true;\n\nexport class CaseflowRemoveWorkflowContact implements IReturn<HttpResult>\n{\n public id: number|null;\n\n public constructor(init?: Partial<CaseflowRemoveWorkflowContact>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowRemoveWorkflowContact'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new HttpResult(); }\n}\n(CaseflowRemoveWorkflowContact as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/addcontact\")\nexport class CaseflowAddContact implements IReturn<ResponseBase<T>>, IWorkflowId, ISecurityId\n{\n public contact: CaseflowMedicalContactResponse|null;\n public groupId: number|null;\n public workflow: number|null;\n public subWorkflow: number|null;\n public securityId: number|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<CaseflowAddContact>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowAddContact'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CaseflowAddContact as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/saveContactRole\", \"POST\")\nexport class SaveContactRoleRequest\n{\n public roleId: string|null;\n public contactId: number|null;\n public businessId: number|null;\n\n public constructor(init?: Partial<SaveContactRoleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveContactRoleRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(SaveContactRoleRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/business/{BusinessId}/contact/{ContactId}\", \"DELETE\")\nexport class DeleteContactRoleRequest\n{\n public contactId: number|null;\n public businessId: number|null;\n\n public constructor(init?: Partial<DeleteContactRoleRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteContactRoleRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() {}\n}\n(DeleteContactRoleRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/roles\", \"GET\")\nexport class RolesRequest implements IReturn<ResponseBase<RoleResponse>>\n{\n\n public constructor(init?: Partial<RolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RolesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<RoleResponse>(); }\n}\n(RolesRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/business/contacts\", \"POST\")\nexport class GetBusinessContacts implements IReturn<ResponseBase<T>>\n{\n public businessId: number|null;\n public countOnly: boolean|null;\n public name: string|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<GetBusinessContacts>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessContacts'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetBusinessContacts as unknown)[immerable] = true;\n\nexport class GetCustomerGroupTheme implements IReturn<ResponseBase<ThemeResponse>>\n{\n\n public constructor(init?: Partial<GetCustomerGroupTheme>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomerGroupTheme'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ThemeResponse>(); }\n}\n(GetCustomerGroupTheme as unknown)[immerable] = true;\n\nexport class SaveCustomerGroupTheme extends ThemeResponse implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<SaveCustomerGroupTheme>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveCustomerGroupTheme'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SaveCustomerGroupTheme as unknown)[immerable] = true;\n\nexport class CustomerGroupHasLogo implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<CustomerGroupHasLogo>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerGroupHasLogo'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CustomerGroupHasLogo as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/customergroup/logo\", \"GET\")\nexport class GetCustomerGroupLogo implements IReturn<HttpResult>\n{\n\n public constructor(init?: Partial<GetCustomerGroupLogo>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomerGroupLogo'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(GetCustomerGroupLogo as unknown)[immerable] = true;\n\nexport class SaveCustomerGroupLogo implements IReturn<ResponseBase<boolean>>\n{\n public logo: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<SaveCustomerGroupLogo>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveCustomerGroupLogo'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SaveCustomerGroupLogo as unknown)[immerable] = true;\n\nexport class GetValidDistributorGroupsRequest implements IReturn<ResponseBase<GroupResponse>>\n{\n public childGroupId: number|null;\n public takeAll: boolean|null;\n\n public constructor(init?: Partial<GetValidDistributorGroupsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetValidDistributorGroupsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(GetValidDistributorGroupsRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/group/distributor/children\", \"POST\")\nexport class GetChildrenForDistributor extends KendoGridOptionsRequest implements IReturn<ResponseBase<CustomerGroupResponse>>\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<GetChildrenForDistributor>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GetChildrenForDistributor'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CustomerGroupResponse>(); }\n}\n(GetChildrenForDistributor as unknown)[immerable] = true;\n\nexport class CustomerRecipientsDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public groupId: number|null;\n public notificationRecipientId: string|null;\n public sendTo: string|null;\n public notificationRecipientTypeName: string|null;\n public type: CommunicationType|null;\n\n public constructor(init?: Partial<CustomerRecipientsDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerRecipientsDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CustomerRecipientsDto as unknown)[immerable] = true;\n\nexport class GetCustomerRecipients implements IReturn<ResponseBase<CustomerRecipientsDto>>\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<GetCustomerRecipients>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomerRecipients'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomerRecipientsDto>(); }\n}\n(GetCustomerRecipients as unknown)[immerable] = true;\n\nexport class GetValidDistributorChildrenRequest implements IReturn<ResponseBase<GroupResponse>>\n{\n\n public constructor(init?: Partial<GetValidDistributorChildrenRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetValidDistributorChildrenRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GroupResponse>(); }\n}\n(GetValidDistributorChildrenRequest as unknown)[immerable] = true;\n\nexport class AddChildToDistributorRequest implements IReturn<ResponseBase<boolean>>\n{\n public parentGroupId: number|null;\n public childGroupId: number|null;\n\n public constructor(init?: Partial<AddChildToDistributorRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddChildToDistributorRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(AddChildToDistributorRequest as unknown)[immerable] = true;\n\nexport class GetCustomerFlagRequest implements IReturn<ResponseBase<CustomerFlagResponse>>, ICustomerId\n{\n public customerId: number|null;\n\n public constructor(init?: Partial<GetCustomerFlagRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomerFlagRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CustomerFlagResponse>(); }\n}\n(GetCustomerFlagRequest as unknown)[immerable] = true;\n\nexport class UpdateCustomerFlagRequest implements IReturn<ResponseBase<CustomerFlagResponse>>, ICustomerId\n{\n public customerId: number|null;\n public customerFlag: CustomerFlag|null;\n\n public constructor(init?: Partial<UpdateCustomerFlagRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateCustomerFlagRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<CustomerFlagResponse>(); }\n}\n(UpdateCustomerFlagRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/grouplookup/{Id}\", \"GET\")\nexport class GroupLookupsRequest implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GroupLookupsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GroupLookupsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GroupLookupsRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/grouplookup/delete\", \"POST\")\nexport class DeleteGroupLookupItem\n{\n public name: string|null;\n public value: string|null;\n public groupId: string|null;\n\n public constructor(init?: Partial<DeleteGroupLookupItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteGroupLookupItem'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(DeleteGroupLookupItem as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/grouplookup/add\", \"POST\")\nexport class AddGroupLookupItem\n{\n public name: string|null;\n public value: string|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<AddGroupLookupItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddGroupLookupItem'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AddGroupLookupItem as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process/{Id}\", \"GET\")\nexport class ProcessGetRequest implements IReturn<ResponseBase<ProcessDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<ProcessGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProcessGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProcessDto>(); }\n}\n(ProcessGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process/clone\", \"POST\")\nexport class CloneProcessRequest implements IReturn<ResponseBase<string>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<CloneProcessRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CloneProcessRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(CloneProcessRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process/search\", \"POST\")\nexport class ProcessSearchRequest implements IReturn<ResponseBase<ProcessDto>>\n{\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<ProcessSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProcessSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProcessDto>(); }\n}\n(ProcessSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process\", \"GET\")\nexport class ProcessGetAllRequest implements IReturn<ResponseBase<ProcessDto>>\n{\n\n public constructor(init?: Partial<ProcessGetAllRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProcessGetAllRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProcessDto>(); }\n}\n(ProcessGetAllRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/process/{Id}\", \"PUT\")\n// @Route(\"/caseflow/process/\", \"POST\")\nexport class ProcessSaveRequest implements IReturn<ResponseBase<ProcessDto>>\n{\n public id: string|null;\n public name: string|null;\n public code: string|null;\n public stages: ProcessStageDto[]|null;\n public supplementaryActions: ProcessActionDto[]|null;\n public initialAction: ProcessActionDto|null;\n public metadata: { [index:string]: string; }|null;\n public current: boolean|null;\n\n public constructor(init?: Partial<ProcessSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProcessSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ProcessDto>(); }\n}\n(ProcessSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/referral{ReferralId}\")\nexport class GetReferralRequest implements IReturn<ResponseBase<ReferralDto>>\n{\n public referralId: number|null;\n\n public constructor(init?: Partial<GetReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferralRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralDto>(); }\n}\n(GetReferralRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/referralData/{ReferralId}\")\nexport class GetReferralDataRequest implements IReturn<ResponseBase<ReferralDataResponse>>\n{\n public referralId: number|null;\n\n public constructor(init?: Partial<GetReferralDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferralDataRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralDataResponse>(); }\n}\n(GetReferralDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/referralData/\", \"POST\")\nexport class ReferralDataSaveRequest implements IReturn<ResponseBase<T>>\n{\n public referralId: number|null;\n public referralData: JsonField|null;\n\n public constructor(init?: Partial<ReferralDataSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralDataSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralDataSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/caseflow/workingHours\", \"GET\")\nexport class RpWorkingHoursGetRequest implements IReturn<ResponseBase<WorkingHoursDto>>\n{\n\n public constructor(init?: Partial<RpWorkingHoursGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RpWorkingHoursGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WorkingHoursDto>(); }\n}\n(RpWorkingHoursGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/caseflow/nonWorkingDates\", \"GET\")\nexport class RpGetNonWorkingDatesRequest implements IReturn<ResponseBase<NonWorkingDateDto>>\n{\n public from: string|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<RpGetNonWorkingDatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RpGetNonWorkingDatesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NonWorkingDateDto>(); }\n}\n(RpGetNonWorkingDatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/reports/getreportdata/{ReportId}\")\nexport class ReferralPortalGetReportDataRequest implements IReturn<ResponseBase<WorkflowReportWithTemplateDataDto>>\n{\n public reportId: number|null;\n\n public constructor(init?: Partial<ReferralPortalGetReportDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalGetReportDataRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WorkflowReportWithTemplateDataDto>(); }\n}\n(ReferralPortalGetReportDataRequest as unknown)[immerable] = true;\n\nexport class GetProductTemplateSummariesRequest implements IReturn<ResponseBase<ProductTemplateSummaryDto>>\n{\n public productId: string|null;\n\n public constructor(init?: Partial<GetProductTemplateSummariesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProductTemplateSummariesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProductTemplateSummaryDto>(); }\n}\n(GetProductTemplateSummariesRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/reports/template/createReport/{TemplateId}/\", \"GET\")\nexport class GetCreateReportTemplateAndDraftDataRequest implements IReturn<ResponseBase<GetCreateReportTemplateAndDraftDataResponse>>\n{\n public templateGlobalId: string|null;\n public workflowId: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<GetCreateReportTemplateAndDraftDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCreateReportTemplateAndDraftDataRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetCreateReportTemplateAndDraftDataResponse>(); }\n}\n(GetCreateReportTemplateAndDraftDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/reports/\", \"POST\")\nexport class SaveReportRequest implements IReturn<ResponseBase<ReportSummaryDto>>\n{\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public templateId: string|null;\n public reportBody: JsonField|null;\n public draft: boolean|null;\n\n public constructor(init?: Partial<SaveReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReportSummaryDto>(); }\n}\n(SaveReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/reports/reportSummaries/{WorkflowId}/{SubWorkflowId}\", \"GET\")\n// @Route(\"/caseflow/workflow/reports/reportSummaries/{WorkflowId}\", \"GET\")\nexport class GetReportSummariesRequest implements IReturn<ResponseBase<ReportSummaryDto>>\n{\n public workflowId: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<GetReportSummariesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReportSummariesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReportSummaryDto>(); }\n}\n(GetReportSummariesRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/reports/reportdata/{ReportId}\")\nexport class GetReportDataRequest implements IReturn<ResponseBase<WorkflowReportWithTemplateDataDto>>\n{\n public reportId: number|null;\n\n public constructor(init?: Partial<GetReportDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReportDataRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WorkflowReportWithTemplateDataDto>(); }\n}\n(GetReportDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/reports/reportData/{ReportId}\", \"PUT\")\nexport class UpdateReportDataRequest implements IReturn<ResponseBase<WorkflowReportDto>>\n{\n public reportId: number|null;\n public reportData: JsonField|null;\n public isDraft: boolean|null;\n public lastUpdateDate: string|null;\n public autoSave: boolean|null;\n\n public constructor(init?: Partial<UpdateReportDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateReportDataRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<WorkflowReportDto>(); }\n}\n(UpdateReportDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/reports/unapprovedReport/{WorkflowId}/{SubWorkflowId}\", \"GET\")\nexport class GetUnapprovedReportRequest implements IReturn<ResponseBase<WorkflowReportWithTemplateDataDto>>\n{\n public workflowId: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<GetUnapprovedReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetUnapprovedReportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WorkflowReportWithTemplateDataDto>(); }\n}\n(GetUnapprovedReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/reports/{ReportId}/publish\")\nexport class PublishReportRequest implements IReturn<ResponseBase<WorkflowReportDto>>\n{\n public reportId: number|null;\n public revoke: boolean|null;\n\n public constructor(init?: Partial<PublishReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PublishReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorkflowReportDto>(); }\n}\n(PublishReportRequest as unknown)[immerable] = true;\n\nexport class RevokeReportRequest implements IReturn<ResponseBase<WorkflowReportWithTemplateDataDto>>\n{\n public reportId: number|null;\n\n public constructor(init?: Partial<RevokeReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RevokeReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorkflowReportWithTemplateDataDto>(); }\n}\n(RevokeReportRequest as unknown)[immerable] = true;\n\nexport class GetReportingFieldsRequest implements IReturn<ResponseBase<ReportingFieldLookupDto>>\n{\n\n public constructor(init?: Partial<GetReportingFieldsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReportingFieldsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReportingFieldLookupDto>(); }\n}\n(GetReportingFieldsRequest as unknown)[immerable] = true;\n\nexport class UpdateReportActiveRequest implements IReturn<ResponseBase<boolean>>\n{\n public reportId: string|null;\n public isActive: boolean|null;\n\n public constructor(init?: Partial<UpdateReportActiveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateReportActiveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UpdateReportActiveRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/subworkflow/{Id}\", \"PUT\")\nexport class UpdateSubWorkflowRequest extends SubWorkflowDto implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<UpdateSubWorkflowRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateSubWorkflowRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateSubWorkflowRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflowaudit/{Id}\", \"GET\")\nexport class WorkflowAuditRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<WorkflowAuditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowAuditRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(WorkflowAuditRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/updateWorkflowAudit/\", \"PUT\")\nexport class UpdateAuditRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public isPinned: boolean|null;\n public notes: string|null;\n public type: WorkflowAuditType|null;\n\n public constructor(init?: Partial<UpdateAuditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateAuditRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateAuditRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflowaudit/\", \"POST\")\nexport class CreateWorkflowAuditRequest implements IReturn<ResponseBase<T>>\n{\n public nextActionDate: string|null;\n public endDateTime: string|null;\n public duration: number|null;\n public startDateTime: string|null;\n public title: string|null;\n public reason: string|null;\n public notes: string|null;\n public type: number|null;\n public activityType: number|null;\n public activityPath: string|null;\n public direction: number|null;\n public previousStatusId: string|null;\n public actionId: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public teamId: string|null;\n public isPinned: boolean|null;\n\n public constructor(init?: Partial<CreateWorkflowAuditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateWorkflowAuditRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CreateWorkflowAuditRequest as unknown)[immerable] = true;\n\n// @Route(\"/workflow/clinicalRecords\")\nexport class AllWorkflowCasesRequest implements ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public sort: QueryField[]|null;\n public locationId: number|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<AllWorkflowCasesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllWorkflowCasesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AllWorkflowCasesRequest as unknown)[immerable] = true;\n\n// @Route(\"/workflow/clinicalRecord\")\nexport class GetWorkflowCaseRequest implements IReturn<ResponseBase<WorkflowCaseResponse>>\n{\n public workflowId: number|null;\n public getAvailableScoresAndGoals: boolean|null;\n\n public constructor(init?: Partial<GetWorkflowCaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetWorkflowCaseRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WorkflowCaseResponse>(); }\n}\n(GetWorkflowCaseRequest as unknown)[immerable] = true;\n\n// @Route(\"/workflow/workflowcustomercount/{id}/\", \"GET\")\nexport class WorkflowCustomerCountRequest\n{\n public id: number|null;\n\n public constructor(init?: Partial<WorkflowCustomerCountRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowCustomerCountRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(WorkflowCustomerCountRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workingHours\", \"GET\")\nexport class WorkingHoursGetRequest implements IReturn<ResponseBase<WorkingHoursDto>>\n{\n\n public constructor(init?: Partial<WorkingHoursGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkingHoursGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<WorkingHoursDto>(); }\n}\n(WorkingHoursGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/nonWorkingDates\", \"GET\")\nexport class GetNonWorkingDatesRequest implements IReturn<ResponseBase<NonWorkingDateDto>>\n{\n public from: string|null;\n public practitionerId: number|null;\n\n public constructor(init?: Partial<GetNonWorkingDatesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNonWorkingDatesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NonWorkingDateDto>(); }\n}\n(GetNonWorkingDatesRequest as unknown)[immerable] = true;\n\n// @Route(\"/automatch\", \"POST\")\nexport class PatientAutoMatchRequest implements IReturn<ResponseBase<AutoMatchResult>>\n{\n public forename: string|null;\n public surname: string|null;\n public dob: string|null;\n public postCode: string|null;\n public number: string|null;\n public email: string|null;\n public id: number|null;\n\n public constructor(init?: Partial<PatientAutoMatchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PatientAutoMatchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AutoMatchResult>(); }\n}\n(PatientAutoMatchRequest as unknown)[immerable] = true;\n\nexport class GetAllWorkflowBillingItems implements IReturn<ResponseBase<CaseflowBillingItemDto>>\n{\n public workflowId: number|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<GetAllWorkflowBillingItems>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllWorkflowBillingItems'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowBillingItemDto>(); }\n}\n(GetAllWorkflowBillingItems as unknown)[immerable] = true;\n\nexport class CreateTemporaryInvoiceRequest implements IReturn<ResponseBase<InvoiceWithTemplate>>\n{\n public accountId: number|null;\n public groupId: number|null;\n public customerId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CreateTemporaryInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateTemporaryInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<InvoiceWithTemplate>(); }\n}\n(CreateTemporaryInvoiceRequest as unknown)[immerable] = true;\n\nexport class CreateWorkflowChargeRequest implements IReturn<ResponseBase<CaseflowBillingItemDto>>\n{\n public chargeTypeId: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<CreateWorkflowChargeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateWorkflowChargeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseflowBillingItemDto>(); }\n}\n(CreateWorkflowChargeRequest as unknown)[immerable] = true;\n\nexport class EditWorkflowPricingRequest implements IReturn<ResponseBase<ReferralPricingWithDetailsDto>>\n{\n public price: CapturePointPrice|null;\n public id: string|null;\n\n public constructor(init?: Partial<EditWorkflowPricingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditWorkflowPricingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPricingWithDetailsDto>(); }\n}\n(EditWorkflowPricingRequest as unknown)[immerable] = true;\n\nexport class GetEditablePricingRequest implements IReturn<ResponseBase<ReferralPricingWithDetailsDto>>\n{\n public workflowId: number|null;\n public nmLocationId: string|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<GetEditablePricingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetEditablePricingRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPricingWithDetailsDto>(); }\n}\n(GetEditablePricingRequest as unknown)[immerable] = true;\n\nexport class EditWorkflowChargeRequest implements IReturn<ResponseBase<Object>>\n{\n public charge: CaseflowBillingItemDto|null;\n\n public constructor(init?: Partial<EditWorkflowChargeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditWorkflowChargeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(EditWorkflowChargeRequest as unknown)[immerable] = true;\n\nexport class SaveWorkflowChargeRequest implements IReturn<ResponseBase<CaseflowBillingItemDto>>\n{\n public charge: CaseflowBillingItemDto|null;\n\n public constructor(init?: Partial<SaveWorkflowChargeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveWorkflowChargeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseflowBillingItemDto>(); }\n}\n(SaveWorkflowChargeRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/charges/search\")\nexport class CaseflowChargesSearchRequest implements IReturn<ResponseBase<GroupBillingItemsResponse>>, IChargeSearchRequest\n{\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public invoicePeriod: InvoicePeriod|null;\n public mode: ChargeSearchMode|null;\n public groupIds: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public invoicedStatus: InvoicedStatusToInclude|null;\n public date: DateRange|null;\n public addressTo: string|null;\n public description: string|null;\n public amount: CurrencyRange|null;\n public term: string|null;\n public locked: boolean|null;\n public displayDiscountCodes: boolean|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<CaseflowChargesSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowChargesSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GroupBillingItemsResponse>(); }\n}\n(CaseflowChargesSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/charges/search/ids\")\nexport class CaseflowChargesSearchidsRequest implements IReturn<BillingItem[]>, IChargeSearchRequest\n{\n public sort: QueryField[]|null;\n public invoicePeriod: InvoicePeriod|null;\n public mode: ChargeSearchMode|null;\n public invoicedStatus: InvoicedStatusToInclude|null;\n public groupIds: number[]|null;\n public locationIds: number[]|null;\n public requestLocationIds: number[]|null;\n public date: DateRange|null;\n public addressTo: string|null;\n public description: string|null;\n public amount: CurrencyRange|null;\n public term: string|null;\n public locked: boolean|null;\n public displayDiscountCodes: boolean|null;\n\n public constructor(init?: Partial<CaseflowChargesSearchidsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowChargesSearchidsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<BillingItem>(); }\n}\n(CaseflowChargesSearchidsRequest as unknown)[immerable] = true;\n\nexport class GetAllWorkflowInvoices implements IReturn<ResponseBase<Invoice>>\n{\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public loadTemplatePaths: boolean|null;\n\n public constructor(init?: Partial<GetAllWorkflowInvoices>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllWorkflowInvoices'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Invoice>(); }\n}\n(GetAllWorkflowInvoices as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/searchWorkflow\", \"POST\")\nexport class WorkflowSearch implements IReturn<ResponseBase<WorkflowSummary>>\n{\n public skip: number|null;\n public take: number|null;\n public searchId: number|null;\n public isDetailView: boolean|null;\n public patientId: number|null;\n public searchAllTeams: boolean|null;\n public teamIds: string[]|null;\n public searchAllProcesses: boolean|null;\n public processIds: string[]|null;\n public searchAllUsers: boolean|null;\n public userIds: string[]|null;\n public includeClosed: number|null;\n public status: number|null;\n public searchAllStatuses: boolean|null;\n public statuses: string[]|null;\n public searchAllClassifications: boolean|null;\n public classifications: string[]|null;\n public searchAllOwners: boolean|null;\n public ownerIds: string[]|null;\n public client: string|null;\n public referrerRef: string|null;\n public reference: string|null;\n public nextAction: DateRange|null;\n public lastAction: DateRange|null;\n public referredBetween: DateRange|null;\n public patient: string|null;\n public term: string|null;\n public sort: QueryField[]|null;\n public isAdhocSearch: boolean|null;\n public searchAllClients: boolean|null;\n public clientIds: string[]|null;\n public meta: string|null;\n public metaKey: string|null;\n public customerPostCode: string|null;\n public locationName: string|null;\n public businessName: string|null;\n public contractIds: string[]|null;\n public searchAllContracts: boolean|null;\n public businessPortalOwnerId: string|null;\n\n public constructor(init?: Partial<WorkflowSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorkflowSummary>(); }\n}\n(WorkflowSearch as unknown)[immerable] = true;\n\n// @Route(\"/workflow/linkExisting/searchPatients\", \"POST\")\nexport class WorkflowLinkExistingPatient implements IReturn<ResponseBase<T>>\n{\n public forename: string|null;\n public surname: string|null;\n public postcode: string|null;\n public dob: string|null;\n public email: string|null;\n public number: string|null;\n public patientId: number|null;\n public restrictToGroup: boolean|null;\n public customerGroupId: number|null;\n\n public constructor(init?: Partial<WorkflowLinkExistingPatient>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowLinkExistingPatient'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(WorkflowLinkExistingPatient as unknown)[immerable] = true;\n\nexport class WorkflowSearchFieldsRequest implements IReturn<ResponseBase<WorkflowSearchFieldsResponse>>\n{\n\n public constructor(init?: Partial<WorkflowSearchFieldsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowSearchFieldsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorkflowSearchFieldsResponse>(); }\n}\n(WorkflowSearchFieldsRequest as unknown)[immerable] = true;\n\nexport class WorkflowWithDataSearchRequest implements IReturn<ResponseBase<WorkflowWithDataSearchResponse>>\n{\n public patientId: number|null;\n\n public constructor(init?: Partial<WorkflowWithDataSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowWithDataSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<WorkflowWithDataSearchResponse>(); }\n}\n(WorkflowWithDataSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/{Id}\", \"GET\")\nexport class WorkflowRequest implements IWorkflowId, ISecurityId\n{\n public id: number|null;\n public workflowId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<WorkflowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(WorkflowRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/{Id}\", \"PUT\")\nexport class UpdateWorkflowRequest implements IWorkflowId, ISecurityId\n{\n public id: number|null;\n public type: string|null;\n public processId: string|null;\n public currentStatusId: string|null;\n public creationDate: string|null;\n public closureReason: string|null;\n public closed: boolean|null;\n public isOnHold: boolean|null;\n public holdStartDate: string|null;\n public holdEndDate: string|null;\n public deleted: boolean|null;\n public currentContactAttempts: number|null;\n public bodySite: string|null;\n public diagnosisCode: string|null;\n public fallbackName: string|null;\n public incomingInvoiceLinkFinanceProcess: boolean|null;\n public customerId: number|null;\n public intermediaryLocationId: number|null;\n public groupId: number|null;\n public secondaryGroupId: number|null;\n public teamId: string|null;\n public userId: string|null;\n public dominantSubWorkflowId: number|null;\n public onHoldPreviousDominantSubWorkflowId: number|null;\n public overallOwnerId: string|null;\n public referralId: number|null;\n public currentPackageId: number|null;\n public programmeId: number|null;\n public billingModelId: number|null;\n public workRecordingId: number|null;\n public linkedWorkflowId: number|null;\n public fastrackNumber: string|null;\n public queueId: number|null;\n public appointmentFirstOffered: string|null;\n public voluntaryDelay: number|null;\n public closedDate: string|null;\n public firstContactDate: string|null;\n public primarySubWorkflowId: number|null;\n public contractId: string|null;\n public productId: string|null;\n public firstAttemptedContactDate: string|null;\n public managedByGroupId: number|null;\n public data: { [index:string]: Object; }|null;\n public workflowId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<UpdateWorkflowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateWorkflowRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() {}\n}\n(UpdateWorkflowRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/add\", \"POST\")\nexport class CreateWorkflowRequest implements IReturn<WorkflowDto>\n{\n public contractId: string|null;\n public fromReferralPortal: boolean|null;\n public fromPatientPortalWithAppointment: boolean|null;\n public fromPatientPortalWithoutAppointment: boolean|null;\n public referralId: number|null;\n public groupId: number|null;\n public productId: string|null;\n public referralData: JsonField|null;\n public appointmentId: number|null;\n public temporaryFolderId: string|null;\n public firstOfferedDate: string|null;\n public contactDoNotUse: WorkflowContactCreateDto|null;\n public passedInitialVerification: boolean|null;\n public canSendEmail: boolean|null;\n public canSendSMS: boolean|null;\n public patientId: number|null;\n public offerRejectedReason: string|null;\n public overrideServiceId: string|null;\n\n public constructor(init?: Partial<CreateWorkflowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateWorkflowRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new WorkflowDto(); }\n}\n(CreateWorkflowRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/saveWorkflowSearch\", \"POST\")\nexport class SaveWorkflowSearchRequest implements IReturn<ResponseBase<T>>\n{\n public name: string|null;\n public description: string|null;\n public params: string|null;\n public teamId: string|null;\n public userId: string|null;\n\n public constructor(init?: Partial<SaveWorkflowSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveWorkflowSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveWorkflowSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/getAllCannedSearch/{userId}\", \"GET\")\nexport class GetAllCannedSearches implements IReturn<ResponseBase<T>>\n{\n public userId: number|null;\n\n public constructor(init?: Partial<GetAllCannedSearches>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllCannedSearches'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAllCannedSearches as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/getSearchData\", \"GET\")\nexport class GetSearchData\n{\n\n public constructor(init?: Partial<GetSearchData>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSearchData'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetSearchData as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/removeCannedSearch\", \"POST\")\nexport class RemoveCannedSearch\n{\n public teamId: string|null;\n public userId: string|null;\n public searchId: number|null;\n public searchParams: string|null;\n\n public constructor(init?: Partial<RemoveCannedSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveCannedSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(RemoveCannedSearch as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/modifyWorkflowSearch\", \"POST\")\nexport class ModifySearchRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public guid: string|null;\n public name: string|null;\n public description: string|null;\n public params: string|null;\n public teamId: string|null;\n public userId: string|null;\n\n public constructor(init?: Partial<ModifySearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ModifySearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ModifySearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/bulkAssignWorkflows\", \"POST\")\nexport class BulkAssignWorkflows\n{\n public subWorkflowIds: number[]|null;\n public ownerId: string|null;\n public teamId: string|null;\n public userId: string|null;\n\n public constructor(init?: Partial<BulkAssignWorkflows>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BulkAssignWorkflows'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(BulkAssignWorkflows as unknown)[immerable] = true;\n\n// @Route(\"/workflow/{Id}/cases\")\nexport class WorkflowCaseSearchRequest implements IReturn<ResponseBase<CaseSearchResponse>>, ILocationId\n{\n public skip: number|null;\n public take: number|null;\n public id: number|null;\n public sort: QueryField[]|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<WorkflowCaseSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowCaseSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<CaseSearchResponse>(); }\n}\n(WorkflowCaseSearchRequest as unknown)[immerable] = true;\n\nexport class WorkflowNextActionStartDateRequest implements IReturn<ResponseBase<string>>\n{\n public subWorkflow: SubWorkflow|null;\n public startPoint: SlaRelativeTo|null;\n\n public constructor(init?: Partial<WorkflowNextActionStartDateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'WorkflowNextActionStartDateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(WorkflowNextActionStartDateRequest as unknown)[immerable] = true;\n\nexport class GetWorkflowAppointmentStockItem implements IReturn<ResponseBase<ProductService>>\n{\n public productServiceId: string|null;\n public contractId: string|null;\n public first: boolean|null;\n\n public constructor(init?: Partial<GetWorkflowAppointmentStockItem>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetWorkflowAppointmentStockItem'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProductService>(); }\n}\n(GetWorkflowAppointmentStockItem as unknown)[immerable] = true;\n\n// @Route(\"/teams/all\", \"POST\")\nexport class AllTeamRequest implements IReturn<ResponseBase<TeamResponse>>\n{\n public teamIds: string[]|null;\n public requestTeamIds: string[]|null;\n\n public constructor(init?: Partial<AllTeamRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AllTeamRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TeamResponse>(); }\n}\n(AllTeamRequest as unknown)[immerable] = true;\n\n// @Route(\"/teams/{Id}\", \"GET\")\nexport class TeamGetRequest implements IReturn<ResponseBase<TeamResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<TeamGetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TeamGetRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TeamResponse>(); }\n}\n(TeamGetRequest as unknown)[immerable] = true;\n\n// @Route(\"/teams/save\", \"POST\")\nexport class TeamSaveRequest implements IReturn<ResponseBase<TeamResponse>>\n{\n public id: string|null;\n public name: string|null;\n public assignmentCode: string|null;\n public defaultTeamLeader: string|null;\n public users: TeamUserDto[]|null;\n public isCurrent: boolean|null;\n\n public constructor(init?: Partial<TeamSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TeamSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<TeamResponse>(); }\n}\n(TeamSaveRequest as unknown)[immerable] = true;\n\nexport class PortalStatusDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public name: string|null;\n public colour: string|null;\n public type: string|null;\n\n public constructor(init?: Partial<PortalStatusDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PortalStatusDto'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(PortalStatusDto as unknown)[immerable] = true;\n\nexport class GetPortalStatuses implements IReturn<ResponseBase<PortalStatusDto>>\n{\n public sort: QueryField[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<GetPortalStatuses>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPortalStatuses'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PortalStatusDto>(); }\n}\n(GetPortalStatuses as unknown)[immerable] = true;\n\nexport class GetPortalStatusList implements IReturn<ResponseBase<PortalStatus>>\n{\n public sort: QueryField[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<GetPortalStatusList>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetPortalStatusList'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<PortalStatus>(); }\n}\n(GetPortalStatusList as unknown)[immerable] = true;\n\nexport class SavePortalStatusList extends PortalStatus implements IReturn<ResponseBase<PortalStatus>>\n{\n public sort: QueryField[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<SavePortalStatusList>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SavePortalStatusList'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<PortalStatus>(); }\n}\n(SavePortalStatusList as unknown)[immerable] = true;\n\nexport class GetAllEnvironmentDetails implements IReturn<EnvironmentResponse>\n{\n\n public constructor(init?: Partial<GetAllEnvironmentDetails>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllEnvironmentDetails'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(GetAllEnvironmentDetails as unknown)[immerable] = true;\n\nexport class EnvironmentStatusRequest implements IReturn<ResponseBase<EnvironmentStatus>>\n{\n\n public constructor(init?: Partial<EnvironmentStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EnvironmentStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<EnvironmentStatus>(); }\n}\n(EnvironmentStatusRequest as unknown)[immerable] = true;\n\n/** @description Get the history (branches) on the config repo. These are synced up to a table for cache */\nexport class GetEnvironmentVersionRequest implements IReturn<EnvironmentVersionResponse>\n{\n public force: boolean|null;\n public cacheKey: string|null;\n public jobId: string|null;\n\n public constructor(init?: Partial<GetEnvironmentVersionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetEnvironmentVersionRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new EnvironmentVersionResponse(); }\n}\n(GetEnvironmentVersionRequest as unknown)[immerable] = true;\n\nexport class ThisEnvironmentHangfireRequest implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public types: string[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<ThisEnvironmentHangfireRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ThisEnvironmentHangfireRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ThisEnvironmentHangfireRequest as unknown)[immerable] = true;\n\nexport class SaveEnvironmentDetails extends Environment implements IReturn<EnvironmentResponse>\n{\n public gitConfigRepoUrl: string|null;\n public gitUsername: string|null;\n public gitPassword: string|null;\n public secret: string|null;\n\n public constructor(init?: Partial<SaveEnvironmentDetails>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveEnvironmentDetails'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(SaveEnvironmentDetails as unknown)[immerable] = true;\n\n/** @description Called by a primary to declare itself the Primary, and initialise the git repo */\nexport class RegisterThisAsPrimaryConfigEnvironmentRequest implements IReturn<EnvironmentResponse>, IHasId\n{\n public name: string|null;\n public gitConfigRepoUrl: string|null;\n public gitUsername: string|null;\n public gitPassword: string|null;\n public id: number|null;\n public config: EnvironmentConfig|null;\n\n public constructor(init?: Partial<RegisterThisAsPrimaryConfigEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RegisterThisAsPrimaryConfigEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(RegisterThisAsPrimaryConfigEnvironmentRequest as unknown)[immerable] = true;\n\nexport class DeployVersionToEnvironmentRequest implements IReturn<EnvironmentVersionResponse>\n{\n public environment: string|null;\n public environmentId: string|null;\n public branch: string|null;\n public commitHash: string|null;\n public force: boolean|null;\n\n public constructor(init?: Partial<DeployVersionToEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeployVersionToEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentVersionResponse(); }\n}\n(DeployVersionToEnvironmentRequest as unknown)[immerable] = true;\n\n/** @description Called by a secondary to create API keys so it can be HMACed for provisioning from the primary environment */\nexport class RegisterThisAsSecondaryConfigEnvironmentRequest implements IReturn<EnvironmentResponse>, IHasGuidId\n{\n public apiKey: string|null;\n public secret: string|null;\n public id: string|null;\n public config: EnvironmentConfig|null;\n\n public constructor(init?: Partial<RegisterThisAsSecondaryConfigEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RegisterThisAsSecondaryConfigEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(RegisterThisAsSecondaryConfigEnvironmentRequest as unknown)[immerable] = true;\n\n/** @description Called by Primary to add a new environment */\nexport class AddNewEnvironmentRequest implements IReturn<EnvironmentResponse>\n{\n public name: string|null;\n public url: string|null;\n public apiKey: string|null;\n public secret: string|null;\n public isProduction: boolean|null;\n public allowHotfixBranches: boolean|null;\n\n public constructor(init?: Partial<AddNewEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddNewEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(AddNewEnvironmentRequest as unknown)[immerable] = true;\n\nexport class ResetEnvironmentRequest implements IReturn<EnvironmentResponse>\n{\n\n public constructor(init?: Partial<ResetEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ResetEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(ResetEnvironmentRequest as unknown)[immerable] = true;\n\nexport class ReInitRepoRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<ReInitRepoRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReInitRepoRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReInitRepoRequest as unknown)[immerable] = true;\n\nexport class CreateBranchRequest implements IReturn<EnvironmentVersionResponse>\n{\n public environment: string|null;\n public environmentId: string|null;\n public version: string|null;\n public message: string|null;\n public exportCurrentConfig: boolean|null;\n public force: boolean|null;\n public mergeHotfix: boolean|null;\n public hotfixBranch: string|null;\n public tryNonFastForwardMerge: boolean|null;\n public reset: boolean|null;\n\n public constructor(init?: Partial<CreateBranchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateBranchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentVersionResponse(); }\n}\n(CreateBranchRequest as unknown)[immerable] = true;\n\nexport class PurgeEnvironmentRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<PurgeEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PurgeEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(PurgeEnvironmentRequest as unknown)[immerable] = true;\n\nexport class UpdateEnvironmentsOrderRequest implements IReturn<ResponseBase<boolean>>\n{\n public environments: Environment[]|null;\n\n public constructor(init?: Partial<UpdateEnvironmentsOrderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateEnvironmentsOrderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UpdateEnvironmentsOrderRequest as unknown)[immerable] = true;\n\nexport class EnableHotfixRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<EnableHotfixRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EnableHotfixRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(EnableHotfixRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/environments/sync\")\nexport class SyncEnvironmentsRequest implements IReturn<ResponseBase<boolean>>\n{\n public otherEnvironments: Environment[]|null;\n\n public constructor(init?: Partial<SyncEnvironmentsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SyncEnvironmentsRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SyncEnvironmentsRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/environments/deploy\")\nexport class DeployToSecondaryEnvironmentRequest implements IReturn<EnvironmentVersionResponse>\n{\n public environment: string|null;\n public environmentId: string|null;\n public branch: string|null;\n public commitHash: string|null;\n public force: boolean|null;\n public userId: number|null;\n\n public constructor(init?: Partial<DeployToSecondaryEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeployToSecondaryEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new EnvironmentVersionResponse(); }\n}\n(DeployToSecondaryEnvironmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/environments/jobs\")\nexport class OtherEnvironmentHangfireRequest implements IReturn<ResponseBase<T>>\n{\n public types: string[]|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<OtherEnvironmentHangfireRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'OtherEnvironmentHangfireRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(OtherEnvironmentHangfireRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/environments/register\")\nexport class RegisterRemoteEnvironmentRequest implements IReturn<ResponseBase<RegisterEnvironmentResponse>>\n{\n public name: string|null;\n public gitConfigRepoUrl: string|null;\n public gitUsername: string|null;\n public gitPassword: string|null;\n public secret: string|null;\n public isProduction: boolean|null;\n public allowHotfixBranches: boolean|null;\n public otherEnvironments: Environment[]|null;\n\n public constructor(init?: Partial<RegisterRemoteEnvironmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RegisterRemoteEnvironmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<RegisterEnvironmentResponse>(); }\n}\n(RegisterRemoteEnvironmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/environments/re-order\")\nexport class UpdateSecondaryEnvironmentsOrderRequest implements IReturn<ResponseBase<boolean>>\n{\n public environments: Environment[]|null;\n\n public constructor(init?: Partial<UpdateSecondaryEnvironmentsOrderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateSecondaryEnvironmentsOrderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(UpdateSecondaryEnvironmentsOrderRequest as unknown)[immerable] = true;\n\n// @Route(\"/system/environments/secondary\")\nexport class SecondaryEnvironmentCallHomeRequest implements IReturn<EnvironmentResponse>\n{\n public hasChanges: boolean|null;\n public secret: string|null;\n public environment: Environment|null;\n\n public constructor(init?: Partial<SecondaryEnvironmentCallHomeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SecondaryEnvironmentCallHomeRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new EnvironmentResponse(); }\n}\n(SecondaryEnvironmentCallHomeRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referral-portal/reports-definitions/{Id}\", \"GET\")\nexport class LegacyReferralPortalCaseflowTemplateRequest implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<LegacyReferralPortalCaseflowTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LegacyReferralPortalCaseflowTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(LegacyReferralPortalCaseflowTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referral-portal/reports-definitions-with-referral-id/{Id}\", \"GET\")\nexport class ReferralPortalCaseflowTemplateRequestWithReferralId implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ReferralPortalCaseflowTemplateRequestWithReferralId>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCaseflowTemplateRequestWithReferralId'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalCaseflowTemplateRequestWithReferralId as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/reports-definitions/\", \"GET\")\n// @Route(\"/caseflow/reports-definitions/{Id}\", \"GET\")\nexport class CaseflowTemplateRequest implements IReturn<ResponseBase<CaseflowTemplateDto>>, IGet\n{\n public ids: string[]|null;\n public id: string|null;\n public includeBody: boolean|null;\n public groupGlobalId: string|null;\n public types: string[]|null;\n public includeLists: boolean|null;\n\n public constructor(init?: Partial<CaseflowTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowTemplateDto>(); }\n}\n(CaseflowTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/template/remove/{Id}\")\nexport class TemplateRemoveRequest implements IReturn<HttpResult>\n{\n public id: string|null;\n\n public constructor(init?: Partial<TemplateRemoveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'TemplateRemoveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(TemplateRemoveRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/deleteAppointmentRequest/\", \"DELETE\")\n// @Route(\"/caseflow/deleteAppointmentRequest/{ProvisionalAppointmentId}\", \"DELETE\")\nexport class ReferralPortalDeleteAppointmentRequest implements IReturn<ResponseBase<boolean>>\n{\n public provisionalAppointmentId: string|null;\n public appointmentType: AppointmentType|null;\n\n public constructor(init?: Partial<ReferralPortalDeleteAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalDeleteAppointmentRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalDeleteAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/getPractitionersFromLocation/{ServiceId}\", \"GET\")\n// @Route(\"/caseflow/getPractitionersFromLocation/{ServiceId}/{LocationId}\", \"GET\")\nexport class PractitionersFromLocationRequest\n{\n public serviceId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<PractitionersFromLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PractitionersFromLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PractitionersFromLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/getServiceLocations\", \"POST\")\n// @Route(\"/caseflow/getServiceLocations/{ServiceId}\", \"GET\")\nexport class GetServiceLocationsRequest implements IReturn<ResponseBase<GetServiceLocationsResponse[]>>\n{\n public serviceId: string|null;\n public from: string|null;\n public to: string|null;\n\n public constructor(init?: Partial<GetServiceLocationsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetServiceLocationsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<GetServiceLocationsResponse[]>(); }\n}\n(GetServiceLocationsRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/workflow/appointments/reserve/\", \"POST\")\nexport class LegacyReferralPortalReserveAppointmentRequest\n{\n public appointment: ReserveAppointmentRequest|null;\n\n public constructor(init?: Partial<LegacyReferralPortalReserveAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LegacyReferralPortalReserveAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(LegacyReferralPortalReserveAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/ConfirmAppointmentBooking\", \"POST\")\nexport class ConfirmBookingRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n public locationId: string|null;\n public practitionerId: string|null;\n public comment: string|null;\n public price: number|null;\n public workflowId: number|null;\n public subworkflowId: number|null;\n public customerId: number|null;\n public productServiceId: string|null;\n public outsideSlaReason: string|null;\n public appointmentOfferedDate: string|null;\n\n public constructor(init?: Partial<ConfirmBookingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConfirmBookingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ConfirmBookingRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/authorisation/approved\", \"POST\")\nexport class AuthorisationApprovedRequest\n{\n public noOfApprovedSessions: number|null;\n public notes: string|null;\n public referralId: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<AuthorisationApprovedRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AuthorisationApprovedRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AuthorisationApprovedRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/authorisation/declined\", \"POST\")\nexport class AuthorisationDeclinedRequest\n{\n public notes: string|null;\n public referralId: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<AuthorisationDeclinedRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AuthorisationDeclinedRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AuthorisationDeclinedRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/authorisation/queried\", \"POST\")\nexport class AuthorisationQueriedRequest\n{\n public notes: string|null;\n public referralId: number|null;\n public subworkflowId: number|null;\n\n public constructor(init?: Partial<AuthorisationQueriedRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AuthorisationQueriedRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AuthorisationQueriedRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalAuthorisationActionRequest implements IReturn<ResponseBase<boolean>>\n{\n public actionId: string|null;\n public approvedSessions: number|null;\n public actionType: ReferralPortalActionType|null;\n public notes: string|null;\n\n public constructor(init?: Partial<ReferralPortalAuthorisationActionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalAuthorisationActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalAuthorisationActionRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalUserSearchRequest implements IReturn<ResponseBase<ReferralPortalUserResponse>>\n{\n public groupId: number|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public term: string|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalUserSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalUserSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalUserResponse>(); }\n}\n(CaseflowReferralPortalUserSearchRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalUpdateUserRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public firstName: string|null;\n public lastName: string|null;\n public email: string|null;\n public mobileNumber: string|null;\n public avatar: string|null;\n public level: string|null;\n public groups: number[]|null;\n public current: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalUpdateUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUpdateUserRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalUpdateUserRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalUserUpdateRequest extends ReferralPortalUpdateUserRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public groupId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalUserUpdateRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalUserUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseflowReferralPortalUserUpdateRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalCreateUserRequest implements IReturn<ResponseBase<T>>\n{\n public email: string|null;\n public mobileNumber: string|null;\n public firstName: string|null;\n public lastName: string|null;\n public avatar: string|null;\n public level: string|null;\n public groups: number[]|null;\n\n public constructor(init?: Partial<ReferralPortalCreateUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCreateUserRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalCreateUserRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalUserCreateRequest extends ReferralPortalCreateUserRequest implements IReturn<ResponseBase<boolean>>, ILocationId\n{\n public groupId: number|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalUserCreateRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalUserCreateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseflowReferralPortalUserCreateRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalActivationRequest implements IReturn<ResponseBase<boolean>>\n{\n public groupId: number|null;\n public active: boolean|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalActivationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalActivationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseflowReferralPortalActivationRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalTwoFactorUpdateRequest implements IReturn<ResponseBase<boolean>>\n{\n public required: boolean|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalTwoFactorUpdateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalTwoFactorUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CaseflowReferralPortalTwoFactorUpdateRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalListPublishedFilesRequest implements IReturn<ResponseBase<T>>\n{\n public workflowId: number|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalListPublishedFilesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalListPublishedFilesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CaseflowReferralPortalListPublishedFilesRequest as unknown)[immerable] = true;\n\nexport class CaseflowReferralPortalPublishFileRequest implements IReturn<ResponseBase<DocumentListingFile>>\n{\n public filePath: string|null;\n public subworkflowId: number|null;\n public fileName: string|null;\n public revoke: boolean|null;\n\n public constructor(init?: Partial<CaseflowReferralPortalPublishFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReferralPortalPublishFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<DocumentListingFile>(); }\n}\n(CaseflowReferralPortalPublishFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/managementReports/referralPortalFiles/{ClientGuid}\")\nexport class ManagementReportRequest\n{\n public clientGuid: string|null;\n\n public constructor(init?: Partial<ManagementReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ManagementReportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(ManagementReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/managementReports/downloadFile/\")\nexport class ReferralPortalDownloadFileRequest\n{\n public path: string|null;\n public safeRoot: string|null;\n public isGlobal: boolean|null;\n public clientGuid: string|null;\n\n public constructor(init?: Partial<ReferralPortalDownloadFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalDownloadFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReferralPortalDownloadFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/managementreports/infoLogsave/\")\nexport class ManagementReportLogRequest implements ICustomerId\n{\n public id: number|null;\n public customerId: number|null;\n public dateTime: string|null;\n public entry: string|null;\n public action: string|null;\n\n public constructor(init?: Partial<ManagementReportLogRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ManagementReportLogRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ManagementReportLogRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/{ClientId}\", \"GET\")\n// @Route(\"/caseflow/referralportal/{ClientId}/{DistributionGroupId}\", \"GET\")\nexport class GetAllProductsRequest implements IReturn<ResponseBase<ContractDto[]>>\n{\n public clientId: string|null;\n public distributionGroupId: string|null;\n\n public constructor(init?: Partial<GetAllProductsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllProductsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ContractDto[]>(); }\n}\n(GetAllProductsRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/tempfile/{Id}\", \"POST\")\nexport class ReferralPortalUploadTempFile implements IReturn<UploadTempResult>\n{\n public id: string|null;\n\n public constructor(init?: Partial<ReferralPortalUploadTempFile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUploadTempFile'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new UploadTempResult(); }\n}\n(ReferralPortalUploadTempFile as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/tempfilelisting\", \"POST\")\nexport class GetReferralPortalTempFileListing\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetReferralPortalTempFileListing>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetReferralPortalTempFileListing'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(GetReferralPortalTempFileListing as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/removetempfile\", \"POST\")\nexport class RemoveReferralPortalTempFile implements IReturn<DeleteResponse>\n{\n public id: string|null;\n public fileName: string|null;\n\n public constructor(init?: Partial<RemoveReferralPortalTempFile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveReferralPortalTempFile'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new DeleteResponse(); }\n}\n(RemoveReferralPortalTempFile as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referral-portal/commstemplates/registrationtemplate\", \"GET\")\nexport class ReferralCommsTemplateRequest implements IReturn<ResponseBase<ReferralCommsTemplateResponse>>\n{\n\n public constructor(init?: Partial<ReferralCommsTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralCommsTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralCommsTemplateResponse>(); }\n}\n(ReferralCommsTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referral-portal/commstemplates/passwordresettemplate\", \"GET\")\nexport class ReferralCommsPasswordResetTemplateRequest implements IReturn<ResponseBase<ReferralCommsTemplateResponse>>\n{\n\n public constructor(init?: Partial<ReferralCommsPasswordResetTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralCommsPasswordResetTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralCommsTemplateResponse>(); }\n}\n(ReferralCommsPasswordResetTemplateRequest as unknown)[immerable] = true;\n\nexport class GetAllReferralPortalAdvancedSearchFiltersRequest implements IReturn<ResponseBase<GetAllAdvancedSearchFiltersResponse>>\n{\n public searchModule: SearchModuleEntityType|null;\n\n public constructor(init?: Partial<GetAllReferralPortalAdvancedSearchFiltersRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllReferralPortalAdvancedSearchFiltersRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<GetAllAdvancedSearchFiltersResponse>(); }\n}\n(GetAllReferralPortalAdvancedSearchFiltersRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/configvalue/{ConfigDescription}\", \"GET\")\nexport class GetConfigValue\n{\n public configDescription: string|null;\n\n public constructor(init?: Partial<GetConfigValue>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetConfigValue'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetConfigValue as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/migrate\")\nexport class ReferralPortalMigrationRequest implements IReturn<ReferralPortalMigrationResponse>\n{\n public secret: string|null;\n public schemas: string[]|null;\n public ignoreDefaultSchema: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalMigrationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalMigrationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ReferralPortalMigrationResponse(); }\n}\n(ReferralPortalMigrationRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/{Id}\", \"GET\")\n// @ApiResponse(Description=\"Success\", StatusCode=200)\n// @ApiResponse(Description=\"Validation Exception\", StatusCode=400)\nexport class ReferralPortalReferralRequest implements IReturn<ResponseBase<ReferralPortalReferralResponse>>\n{\n /** @description The unique identifier for the referral */\n // @ApiMember(Description=\"The unique identifier for the referral\")\n public id: number|null;\n\n public constructor(init?: Partial<ReferralPortalReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReferralRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralResponse>(); }\n}\n(ReferralPortalReferralRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/{WorkflowId}/appointments\", \"GET,POST\")\nexport class ReferralPortalReferralAppointmentRequest implements IReturn<ResponseBase<ReferralPortalReferralAppointmentResponse>>\n{\n /** @description Which Referral should the appointment relate to */\n // @ApiMember(Description=\"Which Referral should the appointment relate to\", ParameterType=\"model\")\n public workflowId: number|null;\n\n /** @description Pagination - how many records to skip, use in conjunction with `Take` */\n // @ApiMember(Description=\"Pagination - how many records to skip, use in conjunction with `Take`\", ParameterType=\"model\")\n public skip: number|null;\n\n /** @description Pagination - how many records to take, use in conjunction with `Skip` */\n // @ApiMember(Description=\"Pagination - how many records to take, use in conjunction with `Skip`\", ParameterType=\"model\")\n public take: number|null;\n\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<ReferralPortalReferralAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReferralAppointmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralAppointmentResponse>(); }\n}\n(ReferralPortalReferralAppointmentRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralReportRequest implements IReturn<ResponseBase<ReferralPortalReferralReportResponse>>\n{\n public workflowId: number|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<ReferralPortalReferralReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReferralReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralReportResponse>(); }\n}\n(ReferralPortalReferralReportRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalReportBodyRequest implements IReturn<ResponseBase<T>>\n{\n public workflowId: number|null;\n public reportId: number|null;\n\n public constructor(init?: Partial<ReferralPortalReportBodyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReportBodyRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalReportBodyRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralSearchRequest implements IReturn<ResponseBase<ReferralPortalReferralSearchResponse>>\n{\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public filterConditions: SearchFilterCondition[]|null;\n public searchType: ReferralSearchType|null;\n\n public constructor(init?: Partial<ReferralPortalReferralSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReferralSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralSearchResponse>(); }\n}\n(ReferralPortalReferralSearchRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalAuditRequest implements IReturn<ResponseBase<T>>\n{\n public workflowId: number|null;\n public skip: number|null;\n public take: number|null;\n public filter: ReferralPortalAuditType[]|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<ReferralPortalAuditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalAuditRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalAuditRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/contracts\", \"POST\")\n// @ApiResponse(Description=\"Success\", StatusCode=200)\n// @ApiResponse(Description=\"Validation Exception\", StatusCode=400)\nexport class ReferralPortalContractRequest implements IReturn<ResponseBase<ContractWithActiveStatusDto>>\n{\n /** @description If using Caseflow pre-referral information, then the age can be used to restrict the available services further. */\n // @ApiMember(Description=\"If using Caseflow pre-referral information, then the age can be used to restrict the available services further.\", ParameterType=\"model\")\n public patientAge: number|null;\n\n public constructor(init?: Partial<ReferralPortalContractRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalContractRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ContractWithActiveStatusDto>(); }\n}\n(ReferralPortalContractRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/products\", \"POST\")\n// @ApiResponse(Description=\"Success\", StatusCode=200)\n// @ApiResponse(Description=\"Validation Failure - look at the Response Status for further details\", StatusCode=400)\nexport class ReferralPortalProductRequest implements IReturn<ResponseBase<ReferralPortalProductResponse>>\n{\n /** @description The `contractId`, which can be retrieved from `/api/contracts`. If this is not supplied, all valid products will be returned */\n // @ApiMember(Description=\"The `contractId`, which can be retrieved from `/api/contracts`. If this is not supplied, all valid products will be returned\", Format=\"uuid\", ParameterType=\"model\")\n public contractId: string|null;\n\n public constructor(init?: Partial<ReferralPortalProductRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalProductRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalProductResponse>(); }\n}\n(ReferralPortalProductRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/locations\", \"POST\")\n// @ApiResponse(Description=\"Success\", StatusCode=200)\n// @ApiResponse(Description=\"Validation Exception\", StatusCode=400)\nexport class ReferralPortalLocationRequest implements IReturn<ResponseBase<ReferralPortalLocationResponse>>\n{\n public serviceId: string|null;\n public skip: number|null;\n public take: number|null;\n\n public constructor(init?: Partial<ReferralPortalLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalLocationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalLocationResponse>(); }\n}\n(ReferralPortalLocationRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/appointments\", \"POST\")\n// @ApiResponse(Description=\"Success\", StatusCode=200)\n// @ApiResponse(Description=\"Validation Exception\", StatusCode=400)\nexport class ReferralPortalAppointmentRequest implements IReturn<ResponseBase<ReferralPortalAppointmentSearchResult>>\n{\n /** @description Available from /portal/products */\n // @ApiMember(Description=\"Available from /portal/products\", ParameterType=\"model\")\n public serviceIds: string[]|null;\n\n /** @description Available from /portal/locations */\n // @ApiMember(Description=\"Available from /portal/locations\", ParameterType=\"model\")\n public locationId: string|null;\n\n public from: string|null;\n public to: string|null;\n /** @description Filter by the service provider's gender, leave blank to skip */\n // @ApiMember(Description=\"Filter by the service provider's gender, leave blank to skip\", ParameterType=\"model\")\n public gender: string|null;\n\n /** @description Required for existing referrals only */\n // @ApiMember(Description=\"Required for existing referrals only\", ParameterType=\"model\")\n public workflowId: number|null;\n\n /** @description Aggregate appointments by a specified field */\n // @ApiMember(DataType=\"[Enum] - NONE | DATE\", Description=\"Aggregate appointments by a specified field\", ParameterType=\"model\")\n public aggregateBy: EReferralPortalAppointmentAggregate|null;\n\n public constructor(init?: Partial<ReferralPortalAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalAppointmentSearchResult>(); }\n}\n(ReferralPortalAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/appointment/reserve\", \"POST\")\nexport class ReferralPortalReserveAppointmentRequest implements IReturn<ResponseBase<ReferralPortalReserveAppointmentResponse>>\n{\n /** @description LocationId */\n // @ApiMember(DataType=\"string\", Description=\"LocationId\", Name=\"LocationId\", ParameterType=\"model\", Verb=\"POST\")\n public locationId: string|null;\n\n // @ApiMember(ParameterType=\"model\")\n public practitionerId: string|null;\n\n // @ApiMember(IsRequired=true, ParameterType=\"model\")\n public startDateTime: string;\n\n // @ApiMember(IsRequired=true, ParameterType=\"model\")\n public endDateTime: string;\n\n // @ApiMember(IsRequired=true, ParameterType=\"model\")\n public serviceId: string;\n\n // @ApiMember(ParameterType=\"model\")\n public workflowId: number|null;\n\n public constructor(init?: Partial<ReferralPortalReserveAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReserveAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalReserveAppointmentResponse>(); }\n}\n(ReferralPortalReserveAppointmentRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalDeleteProvisionalAppointmentRequest implements IReturn<ResponseBase<boolean>>\n{\n public appointmentId: number|null;\n\n public constructor(init?: Partial<ReferralPortalDeleteProvisionalAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalDeleteProvisionalAppointmentRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalDeleteProvisionalAppointmentRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalTemporaryFileRequest implements IReturn<ResponseBase<ReferralPortalTemporaryFileResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<ReferralPortalTemporaryFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalTemporaryFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalTemporaryFileResponse>(); }\n}\n(ReferralPortalTemporaryFileRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalTemporaryFileListingRequest implements IReturn<ResponseBase<ReferralPortalTemporaryFileListingResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<ReferralPortalTemporaryFileListingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalTemporaryFileListingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalTemporaryFileListingResponse>(); }\n}\n(ReferralPortalTemporaryFileListingRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalTemporaryFileDeleteRequest implements IReturn<ResponseBase<T>>\n{\n public name: string|null;\n public folderId: string|null;\n public path: string|null;\n\n public constructor(init?: Partial<ReferralPortalTemporaryFileDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalTemporaryFileDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalTemporaryFileDeleteRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/{WorkflowId}/appointment\", \"POST\")\nexport class ReferralPortalAddAppointmentToReferralRequest implements IReturn<ResponseBase<ReferralPortalReferralResponse>>\n{\n /** @description The `Id` from a `/portal/referral` request. */\n // @ApiMember(Description=\"The `Id` from a `/portal/referral` request.\", IsRequired=true, ParameterType=\"model\")\n public workflowId: number;\n\n /** @description The `AppointmentId` from a `/portal/reserve` request. */\n // @ApiMember(Description=\"The `AppointmentId` from a `/portal/reserve` request.\", IsRequired=true, ParameterType=\"model\")\n public appointmentId: number;\n\n /** @description Add any notes to the appointment that might be useful for us, e.g. preferred contact number */\n // @ApiMember(Description=\"Add any notes to the appointment that might be useful for us, e.g. preferred contact number\", ParameterType=\"model\")\n public comment: string|null;\n\n public constructor(init?: Partial<ReferralPortalAddAppointmentToReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalAddAppointmentToReferralRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralResponse>(); }\n}\n(ReferralPortalAddAppointmentToReferralRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/{WorkflowId}/appointment/{AppointmentId}/cancel\", \"POST\")\nexport class ReferralPortalCancelAppointment implements IReturn<ResponseBase<boolean>>\n{\n public appointmentId: number|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<ReferralPortalCancelAppointment>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCancelAppointment'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalCancelAppointment as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral\", \"POST\")\nexport class ReferralPortalCreateReferralRequest implements IReturn<ResponseBase<ReferralPortalReferralResponse>>\n{\n /** @description Required when referring without an appointment. Available from `/portal/products`. */\n // @ApiMember(Description=\"Required when referring without an appointment. Available from `/portal/products`.\", ParameterType=\"model\")\n public serviceId: string|null;\n\n /** @description JSON data containing referral data fields. The list of field names, and validation requirements can be retrieved from `/portal/referral/fields`. Note that it can vary by service, though mostly should be standardised.e.g. ```json{ \"R.forename\": \"John\", \"R.surname\": \"Smith\",}``` */\n // @ApiMember(Description=\"JSON data containing referral data fields. The list of field names, and validation requirements can be retrieved from `/portal/referral/fields`. Note that it can vary by service, though mostly should be standardised.\\ne.g. \\n```json\\n{\\n \\\"R.forename\\\": \\\"John\\\",\\n \\\"R.surname\\\": \\\"Smith\\\",\\n}\\n```\\n\\n\", ParameterType=\"model\")\n public referralData: JsonField|null;\n\n /** @description The (optional) `AppointmentId` from a `/portal/reserve` request. */\n // @ApiMember(Description=\"The (optional) `AppointmentId` from a `/portal/reserve` request.\", ParameterType=\"model\")\n public appointmentId: number|null;\n\n // @ApiMember(ExcludeInSchema=true)\n public firstOfferedDate: string|null;\n\n // @ApiMember(ExcludeInSchema=true)\n public offeredRejectedReason: string|null;\n\n /** @description hidden until we document file upload endpoints */\n // @ApiMember(Description=\"hidden until we document file upload endpoints\", ExcludeInSchema=true)\n public temporaryFolderId: string|null;\n\n /** @description Use this option to configure what type of initial communications should be sent upon referral. */\n // @ApiMember(Description=\"Use this option to configure what type of initial communications should be sent upon referral.\", ParameterType=\"model\")\n public communicationType: ReferralCommunicationType|null;\n\n /** @description Set this to true to generate an URL for the end referrer to login to the self-service portal. The link will auto-expire after a number of days. */\n // @ApiMember(Description=\"Set this to true to generate an URL for the end referrer to login to the self-service portal. The link will auto-expire after a number of days.\", ParameterType=\"model\")\n public generateAutoLoginUrl: boolean|null;\n\n /** @description For the user to by-pass Client Portal and be redirected straight to the digital triage service, supply the Id of the Client Portal Digital Triage Service here */\n // @ApiMember(Description=\"For the user to by-pass Client Portal and be redirected straight to the digital triage service, supply the Id of the Client Portal Digital Triage Service here\", ParameterType=\"model\")\n public digitalTriageAutoLaunchServiceId: string|null;\n\n /** @description If GenerateAutoLoginUrl is set to true, by default MFA will be enabled, prompting the user for a code. To skip the MFA check, toggle this property to true. */\n // @ApiMember(Description=\"If GenerateAutoLoginUrl is set to true, by default MFA will be enabled, prompting the user for a code. To skip the MFA check, toggle this property to true.\", ParameterType=\"model\")\n public autoLoginSkipMfa: boolean|null;\n\n /** @description Add any notes to the appointment that might be useful for us, e.g. preferred contact number */\n // @ApiMember(Description=\"Add any notes to the appointment that might be useful for us, e.g. preferred contact number\", ParameterType=\"model\")\n public comment: string|null;\n\n public constructor(init?: Partial<ReferralPortalCreateReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCreateReferralRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralResponse>(); }\n}\n(ReferralPortalCreateReferralRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalContactRolesRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<ReferralPortalContactRolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalContactRolesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalContactRolesRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalContactSearchRequest implements IReturn<ResponseBase<T>>\n{\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n\n public constructor(init?: Partial<ReferralPortalContactSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalContactSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalContactSearchRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalUserRequest implements IReturn<ResponseBase<ReferralPortalUserResponse>>\n{\n public userId: number|null;\n\n public constructor(init?: Partial<ReferralPortalUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUserRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalUserResponse>(); }\n}\n(ReferralPortalUserRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalUserSearchRequest implements IReturn<ResponseBase<ReferralPortalUserResponse>>\n{\n public skip: number|null;\n public take: number|null;\n public filterConditions: SearchFilterCondition[]|null;\n\n public constructor(init?: Partial<ReferralPortalUserSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUserSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalUserResponse>(); }\n}\n(ReferralPortalUserSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/avatar\", \"GET\")\nexport class ReferralPortalUserAvatarRequest implements IReturn<HttpResult>\n{\n\n public constructor(init?: Partial<ReferralPortalUserAvatarRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUserAvatarRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(ReferralPortalUserAvatarRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalEditProfileUserRequest implements IReturn<ResponseBase<ReferralPortalUserResponse>>\n{\n\n public constructor(init?: Partial<ReferralPortalEditProfileUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalEditProfileUserRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalUserResponse>(); }\n}\n(ReferralPortalEditProfileUserRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalUpdateCurrentUserRequest extends ReferralPortalUpdateUserRequest implements IReturn<ResponseBase<boolean>>\n{\n\n public constructor(init?: Partial<ReferralPortalUpdateCurrentUserRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUpdateCurrentUserRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalUpdateCurrentUserRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalCompaniesRequest implements IReturn<ResponseBase<ReferralPortalCompaniesResponse>>\n{\n\n public constructor(init?: Partial<ReferralPortalCompaniesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalCompaniesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalCompaniesResponse>(); }\n}\n(ReferralPortalCompaniesRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalLookupCacheRequest extends LookupCacheRequest implements IReturn<ResponseBase<LookupCacheResponse>>\n{\n\n public constructor(init?: Partial<ReferralPortalLookupCacheRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalLookupCacheRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LookupCacheResponse>(); }\n}\n(ReferralPortalLookupCacheRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalSettingsRequest implements IReturn<ResponseBase<ReferralPortalSettingsResponse>>\n{\n\n public constructor(init?: Partial<ReferralPortalSettingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalSettingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalSettingsResponse>(); }\n}\n(ReferralPortalSettingsRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalSwapCompanyRequest implements IReturn<ResponseBase<boolean>>\n{\n public primary: boolean|null;\n public companyId: number|null;\n\n public constructor(init?: Partial<ReferralPortalSwapCompanyRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalSwapCompanyRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalSwapCompanyRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/selfpasswordreset\", \"POST\")\nexport class ReferralPortalSelfResetPasswordRequest implements IReturn<ResponseBase<T>>\n{\n public mode: ResetMode|null;\n\n public constructor(init?: Partial<ReferralPortalSelfResetPasswordRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalSelfResetPasswordRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalSelfResetPasswordRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/passwordreset\", \"POST\")\nexport class ReferralPortalResetPasswordRequest implements IReturn<ResponseBase<T>>\n{\n public userId: number|null;\n public mode: ResetMode|null;\n\n public constructor(init?: Partial<ReferralPortalResetPasswordRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalResetPasswordRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalResetPasswordRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/twofactortoggle\", \"POST\")\nexport class ReferralPortalToggleTwoFactorAuthentication implements IReturn<ResponseBase<T>>\n{\n public twoFactorEnabled: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalToggleTwoFactorAuthentication>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalToggleTwoFactorAuthentication'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalToggleTwoFactorAuthentication as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/template/{ServiceId}\", \"GET\")\nexport class ReferralPortalTemplateForServiceRequest implements IReturn<ResponseBase<CaseflowTemplateDto>>\n{\n public serviceId: string|null;\n\n public constructor(init?: Partial<ReferralPortalTemplateForServiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalTemplateForServiceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowTemplateDto>(); }\n}\n(ReferralPortalTemplateForServiceRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/fields/{ServiceId}\", \"GET\")\nexport class ReferralPortalFieldsForServiceRequest implements IReturn<ResponseBase<ReferralPortalFieldsResponse>>\n{\n public serviceId: string|null;\n\n public constructor(init?: Partial<ReferralPortalFieldsForServiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalFieldsForServiceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalFieldsResponse>(); }\n}\n(ReferralPortalFieldsForServiceRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/referral/{Id}/services\", \"GET\")\nexport class ReferralPortalAllowedServicesRequest implements IReturn<ResponseBase<ReferralPortalProductResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ReferralPortalAllowedServicesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalAllowedServicesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalProductResponse>(); }\n}\n(ReferralPortalAllowedServicesRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalReferralChangeOwnerRequest implements IReturn<ResponseBase<ReferralPortalReferralResponse>>\n{\n public ownerId: string|null;\n public id: number|null;\n\n public constructor(init?: Partial<ReferralPortalReferralChangeOwnerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReferralChangeOwnerRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReferralPortalReferralResponse>(); }\n}\n(ReferralPortalReferralChangeOwnerRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/activate\", \"POST\")\nexport class RegisterGroupOnReferralPortalRequest implements IReturn<ResponseBase<T>>\n{\n public groupId: number|null;\n public uniqueDatabase: boolean|null;\n public twoFactorAuthentication: boolean|null;\n\n public constructor(init?: Partial<RegisterGroupOnReferralPortalRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RegisterGroupOnReferralPortalRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(RegisterGroupOnReferralPortalRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/client/disable\", \"POST\")\nexport class DisableClientRequest implements IReturn<ResponseBase<T>>\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<DisableClientRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DisableClientRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DisableClientRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/status/{Id}\", \"GET\")\nexport class ReferralPortalStatusRequest implements IReturn<ResponseBase<ReferralPortalStatusResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ReferralPortalStatusRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalStatusRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalStatusResponse>(); }\n}\n(ReferralPortalStatusRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/users\", \"GET\")\nexport class LegacyReferralPortalUserRequest implements IReturn<ResponseBase<T>>\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<LegacyReferralPortalUserRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LegacyReferralPortalUserRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(LegacyReferralPortalUserRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/user/create\", \"POST\")\nexport class ReferralPortalUserCreationRequest implements IReturn<ResponseBase<T>>\n{\n public email: string|null;\n public name: string|null;\n public userType: ReferralPortalUserType|null;\n public groupId: number|null;\n public childCustomers: string[]|null;\n\n public constructor(init?: Partial<ReferralPortalUserCreationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalUserCreationRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalUserCreationRequest as unknown)[immerable] = true;\n\n// @Route(\"/portal/user/update\", \"POST\")\nexport class LegacyReferralPortalUserUpdateRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public name: string|null;\n public email: string|null;\n public clientGuid: string|null;\n public userType: ReferralPortalUserType|null;\n public enabled: boolean|null;\n public userId: string|null;\n public isTwoFactorAuthenticated: boolean|null;\n public groupId: number|null;\n public childCustomers: string[]|null;\n\n public constructor(init?: Partial<LegacyReferralPortalUserUpdateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LegacyReferralPortalUserUpdateRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(LegacyReferralPortalUserUpdateRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalPasswordResetRequest implements IReturn<HttpResult>\n{\n public email: string|null;\n\n public constructor(init?: Partial<ReferralPortalPasswordResetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalPasswordResetRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(ReferralPortalPasswordResetRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalTwoFactorResetRequest implements IReturn<HttpResult>\n{\n public email: string|null;\n\n public constructor(init?: Partial<ReferralPortalTwoFactorResetRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalTwoFactorResetRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(ReferralPortalTwoFactorResetRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalEmailCheckRequest\n{\n public email: string|null;\n\n public constructor(init?: Partial<ReferralPortalEmailCheckRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalEmailCheckRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReferralPortalEmailCheckRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalToggleTwoFactorRequest implements IReturn<ResponseBase<boolean>>\n{\n public groupId: number|null;\n public twoFactorEnabled: boolean|null;\n\n public constructor(init?: Partial<ReferralPortalToggleTwoFactorRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalToggleTwoFactorRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ReferralPortalToggleTwoFactorRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalResetLockedAccount implements IReturn<ResponseBase<T>>\n{\n public email: string|null;\n\n public constructor(init?: Partial<ReferralPortalResetLockedAccount>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalResetLockedAccount'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalResetLockedAccount as unknown)[immerable] = true;\n\n// @Route(\"/portal/enable\", \"POST\")\nexport class ReferralPortalReactivateGroup implements IReturn<ResponseBase<T>>\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<ReferralPortalReactivateGroup>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalReactivateGroup'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalReactivateGroup as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/CreateNewReferral\", \"POST\")\nexport class CreateNewReferralRequest implements IReturn<CreateNewReferralResponse>\n{\n public dto: ReferralRequestDTO|null;\n public referralId: number|null;\n\n public constructor(init?: Partial<CreateNewReferralRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateNewReferralRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new CreateNewReferralResponse(); }\n}\n(CreateNewReferralRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/getlookup/{LookupName}\", \"GET\")\nexport class GetLookupRequest\n{\n public lookupName: string|null;\n\n public constructor(init?: Partial<GetLookupRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetLookupRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetLookupRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/referralportal/UpdateReportMessage\", \"POST\")\nexport class UpdateReportMessageRequest\n{\n public caseflowReferralId: number|null;\n public messageType: MessageType|null;\n public notes: string|null;\n public referralId: number|null;\n public reportId: number|null;\n\n public constructor(init?: Partial<UpdateReportMessageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateReportMessageRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(UpdateReportMessageRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/getChildCustomers/{DistributorGuid}\")\nexport class GetChildCustomerRequest\n{\n public distributorGuid: string|null;\n\n public constructor(init?: Partial<GetChildCustomerRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetChildCustomerRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(GetChildCustomerRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalSharedFilesRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<ReferralPortalSharedFilesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalSharedFilesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ReferralPortalSharedFilesRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalFilesByWorkflowIdRequest implements IReturn<ListingFolderTree>, IGet\n{\n public id: number|null;\n\n public constructor(init?: Partial<ReferralPortalFilesByWorkflowIdRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalFilesByWorkflowIdRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ListingFolderTree(); }\n}\n(ReferralPortalFilesByWorkflowIdRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalSharedFilesDownloadRequest extends ARpDownloadRequest implements IReturn<ResponseBase<ReferralPortalSharedFilesDownloadResponse>>\n{\n\n public constructor(init?: Partial<ReferralPortalSharedFilesDownloadRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalSharedFilesDownloadRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalSharedFilesDownloadResponse>(); }\n}\n(ReferralPortalSharedFilesDownloadRequest as unknown)[immerable] = true;\n\nexport class ReferralPortalDownloadManagementReportRequest extends ARpDownloadRequest implements IReturn<ResponseBase<ReferralPortalSharedFilesDownloadResponse>>\n{\n\n public constructor(init?: Partial<ReferralPortalDownloadManagementReportRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalDownloadManagementReportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ReferralPortalSharedFilesDownloadResponse>(); }\n}\n(ReferralPortalDownloadManagementReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/file/view\", \"HEAD, GET\")\nexport class ReferralPortalViewFileRequest\n{\n public documentListingId: string|null;\n\n public constructor(init?: Partial<ReferralPortalViewFileRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalViewFileRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReferralPortalViewFileRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/management-report/view\", \"HEAD, GET\")\nexport class ReferralPortalViewManagementReportRequest\n{\n public documentListingId: string|null;\n\n public constructor(init?: Partial<ReferralPortalViewManagementReportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferralPortalViewManagementReportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ReferralPortalViewManagementReportRequest as unknown)[immerable] = true;\n\n// @Route(\"/referralportal/referralsync\")\nexport class SyncReferralsToRpRequest implements IReturn<ResponseBase<boolean>>\n{\n public secret: string|null;\n public workflowIds: number[]|null;\n\n public constructor(init?: Partial<SyncReferralsToRpRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SyncReferralsToRpRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SyncReferralsToRpRequest as unknown)[immerable] = true;\n\n// @Route(\"/pronto/caseflow/webhook\")\nexport class ProntoCaseflowWebHookRequest\n{\n public id: string|null;\n public source: string|null;\n public destination: string|null;\n public type: MessageType|null;\n public data: string|null;\n public timeStamp: string|null;\n\n public constructor(init?: Partial<ProntoCaseflowWebHookRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ProntoCaseflowWebHookRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(ProntoCaseflowWebHookRequest as unknown)[immerable] = true;\n\nexport class ReferrerSingleBookingAuditRequest implements IReturn<ResponseBase<SingleBookingAuditResponse>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<ReferrerSingleBookingAuditRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReferrerSingleBookingAuditRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SingleBookingAuditResponse>(); }\n}\n(ReferrerSingleBookingAuditRequest as unknown)[immerable] = true;\n\n// @Route(\"/phio/webhook\", \"POST\")\nexport class PhioWebhookRequest implements IReturn<string>\n{\n public requestStream: string|null;\n\n public constructor(init?: Partial<PhioWebhookRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhioWebhookRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return ''; }\n}\n(PhioWebhookRequest as unknown)[immerable] = true;\n\nexport class NoBookingConfirmRequest implements IReturn<ResponseBase<NoBookingConfirmationSummary>>, IPut\n{\n public customer: OnlineCustomerDto|null;\n public serviceId: string|null;\n public metadata: JsonField|null;\n public overrideProductServiceId: string|null;\n public locationId: string|null;\n public workflowId: number|null;\n\n public constructor(init?: Partial<NoBookingConfirmRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NoBookingConfirmRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<NoBookingConfirmationSummary>(); }\n}\n(NoBookingConfirmRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/network/files\", \"POST\")\n// @Route(\"/caseflow/network/files/{id}\", \"GET,POST\")\n// @Route(\"/caseflow/network/files/{id}/{Recursive}\", \"GET,POST\")\n// @Route(\"/caseflow/network/files/{id}/{Recursive}/{IgnoreFiles}\", \"GET,POST\")\nexport class NetworkMgmtDocumentRequest\n{\n public id: string|null;\n public recursive: boolean|null;\n public ignoreFiles: boolean|null;\n public path: string|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<NetworkMgmtDocumentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkMgmtDocumentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(NetworkMgmtDocumentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/file\", \"POST\")\n// @DataContract\nexport class CaseflowUploadFile implements IReturn<UploadResult>, IHasPath\n{\n // @DataMember(Order=1)\n public path: string|null;\n\n // @DataMember(Order=2)\n public safeRoot: string|null;\n\n // @DataMember(Order=3)\n public httpRequest: IHttpRequest|null;\n\n // @DataMember(Order=4)\n public id: string|null;\n\n // @DataMember(Order=5)\n public mode: string|null;\n\n public constructor(init?: Partial<CaseflowUploadFile>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowUploadFile'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new UploadResult(); }\n}\n(CaseflowUploadFile as unknown)[immerable] = true;\n\nexport class NetworkDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public name: string|null;\n public status: number|null;\n public businesses: number|null;\n public clinicians: number|null;\n public locations: number|null;\n public prontoNetworkId: string|null;\n public charges: NetworkChargeDto[]|null;\n public complianceRequiresDataProtection: boolean|null;\n public complianceRequiresInsurance: boolean|null;\n public complianceRequiresBankDetails: boolean|null;\n public complianceRequiresContract: boolean|null;\n\n public constructor(init?: Partial<NetworkDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkDto as unknown)[immerable] = true;\n\nexport class GetNetwork implements IReturn<ResponseBase<NetworkDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetwork>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetwork'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkDto>(); }\n}\n(GetNetwork as unknown)[immerable] = true;\n\n// @Route(\"/network-management/networks/search\", \"POST\")\nexport class NetworkSearch implements IReturn<ResponseBase<T>>\n{\n public take: number|null;\n public skip: number|null;\n public sort: QueryField[]|null;\n public term: string|null;\n public name: string|null;\n public showNonCurrent: boolean|null;\n\n public constructor(init?: Partial<NetworkSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkSearch as unknown)[immerable] = true;\n\n// @Route(\"/network-management/mergefields\", \"POST\")\nexport class GetNetworkMergeFields implements IReturn<ResponseBase<{ [index:string]: Object; }>>\n{\n public networkId: string|null;\n public nmLocationId: string|null;\n public clinicianId: string|null;\n public pricing: CapturePointPrice[]|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<GetNetworkMergeFields>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkMergeFields'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<{ [index:string]: Object; }>(); }\n}\n(GetNetworkMergeFields as unknown)[immerable] = true;\n\n// @Route(\"/network-management/location/charges\", \"GET\")\nexport class GetNetworkLocationCharges implements IReturn<ResponseBase<NetworkLocationChargeDto>>\n{\n public networkId: string|null;\n public nmLocationId: string|null;\n public subWorkflowId: number|null;\n public serviceIds: string[]|null;\n\n public constructor(init?: Partial<GetNetworkLocationCharges>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkLocationCharges'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkLocationChargeDto>(); }\n}\n(GetNetworkLocationCharges as unknown)[immerable] = true;\n\nexport class ClinicianLocationDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public clinicianId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<ClinicianLocationDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicianLocationDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClinicianLocationDto as unknown)[immerable] = true;\n\nexport class ClinicianSpecialismDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public clinicianId: string|null;\n public specialismId: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<ClinicianSpecialismDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicianSpecialismDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClinicianSpecialismDto as unknown)[immerable] = true;\n\nexport class ClinicianDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public title: string|null;\n public forename: string|null;\n public surname: string|null;\n public gender: string|null;\n public emailAddress: string|null;\n public phoneNumber: string|null;\n public dateAdded: string|null;\n public altPhoneNumber1: string|null;\n public altPhoneNumber2: string|null;\n public hcpcNumber: string|null;\n public hcpcExpiryDate: string|null;\n public crbReference: string|null;\n public crbExpiryDate: string|null;\n public photo: string|null;\n public status: string|null;\n public isIndividualSpecialist: boolean|null;\n public vehicleReg: string|null;\n public vehicleMake: string|null;\n public vehicleModel: string|null;\n public vehicleColour: string|null;\n public proofOfEligibilityToWork: boolean|null;\n public proofOfEligibilityToWorkComment: string|null;\n public proofOfAddress: boolean|null;\n public proofOfAddressComment: string|null;\n public locations: ClinicianLocationDto[]|null;\n public specialisms: ClinicianSpecialismDto[]|null;\n public professionalMemberships: ProfessionalMembershipDto[]|null;\n public businessId: string|null;\n public prontoPractitionerId: string|null;\n public isCompliant: boolean|null;\n public dbsAdultBarredList: boolean|null;\n public dbsChildrenBarredList: boolean|null;\n public isAvailableOnline: boolean|null;\n public publicDisplayName: string|null;\n public additionalData: string|null;\n\n public constructor(init?: Partial<ClinicianDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicianDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClinicianDto as unknown)[immerable] = true;\n\n// @Route(\"/network-management/clinicians/search\", \"POST\")\nexport class ClinicianSearch implements IReturn<ResponseBase<ClinicianDto>>\n{\n public take: number|null;\n public skip: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<ClinicianSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicianSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ClinicianDto>(); }\n}\n(ClinicianSearch as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/search\", \"POST\")\nexport class BusinessSearch implements IReturn<ResponseBase<BusinessSearchResultDto>>\n{\n public take: number|null;\n public skip: number|null;\n public sort: QueryField[]|null;\n public term: string|null;\n public name: string|null;\n public postcode: string|null;\n public complianceStatus: SearchComplianceStatus|null;\n public prontoStatus: SearchProntoStatus|null;\n\n public constructor(init?: Partial<BusinessSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<BusinessSearchResultDto>(); }\n}\n(BusinessSearch as unknown)[immerable] = true;\n\nexport class NetworkLocationDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public name: string|null;\n public addressId: string|null;\n public businessId: string|null;\n public status: LocationStatus|null;\n public statusDisplay: LocationStatus|null;\n public prontoStatus: LocationProntoStatus|null;\n public rating: number|null;\n public notes: string|null;\n public financialOverride: boolean|null;\n public addressLine1: string|null;\n public addressLine2: string|null;\n public addressLine3: string|null;\n public addressLine4: string|null;\n public addressLine5: string|null;\n public postCode: string|null;\n public telephone: string|null;\n public altTelephone1: string|null;\n public altTelephone2: string|null;\n public email: string|null;\n public disabledAccess: boolean|null;\n public treatmentRooms: string|null;\n public networks: NetworkLocationMemberDto[]|null;\n public charges: NetworkLocationChargeDto[]|null;\n public linkedLocationId: string|null;\n public isResidential: boolean|null;\n public hasParking: boolean|null;\n public therapyRoomDetails: string|null;\n public directions: string|null;\n public dateOnboarded: string|null;\n public hasReferrals: boolean|null;\n public isAvailableOnline: boolean|null;\n public publicDisplayName: string|null;\n public additionalData: string|null;\n public facilityIds: string[]|null;\n\n public constructor(init?: Partial<NetworkLocationDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkLocationDto as unknown)[immerable] = true;\n\n// @Route(\"/network-management/locations/search\", \"POST\")\nexport class LocationSearch implements IReturn<ResponseBase<NetworkLocationDto>>\n{\n public take: number|null;\n public skip: number|null;\n public sort: QueryField[]|null;\n public networkId: string|null;\n public term: string|null;\n\n public constructor(init?: Partial<LocationSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NetworkLocationDto>(); }\n}\n(LocationSearch as unknown)[immerable] = true;\n\n// @Route(\"/network-management/locations/{Id}\", \"GET\")\nexport class GetNetworkLocation implements IReturn<ResponseBase<NetworkLocationDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetworkLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkLocation'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkLocationDto>(); }\n}\n(GetNetworkLocation as unknown)[immerable] = true;\n\nexport class DeleteLocationDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<DeleteLocationDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteLocationDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteLocationDto as unknown)[immerable] = true;\n\nexport class DeleteClinicianDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<DeleteClinicianDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteClinicianDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteClinicianDto as unknown)[immerable] = true;\n\nexport class NetworkContractDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public businessId: string|null;\n public startDate: string|null;\n public nextRenewalDate: string|null;\n public terminationDate: string|null;\n public isActive: boolean|null;\n\n public constructor(init?: Partial<NetworkContractDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkContractDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkContractDto as unknown)[immerable] = true;\n\nexport class BusinessSettingsDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public businessId: string|null;\n public useInvoicePaymentTerms: boolean|null;\n public invoicePaymentTerms: string|null;\n public globalGuid: string|null;\n\n public constructor(init?: Partial<BusinessSettingsDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessSettingsDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(BusinessSettingsDto as unknown)[immerable] = true;\n\nexport class CreateBusinessDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public networkId: string|null;\n public name: string|null;\n public primaryContactId: string|null;\n public primaryContactCreatesMatchingLocation: boolean|null;\n public primaryContactCreatesMatchingClinician: boolean|null;\n public financialContactIsPrimaryContact: boolean|null;\n public usePrimaryContactAddressForFinancialContact: boolean|null;\n public financialContactId: string|null;\n public notes: string|null;\n public status: string|null;\n public rating: number|null;\n public individualFlag: boolean|null;\n public complianceFlag: boolean|null;\n public locations: NetworkLocationDto[]|null;\n public contracts: NetworkContractDto[]|null;\n public compliances: ComplianceDto[]|null;\n public primaryContact: NetworkContactDto|null;\n public financialContact: NetworkContactDto|null;\n public networks: NetworkDto[]|null;\n public clinicians: ClinicianDto[]|null;\n public businessId: string|null;\n public isCompliant: boolean|null;\n public prontoStatus: ProntoStatus|null;\n public prontoClinicId: string|null;\n public linkedLocationId: string|null;\n public linkedLocationName: string|null;\n public settings: BusinessSettingsDto|null;\n public isAvailableOnline: boolean|null;\n public publicDisplayName: string|null;\n public additionalData: string|null;\n public clinicSystemType: string|null;\n public prontoPortalPaymentError: boolean|null;\n\n public constructor(init?: Partial<CreateBusinessDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CreateBusinessDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CreateBusinessDto as unknown)[immerable] = true;\n\nexport class GetBusiness implements IReturn<ResponseBase<CreateBusinessDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetBusiness>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusiness'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CreateBusinessDto>(); }\n}\n(GetBusiness as unknown)[immerable] = true;\n\nexport class GetBusinessSettings implements IReturn<ResponseBase<BusinessSettingsDto>>\n{\n public businessId: string|null;\n\n public constructor(init?: Partial<GetBusinessSettings>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessSettings'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessSettingsDto>(); }\n}\n(GetBusinessSettings as unknown)[immerable] = true;\n\nexport class GetNetworkLocationForAppointmentRequest implements IReturn<ResponseBase<NetworkLocationDto>>\n{\n public appointmentId: number|null;\n\n public constructor(init?: Partial<GetNetworkLocationForAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkLocationForAppointmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkLocationDto>(); }\n}\n(GetNetworkLocationForAppointmentRequest as unknown)[immerable] = true;\n\nexport class GetNetworkLocationsLinkedToInternalLocationRequest implements IReturn<ResponseBase<NetworkLocationDto>>\n{\n public internalLocationId: number|null;\n\n public constructor(init?: Partial<GetNetworkLocationsLinkedToInternalLocationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkLocationsLinkedToInternalLocationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkLocationDto>(); }\n}\n(GetNetworkLocationsLinkedToInternalLocationRequest as unknown)[immerable] = true;\n\nexport class NetworkLocationLocationDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public networkId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<NetworkLocationLocationDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkLocationLocationDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkLocationLocationDto as unknown)[immerable] = true;\n\nexport class GetNetworkLocations implements IReturn<ResponseBase<NetworkLocationLocationDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetworkLocations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkLocations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkLocationLocationDto>(); }\n}\n(GetNetworkLocations as unknown)[immerable] = true;\n\nexport class ComplianceListDto implements IReturn<ResponseBase<T>>\n{\n public businessId: string|null;\n public isCompliant: boolean|null;\n public compliances: ComplianceDto[]|null;\n\n public constructor(init?: Partial<ComplianceListDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ComplianceListDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ComplianceListDto as unknown)[immerable] = true;\n\nexport class GetCompliance implements IReturn<ResponseBase<ComplianceListDto>>\n{\n public businessId: string|null;\n\n public constructor(init?: Partial<GetCompliance>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCompliance'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ComplianceListDto>(); }\n}\n(GetCompliance as unknown)[immerable] = true;\n\nexport class GetComplianceWithAudit implements IReturn<ResponseBase<ComplianceListWithAuditDto>>\n{\n public businessId: string|null;\n\n public constructor(init?: Partial<GetComplianceWithAudit>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetComplianceWithAudit'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ComplianceListWithAuditDto>(); }\n}\n(GetComplianceWithAudit as unknown)[immerable] = true;\n\nexport class SaveNetworkLocationDto extends NetworkLocationDto implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<SaveNetworkLocationDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveNetworkLocationDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveNetworkLocationDto as unknown)[immerable] = true;\n\nexport class GetNetworkContracts implements IReturn<ResponseBase<NetworkContractDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetworkContracts>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkContracts'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkContractDto>(); }\n}\n(GetNetworkContracts as unknown)[immerable] = true;\n\nexport class GetNetworkContacts implements IReturn<ResponseBase<NetworkContactDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetworkContacts>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkContacts'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkContactDto>(); }\n}\n(GetNetworkContacts as unknown)[immerable] = true;\n\nexport class GetClinician implements IReturn<ResponseBase<ClinicianDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetClinician>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClinician'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicianDto>(); }\n}\n(GetClinician as unknown)[immerable] = true;\n\nexport class UpdateClinicianLocationsDto implements IReturn<ResponseBase<T>>\n{\n public clinicians: ClinicianDto[]|null;\n\n public constructor(init?: Partial<UpdateClinicianLocationsDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateClinicianLocationsDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateClinicianLocationsDto as unknown)[immerable] = true;\n\nexport class ClinicianNoteDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public clinicianId: string|null;\n public content: string|null;\n public userId: string|null;\n public fullName: string|null;\n public dateAdded: string|null;\n\n public constructor(init?: Partial<ClinicianNoteDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicianNoteDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClinicianNoteDto as unknown)[immerable] = true;\n\nexport class GetClinicianNotes implements IReturn<ResponseBase<ClinicianNoteDto>>\n{\n public clinicianId: string|null;\n\n public constructor(init?: Partial<GetClinicianNotes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClinicianNotes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicianNoteDto>(); }\n}\n(GetClinicianNotes as unknown)[immerable] = true;\n\nexport class DeleteClinicianNoteRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<DeleteClinicianNoteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteClinicianNoteRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteClinicianNoteRequest as unknown)[immerable] = true;\n\nexport class BusinessNoteDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public type: string|null;\n public fullName: string|null;\n public lastModified: string|null;\n public title: string|null;\n public entry: string|null;\n public alert: boolean|null;\n\n public constructor(init?: Partial<BusinessNoteDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'BusinessNoteDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(BusinessNoteDto as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/{BusinessId}/notes\", \"GET\")\nexport class GetBusinessNotes implements IReturn<ResponseBase<BusinessNoteDto>>\n{\n public businessId: string|null;\n public alertsOnly: boolean|null;\n\n public constructor(init?: Partial<GetBusinessNotes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessNotes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessNoteDto>(); }\n}\n(GetBusinessNotes as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/{BusinessId}/alerts\", \"GET\")\nexport class GetBusinessAlerts extends ResponseBase<AlertResponse> implements IReturn<ResponseBase<T>>\n{\n public businessId: string|null;\n public alertsOnly: boolean|null;\n\n public constructor(init?: Partial<GetBusinessAlerts>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessAlerts'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetBusinessAlerts as unknown)[immerable] = true;\n\nexport class GetAddresses implements IReturn<ResponseBase<AddressDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetAddresses>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAddresses'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<AddressDto>(); }\n}\n(GetAddresses as unknown)[immerable] = true;\n\nexport class NetworkServiceDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public disciplineId: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<NetworkServiceDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'NetworkServiceDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NetworkServiceDto as unknown)[immerable] = true;\n\nexport class ClinicalDisciplineDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public networkId: string|null;\n public name: string|null;\n public services: NetworkServiceDto[]|null;\n\n public constructor(init?: Partial<ClinicalDisciplineDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicalDisciplineDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClinicalDisciplineDto as unknown)[immerable] = true;\n\nexport class GetDisciplines implements IReturn<ResponseBase<ClinicalDisciplineDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetDisciplines>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDisciplines'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicalDisciplineDto>(); }\n}\n(GetDisciplines as unknown)[immerable] = true;\n\nexport class GetNetworkServices implements IReturn<ResponseBase<NetworkServiceDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetworkServices>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkServices'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkServiceDto>(); }\n}\n(GetNetworkServices as unknown)[immerable] = true;\n\nexport class SpecialismDto extends ExternalReferencesDto implements IReturn<ResponseBase<SpecialismDto>>\n{\n public id: string|null;\n public name: string|null;\n\n public constructor(init?: Partial<SpecialismDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SpecialismDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<SpecialismDto>(); }\n}\n(SpecialismDto as unknown)[immerable] = true;\n\n// @Route(\"/network-management/specialisms\", \"GET\")\nexport class GetSpecialisms implements IReturn<ResponseBase<SpecialismDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetSpecialisms>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSpecialisms'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SpecialismDto>(); }\n}\n(GetSpecialisms as unknown)[immerable] = true;\n\nexport class SpecialismDeleteRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<SpecialismDeleteRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SpecialismDeleteRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(SpecialismDeleteRequest as unknown)[immerable] = true;\n\nexport class ImageFileDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public formatType: string|null;\n public imageUrl: string|null;\n\n public constructor(init?: Partial<ImageFileDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ImageFileDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ImageFileDto as unknown)[immerable] = true;\n\nexport class GetNetworkBusinessImages implements IReturn<ResponseBase<ImageFileDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNetworkBusinessImages>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkBusinessImages'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ImageFileDto>(); }\n}\n(GetNetworkBusinessImages as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/{BusinessId}/locations\", \"GET\")\nexport class GetBusinessLocations implements IReturn<ResponseBase<BusinessLocationDto>>\n{\n public businessId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<GetBusinessLocations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessLocations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessLocationDto>(); }\n}\n(GetBusinessLocations as unknown)[immerable] = true;\n\nexport class GetNetworkNetworkLocations implements IReturn<ResponseBase<NetworkLocationLocationDto>>\n{\n public networkId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<GetNetworkNetworkLocations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkNetworkLocations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkLocationLocationDto>(); }\n}\n(GetNetworkNetworkLocations as unknown)[immerable] = true;\n\nexport class GetClinicianLocations implements IReturn<ResponseBase<ClinicianLocationDto>>\n{\n public clinicianId: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial<GetClinicianLocations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClinicianLocations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicianLocationDto>(); }\n}\n(GetClinicianLocations as unknown)[immerable] = true;\n\nexport class GetClinicianSpecialisms implements IReturn<ResponseBase<ClinicianSpecialismDto>>\n{\n public clinicianId: string|null;\n public specialismId: string|null;\n\n public constructor(init?: Partial<GetClinicianSpecialisms>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClinicianSpecialisms'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicianSpecialismDto>(); }\n}\n(GetClinicianSpecialisms as unknown)[immerable] = true;\n\nexport class ClinicianProofDto extends ExternalReferencesDto implements IReturn<ResponseBase<T>>\n{\n public clinicianId: string|null;\n public proofType: string|null;\n public proofTypeValue: string|null;\n public proofTypeValid: boolean|null;\n\n public constructor(init?: Partial<ClinicianProofDto>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'ClinicianProofDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ClinicianProofDto as unknown)[immerable] = true;\n\nexport class GetClinicianProofs implements IReturn<ResponseBase<ClinicianProofDto>>\n{\n public clinicianId: string|null;\n public proofType: string|null;\n\n public constructor(init?: Partial<GetClinicianProofs>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClinicianProofs'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClinicianProofDto>(); }\n}\n(GetClinicianProofs as unknown)[immerable] = true;\n\nexport class SingleLocationSearchRequest implements IReturn<ResponseBase<NetworkLocationSearch>>\n{\n public nmLocationId: string|null;\n\n public constructor(init?: Partial<SingleLocationSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SingleLocationSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NetworkLocationSearch>(); }\n}\n(SingleLocationSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/network-management/locations/distanceSearch\", \"POST\")\nexport class LocationWithDistanceSearchRequest implements IReturn<ResponseBase<NetworkLocationSearch>>\n{\n public originLatLong: string|null;\n public serviceId: string|null;\n public skip: number|null;\n public take: number|null;\n public clinicName: string|null;\n public clinicianName: string|null;\n public clinicianGender: string|null;\n public postCode: string|null;\n public labels: number[]|null;\n public clinicianAttributes: string[]|null;\n public selectedSpecialismIds: string[]|null;\n public locationRating: number|null;\n public displayClinicians: boolean|null;\n public professionalOrganisations: string[]|null;\n public costFilters: { [index:string]: string; }[]|null;\n public networks: string[]|null;\n public externalReference3: string|null;\n public excludedLocations: string[]|null;\n public isOnline: boolean|null;\n public facilityIds: string[]|null;\n public ignoreLimit: boolean|null;\n\n public constructor(init?: Partial<LocationWithDistanceSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'LocationWithDistanceSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NetworkLocationSearch>(); }\n}\n(LocationWithDistanceSearchRequest as unknown)[immerable] = true;\n\nexport class GetProviderSelectionFilterLookupsRequest implements IReturn<ResponseBase<Object>>\n{\n\n public constructor(init?: Partial<GetProviderSelectionFilterLookupsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProviderSelectionFilterLookupsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(GetProviderSelectionFilterLookupsRequest as unknown)[immerable] = true;\n\nexport class GetNetworksNotLinkedToLocation implements IReturn<ResponseBase<NetworkDto>>\n{\n public locationId: string|null;\n\n public constructor(init?: Partial<GetNetworksNotLinkedToLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworksNotLinkedToLocation'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NetworkDto>(); }\n}\n(GetNetworksNotLinkedToLocation as unknown)[immerable] = true;\n\nexport class GetMatchingProntoLocation implements IReturn<ResponseBase<LinkedLocationLookupDto>>\n{\n public postCode: string|null;\n public prontoClinicId: string|null;\n\n public constructor(init?: Partial<GetMatchingProntoLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMatchingProntoLocation'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LinkedLocationLookupDto>(); }\n}\n(GetMatchingProntoLocation as unknown)[immerable] = true;\n\nexport class GetMatchingCaseflowLocation implements IReturn<ResponseBase<LinkedLocationLookupDto>>\n{\n public postCode: string|null;\n\n public constructor(init?: Partial<GetMatchingCaseflowLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetMatchingCaseflowLocation'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<LinkedLocationLookupDto>(); }\n}\n(GetMatchingCaseflowLocation as unknown)[immerable] = true;\n\nexport class GetProntoNetworks implements IReturn<ResponseBase<ProntoNetworkDto>>\n{\n public includeServices: boolean|null;\n\n public constructor(init?: Partial<GetProntoNetworks>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProntoNetworks'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoNetworkDto>(); }\n}\n(GetProntoNetworks as unknown)[immerable] = true;\n\nexport class GetProntoServicesForNetwork implements IReturn<ResponseBase<ProntoServiceDto>>\n{\n public prontoNetworkId: string|null;\n\n public constructor(init?: Partial<GetProntoServicesForNetwork>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProntoServicesForNetwork'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoServiceDto>(); }\n}\n(GetProntoServicesForNetwork as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/pronto/clinics\", \"GET\")\nexport class GetProntoClinicsRequest implements IReturn<ResponseBase<ProntoClinicResponse>>\n{\n\n public constructor(init?: Partial<GetProntoClinicsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProntoClinicsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProntoClinicResponse>(); }\n}\n(GetProntoClinicsRequest as unknown)[immerable] = true;\n\nexport class GetAllProntoServices implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<GetAllProntoServices>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllProntoServices'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetAllProntoServices as unknown)[immerable] = true;\n\nexport class RemoveNetworkLocationDto implements IReturnVoid\n{\n public id: string|null;\n\n public constructor(init?: Partial<RemoveNetworkLocationDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveNetworkLocationDto'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() {}\n}\n(RemoveNetworkLocationDto as unknown)[immerable] = true;\n\n// @Route(\"/network-management/networks/locationAddSearch\", \"POST\")\nexport class NM_LocationSearchDto implements IReturn<ResponseBase<NM_LocationSearchResponse>>\n{\n public name: string|null;\n public postCode: string|null;\n public networkId: string|null;\n\n public constructor(init?: Partial<NM_LocationSearchDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NM_LocationSearchDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NM_LocationSearchResponse>(); }\n}\n(NM_LocationSearchDto as unknown)[immerable] = true;\n\nexport class NM_LocationMapSearch implements IReturn<ResponseBase<NM_LocationSearchResponse>>\n{\n public postCode: string|null;\n public distance: number|null;\n public isExact: boolean|null;\n public networks: string[]|null;\n public status: number[]|null;\n public businessStatus: number[]|null;\n\n public constructor(init?: Partial<NM_LocationMapSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NM_LocationMapSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NM_LocationSearchResponse>(); }\n}\n(NM_LocationMapSearch as unknown)[immerable] = true;\n\nexport class AddLocationsToNetworkDto implements IReturnVoid\n{\n public networkId: string|null;\n public locationIds: string[]|null;\n\n public constructor(init?: Partial<AddLocationsToNetworkDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddLocationsToNetworkDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AddLocationsToNetworkDto as unknown)[immerable] = true;\n\nexport class SaveNMNoteRequestDto implements IReturn<ResponseBase<T>>\n{\n public title: string|null;\n public entry: string|null;\n public businessId: string|null;\n\n public constructor(init?: Partial<SaveNMNoteRequestDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveNMNoteRequestDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveNMNoteRequestDto as unknown)[immerable] = true;\n\nexport class EditNMNoteRequestDto implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public title: string|null;\n public entry: string|null;\n\n public constructor(init?: Partial<EditNMNoteRequestDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditNMNoteRequestDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(EditNMNoteRequestDto as unknown)[immerable] = true;\n\nexport class DeleteNMNoteRequestDto implements IReturnVoid\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteNMNoteRequestDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteNMNoteRequestDto'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() {}\n}\n(DeleteNMNoteRequestDto as unknown)[immerable] = true;\n\nexport class GetInternalLocations implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<GetInternalLocations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetInternalLocations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetInternalLocations as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/{businessId}/getProntoClinicians\", \"Get\")\nexport class GetProntoCliniciansByClinic implements IReturn<ResponseBase<T>>\n{\n public businessId: string|null;\n\n public constructor(init?: Partial<GetProntoCliniciansByClinic>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProntoCliniciansByClinic'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetProntoCliniciansByClinic as unknown)[immerable] = true;\n\n// @Route(\"/network-managment/getLocationBusiness/{NetworkLocationId}\", \"Get\")\nexport class GetLocationBusinessGuidRequest implements IReturn<ResponseBase<string>>\n{\n public networkLocationId: string|null;\n\n public constructor(init?: Partial<GetLocationBusinessGuidRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetLocationBusinessGuidRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(GetLocationBusinessGuidRequest as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/getProntoCliniciansByMultiLocation\", \"POST\")\nexport class GetProntoCliniciansByMultiLocation implements IReturn<ResponseBase<T>>\n{\n public locationIds: string[]|null;\n public businessId: string|null;\n\n public constructor(init?: Partial<GetProntoCliniciansByMultiLocation>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProntoCliniciansByMultiLocation'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetProntoCliniciansByMultiLocation as unknown)[immerable] = true;\n\nexport class NMSettingsRequest implements IReturn<NMSettingsDto>\n{\n\n public constructor(init?: Partial<NMSettingsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NMSettingsRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new NMSettingsDto(); }\n}\n(NMSettingsRequest as unknown)[immerable] = true;\n\nexport class AddBusinessIndividualDto implements IReturn<ResponseBase<T>>\n{\n public businessDetails: BusinessDetailsDto|null;\n public clinicianDetails: ClinicianDto|null;\n public contactDetails: ContactDetailsDto|null;\n public locationDetails: NetworkLocationDto[]|null;\n\n public constructor(init?: Partial<AddBusinessIndividualDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddBusinessIndividualDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(AddBusinessIndividualDto as unknown)[immerable] = true;\n\nexport class EditBusinessIndividualDto implements IReturnVoid\n{\n public businessDetails: BusinessDetailsDto|null;\n public contactDetails: ContactDetailsDto|null;\n\n public constructor(init?: Partial<EditBusinessIndividualDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditBusinessIndividualDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(EditBusinessIndividualDto as unknown)[immerable] = true;\n\nexport class GetNMBusiness implements IReturn<ResponseBase<BusinessDetailsDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetNMBusiness>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNMBusiness'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<BusinessDetailsDto>(); }\n}\n(GetNMBusiness as unknown)[immerable] = true;\n\nexport class GetNMContactRequest implements IReturn<ResponseBase<ContactDetailsDto>>\n{\n public businessId: string|null;\n\n public constructor(init?: Partial<GetNMContactRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNMContactRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ContactDetailsDto>(); }\n}\n(GetNMContactRequest as unknown)[immerable] = true;\n\n// @Route(\"/network-management/businesses/{BusinessId}/cases\", \"GET\")\nexport class SearchBusinessCases implements IReturn<ResponseBase<SubWorkflow>>\n{\n public businessId: string|null;\n public locationId: string|null;\n public practitionerId: string|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<SearchBusinessCases>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SearchBusinessCases'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SubWorkflow>(); }\n}\n(SearchBusinessCases as unknown)[immerable] = true;\n\nexport class GetNetworkChargeTypes implements IReturn<ResponseBase<NM_NetworkChargeTypes>>\n{\n\n public constructor(init?: Partial<GetNetworkChargeTypes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworkChargeTypes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NM_NetworkChargeTypes>(); }\n}\n(GetNetworkChargeTypes as unknown)[immerable] = true;\n\nexport class GetBusinessAudits implements IReturn<ResponseBase<NM_Audit>>\n{\n public skip: number|null;\n public take: number|null;\n public takeAll: boolean|null;\n public sort: QueryField[]|null;\n public businessId: string|null;\n public dateRange: DateRange|null;\n public action: string|null;\n public auditTypes: string[]|null;\n\n public constructor(init?: Partial<GetBusinessAudits>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetBusinessAudits'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<NM_Audit>(); }\n}\n(GetBusinessAudits as unknown)[immerable] = true;\n\nexport class NMAuditDto implements IReturn<ResponseBase<T>>\n{\n public businessId: string|null;\n public action: string|null;\n public userId: number|null;\n public date: string|null;\n public expiryDate: string|null;\n public passed: boolean|null;\n public failed: boolean|null;\n public type: string|null;\n public auditor: string|null;\n public notes: string|null;\n\n public constructor(init?: Partial<NMAuditDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NMAuditDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(NMAuditDto as unknown)[immerable] = true;\n\nexport class GetNetworksMap implements IReturn<ResponseBase<{ [index:string]: string; }>>\n{\n\n public constructor(init?: Partial<GetNetworksMap>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetNetworksMap'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<{ [index:string]: string; }>(); }\n}\n(GetNetworksMap as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/physitrack/{CustomerId}/{UserGlobalGuid}\", \"GET\")\nexport class PhysitrackCaseflowRequest implements ICustomerId\n{\n public customerId: number|null;\n public userGlobalGuid: string|null;\n\n public constructor(init?: Partial<PhysitrackCaseflowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PhysitrackCaseflowRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PhysitrackCaseflowRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/charges/generate\", \"POST\")\nexport class BatchRaiseChargesRequest implements IReturn<ResponseBase<Object>>\n{\n public dateTimeFrom: string|null;\n public dateTimeTo: string|null;\n public dryRun: boolean|null;\n\n public constructor(init?: Partial<BatchRaiseChargesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BatchRaiseChargesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<Object>(); }\n}\n(BatchRaiseChargesRequest as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/add\", \"POST\")\nexport class AddIncomingInvoiceRequest\n{\n public locationId: number|null;\n public status: string|null;\n public date: string|null;\n public masterWorkflowId: number|null;\n public totalExcludingVAT: number|null;\n public vatAmount: number|null;\n public grandTotal: number|null;\n public productServiceId: string|null;\n public networkBusinessId: string|null;\n public networkLocationId: string|null;\n public extReference: string|null;\n public newIncomingInvoiceBillingItems: IncomingBillingItemDto[]|null;\n\n public constructor(init?: Partial<AddIncomingInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AddIncomingInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(AddIncomingInvoiceRequest as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/{Id}\", \"PUT\")\nexport class UpdateIncomingInvoiceRequest\n{\n public id: number|null;\n public locationId: number|null;\n public status: string|null;\n public date: string|null;\n public totalExcludingVAT: number|null;\n public vatAmount: number|null;\n public grandTotal: number|null;\n public productServiceId: string|null;\n public networkBusinessId: string|null;\n public networkLocationId: string|null;\n public extReference: string|null;\n public billingItems: IncomingBillingItemDto[]|null;\n\n public constructor(init?: Partial<UpdateIncomingInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateIncomingInvoiceRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() {}\n}\n(UpdateIncomingInvoiceRequest as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice\", \"POST\")\nexport class InsertIncomingInvoiceRequest\n{\n public id: number|null;\n public date: string|null;\n public totalExcludingVAT: number|null;\n public vatAmount: number|null;\n public grandTotal: number|null;\n public notes: string|null;\n public reference: string|null;\n public extReference: string|null;\n public status: string|null;\n public locationId: number|null;\n public customerId: number|null;\n public masterWorkflowId: number|null;\n public accountsExportId: number|null;\n public batchId: number|null;\n public approvalSubworkflowId: number|null;\n public prontoInvoiceId: string|null;\n\n public constructor(init?: Partial<InsertIncomingInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InsertIncomingInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(InsertIncomingInvoiceRequest as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/advancedSearch\", \"POST\")\n// @Route(\"/incomingInvoice/advancedSearch/{Mode}\", \"GET\")\nexport class IncomingInvoicesAdvancedSearchRequest implements ILocationIds\n{\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n public clinicRef: string|null;\n public reference: string|null;\n public fromDate: string|null;\n public toDate: string|null;\n public minAmount: number|null;\n public maxAmount: number|null;\n public status: string|null;\n public address: string|null;\n public customerID: number|null;\n public locationIds: number[]|null;\n public masterWorkflowId: number|null;\n public requestLocationIds: number[]|null;\n public customerFullName: string|null;\n public mode: string|null;\n public term: string|null;\n\n public constructor(init?: Partial<IncomingInvoicesAdvancedSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IncomingInvoicesAdvancedSearchRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(IncomingInvoicesAdvancedSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/incomingInvoiceDetailsSearch\", \"POST\")\nexport class IncomingInvoiceDetailsSearch implements IReturn<ResponseBase<IncomingInvoiceResponse>>\n{\n public id: number|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<IncomingInvoiceDetailsSearch>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IncomingInvoiceDetailsSearch'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<IncomingInvoiceResponse>(); }\n}\n(IncomingInvoiceDetailsSearch as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/delete/{Id}\", \"DELETE\")\nexport class DeleteIncomingInvoiceRequest\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteIncomingInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteIncomingInvoiceRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() {}\n}\n(DeleteIncomingInvoiceRequest as unknown)[immerable] = true;\n\nexport class ConvertIncomingInvoiceToBillingItemsRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<ConvertIncomingInvoiceToBillingItemsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConvertIncomingInvoiceToBillingItemsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ConvertIncomingInvoiceToBillingItemsRequest as unknown)[immerable] = true;\n\nexport class ConfirmConvertIncomingInvoiceToBillingItemsRequest implements IReturn<ResponseBase<T>>\n{\n public billingItems: CaseflowBillingItemDtoWithIncomingBillingItemId[]|null;\n public itemsToCredit: number[]|null;\n\n public constructor(init?: Partial<ConfirmConvertIncomingInvoiceToBillingItemsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ConfirmConvertIncomingInvoiceToBillingItemsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(ConfirmConvertIncomingInvoiceToBillingItemsRequest as unknown)[immerable] = true;\n\nexport class GetServicesForIncomingInvoice implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetServicesForIncomingInvoice>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetServicesForIncomingInvoice'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(GetServicesForIncomingInvoice as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/billingItemDelete\", \"POST\")\nexport class BillingItemDeleteObject\n{\n public billingItemId: number|null;\n public billingItemTotalExVAT: number|null;\n public billingItemVATRate: number|null;\n public billingItemTotalVAT: number|null;\n public billingItemTotal: number|null;\n public billingItemCategory: string|null;\n public incomingInvoiceId: number|null;\n public incomingInvoiceTotalExcludingVAT: number|null;\n public incomingInvoiceVATAmount: number|null;\n public incomingInvoiceGrandTotal: number|null;\n\n public constructor(init?: Partial<BillingItemDeleteObject>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemDeleteObject'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(BillingItemDeleteObject as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/billingItemInsert\", \"POST\")\nexport class BillingItemInsertObject\n{\n public billingItemDate: string|null;\n public billingItemDescription: string|null;\n public billingItemTotalExVAT: number|null;\n public billingItemChargeTypeId: string|null;\n public billingItemVATRate: number|null;\n public billingItemTotalVAT: number|null;\n public billingItemTotal: number|null;\n public category: string|null;\n public parentId: number|null;\n public incomingInvoiceId: number|null;\n public incomingInvoiceTotalExcludingVAT: number|null;\n public incomingInvoiceVATAmount: number|null;\n public incomingInvoiceGrandTotal: number|null;\n public incomingInvoiceLocationId: number|null;\n public incomingInvoiceStatus: string|null;\n public appointmentId: number|null;\n\n public constructor(init?: Partial<BillingItemInsertObject>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemInsertObject'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(BillingItemInsertObject as unknown)[immerable] = true;\n\n// @Route(\"/incomingInvoice/billingItemUpdate\", \"PUT\")\nexport class BillingItemUpdateObject\n{\n public billingItemId: number|null;\n public billingItemDate: string|null;\n public billingItemDescription: string|null;\n public billingItemTotalExVAT: number|null;\n public billingItemVATRate: number|null;\n public billingItemTotalVAT: number|null;\n public billingItemTotal: number|null;\n public billingItemChargeTypeId: string|null;\n public incomingInvoiceId: number|null;\n public billingItemCategory: string|null;\n public incomingInvoiceTotalExcludingVAT: number|null;\n public incomingInvoiceVATAmount: number|null;\n public incomingInvoiceGrandTotal: number|null;\n\n public constructor(init?: Partial<BillingItemUpdateObject>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BillingItemUpdateObject'; }\n public getMethod() { return 'PUT'; }\n public createResponse() {}\n}\n(BillingItemUpdateObject as unknown)[immerable] = true;\n\nexport class CreditIncomingInvoiceRequest implements IReturn<ResponseBase<IncomingBillingItemDto>>\n{\n public invoiceId: number|null;\n public billingItemIds: number[]|null;\n\n public constructor(init?: Partial<CreditIncomingInvoiceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CreditIncomingInvoiceRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<IncomingBillingItemDto>(); }\n}\n(CreditIncomingInvoiceRequest as unknown)[immerable] = true;\n\nexport class IncomingInvoiceExportPreviewRequest implements IReturn<ResponseBase<IncomingInvoiceExportItemResponse>>\n{\n public from: string|null;\n public to: string|null;\n public includeRecent: boolean|null;\n\n public constructor(init?: Partial<IncomingInvoiceExportPreviewRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IncomingInvoiceExportPreviewRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<IncomingInvoiceExportItemResponse>(); }\n}\n(IncomingInvoiceExportPreviewRequest as unknown)[immerable] = true;\n\nexport class IncomingInvoiceExportRequest implements IReturn<ResponseBase<T>>\n{\n public from: string|null;\n public to: string|null;\n public includeRecent: boolean|null;\n\n public constructor(init?: Partial<IncomingInvoiceExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IncomingInvoiceExportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(IncomingInvoiceExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/incominginvoice/export/{ExportId}\", \"GET\")\nexport class IncomingInvoiceExportDownloadRequest\n{\n public exportId: number|null;\n public exportDate: string|null;\n\n public constructor(init?: Partial<IncomingInvoiceExportDownloadRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'IncomingInvoiceExportDownloadRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(IncomingInvoiceExportDownloadRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/finances/export/charges/{Id}/{LocationId}/{Mode}\")\nexport class ChargesExportRequest implements ILocationId\n{\n public id: number|null;\n public mode: string|null;\n public locationId: number|null;\n\n public constructor(init?: Partial<ChargesExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ChargesExportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(ChargesExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/invoice/export/{invoiceId}\", \"GET\")\nexport class InvoiceExportRequest implements IReturn<Object>\n{\n public invoiceId: number|null;\n\n public constructor(init?: Partial<InvoiceExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InvoiceExportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new Object(); }\n}\n(InvoiceExportRequest as unknown)[immerable] = true;\n\nexport class ApplyManagementFeeRequest implements IReturn<ApplyManagementFeeResponse>\n{\n public groupId: number|null;\n public fee: number|null;\n public cutOffDate: string|null;\n public isPreview: boolean|null;\n\n public constructor(init?: Partial<ApplyManagementFeeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ApplyManagementFeeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ApplyManagementFeeResponse(); }\n}\n(ApplyManagementFeeRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/finances/export/payments/{Id}/{LocationId}/{Mode}\")\nexport class PaymentExportRequest implements ILocationId\n{\n public id: number|null;\n public mode: string|null;\n public locationId: number|null;\n public exportDate: string|null;\n\n public constructor(init?: Partial<PaymentExportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentExportRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() {}\n}\n(PaymentExportRequest as unknown)[immerable] = true;\n\n// @Route(\"/payments/bulk-import\", \"POST\")\nexport class PaymentImportRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<PaymentImportRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentImportRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(PaymentImportRequest as unknown)[immerable] = true;\n\n// @Route(\"/payments/import/template\")\nexport class PaymentImportTemplateRequest implements IReturn<HttpResult>\n{\n\n public constructor(init?: Partial<PaymentImportTemplateRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PaymentImportTemplateRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new HttpResult(); }\n}\n(PaymentImportTemplateRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/contracts\", \"GET\")\n// @Route(\"/groups/{GroupId}/contracts/{ContractId}\", \"GET\")\n// @Route(\"/groups/{GroupId}/contracts/{PatientAge}\", \"GET\")\nexport class GetContracts implements IReturn<ResponseBase<ContractWithActiveStatusDto>>\n{\n public groupId: number|null;\n public contractId: string|null;\n public patientAge: number|null;\n public type: string|null;\n public getAll: boolean|null;\n public dateOfRenewal: string|null;\n\n public constructor(init?: Partial<GetContracts>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetContracts'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ContractWithActiveStatusDto>(); }\n}\n(GetContracts as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/distributorcontracts\", \"GET\")\n// @Route(\"/groups/{GroupId}/distributorcontracts/{ReturnExistingContractIds}\", \"GET\")\nexport class GetDistributorContracts implements IReturn<ResponseBase<DistributorContractsResponse>>\n{\n public groupId: number|null;\n public returnExistingContractIds: boolean|null;\n\n public constructor(init?: Partial<GetDistributorContracts>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDistributorContracts'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DistributorContractsResponse>(); }\n}\n(GetDistributorContracts as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/products\", \"GET\")\n// @Route(\"/settings/caseflow/contracts/products/{Id}\", \"GET\")\nexport class GetProducts implements IReturn<ResponseBase<ProductDto>>\n{\n public id: string|null;\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<GetProducts>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProducts'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProductDto>(); }\n}\n(GetProducts as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services/{ProductId}\", \"GET\")\nexport class GetServicesForProduct implements IReturn<ResponseBase<ProductServiceDto>>\n{\n public productId: string|null;\n\n public constructor(init?: Partial<GetServicesForProduct>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetServicesForProduct'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProductServiceDto>(); }\n}\n(GetServicesForProduct as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services\", \"GET\")\n// @Route(\"/settings/caseflow/contracts/services/{Id}\", \"GET\")\nexport class GetServices implements IReturn<ResponseBase<ProductServiceDto>>\n{\n public id: string|null;\n public templatesOnly: boolean|null;\n public skip: number|null;\n public take: number|null;\n public term: string|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<GetServices>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetServices'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProductServiceDto>(); }\n}\n(GetServices as unknown)[immerable] = true;\n\nexport class ValidateProductServiceDto implements IReturn<ResponseBase<boolean>>\n{\n public product: ProductDto|null;\n\n public constructor(init?: Partial<ValidateProductServiceDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ValidateProductServiceDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(ValidateProductServiceDto as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/contractmapping\", \"POST\")\nexport class SaveContractMappingRequest implements IReturn<ResponseBase<T>>\n{\n public contractId: string|null;\n public groupId: number|null;\n public origin: ContractOrigin|null;\n\n public constructor(init?: Partial<SaveContractMappingRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveContractMappingRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveContractMappingRequest as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/removedistributor\", \"POST\")\nexport class RemoveCustomerDistributorRequest implements IReturn<ResponseBase<T>>\n{\n public groupId: number|null;\n\n public constructor(init?: Partial<RemoveCustomerDistributorRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'RemoveCustomerDistributorRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(RemoveCustomerDistributorRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services/reportTemplatesForProduct\")\nexport class ReportTemplatesForProduct implements IReturn<ResponseBase<ReportTemplateResponse>>\n{\n public productReferralFormId: string|null;\n public reportIds: string[]|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<ReportTemplatesForProduct>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ReportTemplatesForProduct'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReportTemplateResponse>(); }\n}\n(ReportTemplatesForProduct as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/contract\", \"POST\")\n// @Route(\"/groups/{GroupId}/contract/{Id}\", \"PUT\")\nexport class SaveContractRequest implements IReturn<ResponseBase<T>>\n{\n public contract: ContractDto|null;\n public groupId: number|null;\n public isActive: boolean|null;\n public origin: ContractOrigin|null;\n\n public constructor(init?: Partial<SaveContractRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveContractRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveContractRequest as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services/reports\")\nexport class GetServicesReports implements IReturn<ResponseBase<ProductServiceReport>>\n{\n\n public constructor(init?: Partial<GetServicesReports>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetServicesReports'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ProductServiceReport>(); }\n}\n(GetServicesReports as unknown)[immerable] = true;\n\nexport class CaseflowProductServiceTypeDto implements IReturn<ResponseBase<T>>\n{\n public id: string|null;\n public code: string|null;\n public description: string|null;\n\n public constructor(init?: Partial<CaseflowProductServiceTypeDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowProductServiceTypeDto'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(CaseflowProductServiceTypeDto as unknown)[immerable] = true;\n\nexport class GetCaseflowProductServiceTypes implements IReturn<ResponseBase<CaseflowProductServiceTypeDto>>\n{\n\n public constructor(init?: Partial<GetCaseflowProductServiceTypes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCaseflowProductServiceTypes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowProductServiceTypeDto>(); }\n}\n(GetCaseflowProductServiceTypes as unknown)[immerable] = true;\n\nexport class NotificationRecipientTypeDto implements IReturn<ResponseBase<NotificationRecipientTypeDto>>\n{\n public id: string|null;\n public name: string|null;\n public inUse: boolean|null;\n\n public constructor(init?: Partial<NotificationRecipientTypeDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'NotificationRecipientTypeDto'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NotificationRecipientTypeDto>(); }\n}\n(NotificationRecipientTypeDto as unknown)[immerable] = true;\n\nexport class GetProductNotificationRecipientTypes implements IReturn<ResponseBase<NotificationRecipientTypeDto>>\n{\n\n public constructor(init?: Partial<GetProductNotificationRecipientTypes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProductNotificationRecipientTypes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<NotificationRecipientTypeDto>(); }\n}\n(GetProductNotificationRecipientTypes as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/contract/activate\", \"POST\")\n// @Route(\"/groups/{GroupId}/contract/activate/{ContractId}\", \"POST\")\nexport class ActivateContractDto implements IReturn<HttpResult>\n{\n public contractId: string|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<ActivateContractDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ActivateContractDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(ActivateContractDto as unknown)[immerable] = true;\n\n// @Route(\"/groups/{GroupId}/contract/deactivate/{ContractId}\", \"POST\")\nexport class DeactivateContractDto implements IReturn<HttpResult>\n{\n public contractId: string|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<DeactivateContractDto>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeactivateContractDto'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(DeactivateContractDto as unknown)[immerable] = true;\n\nexport class SaveChargeTypeRequest extends ChargeTypeDto implements IReturn<ResponseBase<ChargeTypeDto>>\n{\n\n public constructor(init?: Partial<SaveChargeTypeRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveChargeTypeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ChargeTypeDto>(); }\n}\n(SaveChargeTypeRequest as unknown)[immerable] = true;\n\nexport class GetChargeTypeRequest implements IReturn<ResponseBase<ChargeTypeDto>>\n{\n public id: string|null;\n\n public constructor(init?: Partial<GetChargeTypeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetChargeTypeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ChargeTypeDto>(); }\n}\n(GetChargeTypeRequest as unknown)[immerable] = true;\n\nexport class DeleteChargeTypeRequest implements IReturn<ResponseBase<boolean>>\n{\n public chargeTypeId: string|null;\n\n public constructor(init?: Partial<DeleteChargeTypeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteChargeTypeRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteChargeTypeRequest as unknown)[immerable] = true;\n\nexport class SearchProductChargeTypesWithUsage implements IReturn<ResponseBase<ChargeTypeWithUsageDto>>\n{\n public workflowId: number|null;\n public skip: number|null;\n public take: number|null;\n public sort: QueryField[]|null;\n\n public constructor(init?: Partial<SearchProductChargeTypesWithUsage>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SearchProductChargeTypesWithUsage'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ChargeTypeWithUsageDto>(); }\n}\n(SearchProductChargeTypesWithUsage as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/products/charges\", \"GET\")\nexport class GetProductChargeTypes implements IReturn<ResponseBase<ChargeTypeDto>>\n{\n public workflowId: number|null;\n public networkId: string|null;\n\n public constructor(init?: Partial<GetProductChargeTypes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProductChargeTypes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ChargeTypeDto>(); }\n}\n(GetProductChargeTypes as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services/codes\", \"GET\")\nexport class GetProductServiceCodes implements IReturn<ResponseBase<string>>\n{\n\n public constructor(init?: Partial<GetProductServiceCodes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetProductServiceCodes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(GetProductServiceCodes as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services/serviceSlaTypes\", \"GET\")\nexport class GetServiceSlaTypes implements IReturn<ResponseBase<ServiceSlaType>>\n{\n\n public constructor(init?: Partial<GetServiceSlaTypes>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetServiceSlaTypes'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ServiceSlaType>(); }\n}\n(GetServiceSlaTypes as unknown)[immerable] = true;\n\n// @Route(\"/settings/caseflow/contracts/services/subworkflowServiceSla\", \"GET\")\nexport class GetSubworkflowServiceSla implements IReturn<ResponseBase<SubworkflowServiceSlaDto>>\n{\n public workflowId: number|null;\n\n public constructor(init?: Partial<GetSubworkflowServiceSla>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetSubworkflowServiceSla'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<SubworkflowServiceSlaDto>(); }\n}\n(GetSubworkflowServiceSla as unknown)[immerable] = true;\n\nexport class PutSubworkflowServiceSla implements IReturn<SubworkflowServiceSlaDto>\n{\n public sla: SubworkflowServiceSlaDto|null;\n\n public constructor(init?: Partial<PutSubworkflowServiceSla>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'PutSubworkflowServiceSla'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new SubworkflowServiceSlaDto(); }\n}\n(PutSubworkflowServiceSla as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/mergefields\")\nexport class CaseflowMergeFieldsRequest\n{\n public type: string|null;\n public webSafe: boolean|null;\n\n public constructor(init?: Partial<CaseflowMergeFieldsRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowMergeFieldsRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() {}\n}\n(CaseflowMergeFieldsRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/batchMergeData\")\nexport class CaseflowBatchMergeDataRequest implements IReturn<CaseflowBatchMergeDataResponse[]>\n{\n public ids: CaseflowBatchMergeDataRequestObject[]|null;\n\n public constructor(init?: Partial<CaseflowBatchMergeDataRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowBatchMergeDataRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new Array<CaseflowBatchMergeDataResponse>(); }\n}\n(CaseflowBatchMergeDataRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/mergedatawithcontact/{Type}/{Id}/{ContactId}/{Path*}\")\n// @Route(\"/caseflow/mergedata/{Type}/{Id}/{Path*}\")\n// @Route(\"/mergedatawithcontact/{Type}/{Id}/{ContactId}/{Path*}\")\n// @Route(\"/mergedata/{Type}/{Id}/{Path*}\")\nexport class CaseflowMergeDataRequest extends MergeDataRequest implements IReturn<CaseflowMergeData>\n{\n\n public constructor(init?: Partial<CaseflowMergeDataRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowMergeDataRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new CaseflowMergeData(); }\n}\n(CaseflowMergeDataRequest as unknown)[immerable] = true;\n\nexport class CommunicationSenderRequest implements IReturn<ResponseBase<string>>\n{\n public workflowId: number|null;\n public type: SendFromType|null;\n public recipientGroup: RecipientGroupType|null;\n\n public constructor(init?: Partial<CommunicationSenderRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CommunicationSenderRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(CommunicationSenderRequest as unknown)[immerable] = true;\n\nexport class CfBusinessRpSettingsAutomationRolesRequest implements IReturn<ResponseBase<RoleResponse>>\n{\n\n public constructor(init?: Partial<CfBusinessRpSettingsAutomationRolesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CfBusinessRpSettingsAutomationRolesRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<RoleResponse>(); }\n}\n(CfBusinessRpSettingsAutomationRolesRequest as unknown)[immerable] = true;\n\nexport class CfBusinessRpSettingsAutomationSelectedRequest implements IReturn<ResponseBase<string>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<CfBusinessRpSettingsAutomationSelectedRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CfBusinessRpSettingsAutomationSelectedRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<string>(); }\n}\n(CfBusinessRpSettingsAutomationSelectedRequest as unknown)[immerable] = true;\n\nexport class CfBusinessRpSettingsAutomationSelectedSaveRequest implements IReturn<ResponseBase<boolean>>\n{\n public id: number|null;\n public added: string[]|null;\n public deleted: string[]|null;\n\n public constructor(init?: Partial<CfBusinessRpSettingsAutomationSelectedSaveRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CfBusinessRpSettingsAutomationSelectedSaveRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(CfBusinessRpSettingsAutomationSelectedSaveRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/authcodes/{MasterWorkflowId}\", \"GET\")\n// @Route(\"/caseflow/workflow/authcodes/{MasterWorkflowId}/{SubWorkflowId}\", \"GET\")\n// @Route(\"/caseflow/workflow/authcodes/{MasterWorkflowId}/{SubWorkflowId}/{ProductServiceId}\", \"GET\")\nexport class GetAuthCodesByWorkflowRequest implements IReturn<ResponseBase<TreatmentAuthDto>>\n{\n public masterWorkflowId: number|null;\n public productServiceId: string|null;\n public subWorkflowId: number|null;\n\n public constructor(init?: Partial<GetAuthCodesByWorkflowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAuthCodesByWorkflowRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TreatmentAuthDto>(); }\n}\n(GetAuthCodesByWorkflowRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/authcodes/{MasterWorkflowId}/{SubWorkflowId}/{ProductServiceId}\", \"GET\")\nexport class GetCurrentInboundAuthorisations implements IReturn<ResponseBase<TreatmentAuthDto>>\n{\n public masterWorkflowId: number|null;\n public subWorkflowId: number|null;\n public productServiceId: string|null;\n public withCapacity: boolean|null;\n\n public constructor(init?: Partial<GetCurrentInboundAuthorisations>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCurrentInboundAuthorisations'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TreatmentAuthDto>(); }\n}\n(GetCurrentInboundAuthorisations as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/authcodes/{ProductServiceId}\", \"GET\")\nexport class GetDefaultAuthorisationCountForService implements IReturn<ResponseBase<number>>\n{\n public productServiceId: string|null;\n\n public constructor(init?: Partial<GetDefaultAuthorisationCountForService>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDefaultAuthorisationCountForService'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<number>(); }\n}\n(GetDefaultAuthorisationCountForService as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/authcodes/{Id}\", \"GET\")\nexport class GetAuthCodeRequest implements IReturn<ResponseBase<TreatmentAuthDto>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetAuthCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAuthCodeRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TreatmentAuthDto>(); }\n}\n(GetAuthCodeRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/authcodes/\", \"POST\")\nexport class InsertAuthCodeRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public expired: string|null;\n public maxTreatments: number|null;\n public expiryDate: string|null;\n public usedTreatments: number|null;\n public startDate: string|null;\n public groupId: number|null;\n public customerId: number|null;\n public serviceTypeId: number|null;\n public masterWorkflowId: number|null;\n public subWorkflowId: number|null;\n public usedByAppointments: number|null;\n public providedToSpecialist: number|null;\n public productServiceId: string|null;\n\n public constructor(init?: Partial<InsertAuthCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'InsertAuthCodeRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(InsertAuthCodeRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/authcodes/{Id}\", \"PUT\")\nexport class EditAuthCodeRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public expired: string|null;\n public maxTreatments: number|null;\n public expiryDate: string|null;\n public usedTreatments: number|null;\n public startDate: string|null;\n public groupId: number|null;\n public customerId: number|null;\n public serviceTypeId: number|null;\n public masterWorkflowId: number|null;\n public subWorkflowId: number|null;\n public usedByAppointments: number|null;\n public providedToSpecialist: number|null;\n public productServiceId: string|null;\n\n public constructor(init?: Partial<EditAuthCodeRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EditAuthCodeRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(EditAuthCodeRequest as unknown)[immerable] = true;\n\nexport class GetValidOutboundAuthorisationRequest implements IReturn<ResponseBase<TreatmentAuthWithLinkedDetailsDto>>\n{\n public workflowId: number|null;\n public networkLocationId: string|null;\n public locationId: number|null;\n public subWorkflowId: number|null;\n public withCapacity: boolean|null;\n public allowedAuthServiceCodes: string|null;\n\n public constructor(init?: Partial<GetValidOutboundAuthorisationRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetValidOutboundAuthorisationRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<TreatmentAuthWithLinkedDetailsDto>(); }\n}\n(GetValidOutboundAuthorisationRequest as unknown)[immerable] = true;\n\nexport class GetAppointmentWithChargesRequest implements IReturn<ResponseBase<CaseflowAppointmentResponse>>, ISecurityId\n{\n public customerId: number|null;\n public workflowId: number|null;\n public subworkflowId: number|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<GetAppointmentWithChargesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAppointmentWithChargesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowAppointmentResponse>(); }\n}\n(GetAppointmentWithChargesRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/{CustomerId}/{WorkflowId}\")\nexport class CustomerAppointmentByWorkflowRequest implements IReturn<ResponseBase<CaseflowAppointmentResponse>>, ISecurityId\n{\n public customerId: number|null;\n public workflowId: number|null;\n public subworkflowId: number|null;\n public productServiceId: string|null;\n public securityId: number|null;\n\n public constructor(init?: Partial<CustomerAppointmentByWorkflowRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerAppointmentByWorkflowRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowAppointmentResponse>(); }\n}\n(CustomerAppointmentByWorkflowRequest as unknown)[immerable] = true;\n\nexport class GetCustomerAppointmentRequest implements IReturn<ResponseBase<CaseflowAppointmentResponse>>\n{\n public appointmentId: number|null;\n\n public constructor(init?: Partial<GetCustomerAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetCustomerAppointmentRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowAppointmentResponse>(); }\n}\n(GetCustomerAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/{Id}\", \"PUT\")\nexport class UpdateAppointmentRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n public startDateTime: string|null;\n public practitionerId: number|null;\n public stockItemId: number|null;\n public authCodeId: number|null;\n public notes: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public locationId: number|null;\n public customerId: number|null;\n\n public constructor(init?: Partial<UpdateAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateAppointmentRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/{Id}\", \"PUT\")\nexport class UpdateCustomerAppointmentRequest extends UpdateAppointmentRequest implements IReturn<ResponseBase<T>>\n{\n public endDateTime: string|null;\n public status: number|null;\n public cancellationReason: string|null;\n public chargeTypeId: string|null;\n public completedDateTime: string|null;\n public createCharge: boolean|null;\n\n public constructor(init?: Partial<UpdateCustomerAppointmentRequest>) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'UpdateCustomerAppointmentRequest'; }\n public getMethod() { return 'PUT'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(UpdateCustomerAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/\", \"POST\")\nexport class SaveAppointmentRequest implements IReturn<ResponseBase<T>>\n{\n public startDateTime: string|null;\n public practitionerId: number|null;\n public stockItemId: number|null;\n public authCodeId: number|null;\n public notes: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public locationId: number|null;\n public customerId: number|null;\n public groupId: number|null;\n\n public constructor(init?: Partial<SaveAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SaveAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SaveAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/{Id}\", \"DELETE\")\nexport class DeleteAppointmentRequest implements IReturn<ResponseBase<T>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<DeleteAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteAppointmentRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(DeleteAppointmentRequest as unknown)[immerable] = true;\n\nexport class BulkEarliestAppointmentSearchRequest implements IReturn<ResponseBase<EarliestAppointmentSearchResponse>>\n{\n public customerGroupId: number|null;\n public locationIds: string[]|null;\n public clinicianIds: string[]|null;\n public practitionerGender: Gender|null;\n public serviceId: string|null;\n public isFollowUp: boolean|null;\n public groupByClinicians: boolean|null;\n public includeNonOnlineInternalSessions: boolean|null;\n public facilityIds: string[]|null;\n\n public constructor(init?: Partial<BulkEarliestAppointmentSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'BulkEarliestAppointmentSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<EarliestAppointmentSearchResponse>(); }\n}\n(BulkEarliestAppointmentSearchRequest as unknown)[immerable] = true;\n\nexport class EnabledClinics implements IReturn<ResponseBase<T>>\n{\n public linkedLocationIds: string[]|null;\n\n public constructor(init?: Partial<EnabledClinics>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'EnabledClinics'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(EnabledClinics as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/orderappointmentsearchrequest\", \"GET\")\nexport class HowToOrderAppointmentSearchRequest implements IReturn<boolean>\n{\n\n public constructor(init?: Partial<HowToOrderAppointmentSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'HowToOrderAppointmentSearchRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return false; }\n}\n(HowToOrderAppointmentSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/provisional/\", \"POST\")\nexport class CaseflowReserveAppointmentRequest implements IReturn<ResponseBase<ReserveAppointmentResponse>>\n{\n public appointment: ReserveAppointmentRequest|null;\n\n public constructor(init?: Partial<CaseflowReserveAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowReserveAppointmentRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ReserveAppointmentResponse>(); }\n}\n(CaseflowReserveAppointmentRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/provisional/{ProvisionalAppointmentId}\", \"DELETE\")\nexport class DeleteProvisionalAppointmentRequest implements IReturn<ResponseBase<boolean>>, IDelete\n{\n public provisionalAppointmentId: string|null;\n public appointmentType: AppointmentType|null;\n public locationId: string|null;\n public businessId: string|null;\n\n public constructor(init?: Partial<DeleteProvisionalAppointmentRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DeleteProvisionalAppointmentRequest'; }\n public getMethod() { return 'DELETE'; }\n public createResponse() { return new ResponseBase<boolean>(); }\n}\n(DeleteProvisionalAppointmentRequest as unknown)[immerable] = true;\n\nexport class AppointmentSearchRequest implements IReturn<ResponseBase<AppointmentSearchResponse>>\n{\n public serviceId: string|null;\n public clinicianIds: string[]|null;\n public locationId: string|null;\n public businessId: string|null;\n public from: string|null;\n public to: string|null;\n public networkId: string|null;\n public customerGroupId: number|null;\n public isFollowup: boolean|null;\n public sessionType: string[]|null;\n public includeNonOnlineInternalSessions: boolean|null;\n\n public constructor(init?: Partial<AppointmentSearchRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AppointmentSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<AppointmentSearchResponse>(); }\n}\n(AppointmentSearchRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/workflow/appointments/finances/{WorkflowId}\")\nexport class CaseflowAppointmentFinanceRequest implements IReturn<ResponseBase<CaseflowAppointmentFinanceResponse>>\n{\n public workflowId: number|null;\n\n public constructor(init?: Partial<CaseflowAppointmentFinanceRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'CaseflowAppointmentFinanceRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<CaseflowAppointmentFinanceResponse>(); }\n}\n(CaseflowAppointmentFinanceRequest as unknown)[immerable] = true;\n\nexport class GetClientPortalCasesRequest implements IReturn<ResponseBase<ClientPortalCaseResponse>>\n{\n\n public constructor(init?: Partial<GetClientPortalCasesRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClientPortalCasesRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClientPortalCaseResponse>(); }\n}\n(GetClientPortalCasesRequest as unknown)[immerable] = true;\n\nexport class GetClientPortalCaseRequest implements IReturn<ResponseBase<ClientPortalCaseResponse>>\n{\n public id: number|null;\n\n public constructor(init?: Partial<GetClientPortalCaseRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetClientPortalCaseRequest'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<ClientPortalCaseResponse>(); }\n}\n(GetClientPortalCaseRequest as unknown)[immerable] = true;\n\nexport class GetAllowedPlaceholderServicesForCase implements IReturn<ResponseBase<OnlineClinicService>>\n{\n public subWorkflowId: number|null;\n public productId: string|null;\n public connectServiceId: string|null;\n public categorySlug: string|null;\n\n public constructor(init?: Partial<GetAllowedPlaceholderServicesForCase>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAllowedPlaceholderServicesForCase'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<OnlineClinicService>(); }\n}\n(GetAllowedPlaceholderServicesForCase as unknown)[immerable] = true;\n\nexport class StartDigitalTriageRequest implements IReturn<ResponseBase<T>>\n{\n public serviceId: string|null;\n public productServiceId: string|null;\n public workflowId: number|null;\n public metadata: JsonField|null;\n public autoLoginToken: string|null;\n\n public constructor(init?: Partial<StartDigitalTriageRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'StartDigitalTriageRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(StartDigitalTriageRequest as unknown)[immerable] = true;\n\n// @Route(\"/digital-triage/{Provider}/redirect/{PhioPatientId}/{ActionCode}\")\nexport class DigitalTriageRedirectRequest implements IReturn<HttpResult>\n{\n public phioPatientId: string|null;\n public actionCode: string|null;\n public provider: string|null;\n public subWorkflow: SubWorkflow|null;\n\n public constructor(init?: Partial<DigitalTriageRedirectRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'DigitalTriageRedirectRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new HttpResult(); }\n}\n(DigitalTriageRedirectRequest as unknown)[immerable] = true;\n\nexport class GetDigitalTriageProviders implements IReturn<ResponseBase<DigitalTriageProvider>>\n{\n\n public constructor(init?: Partial<GetDigitalTriageProviders>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetDigitalTriageProviders'; }\n public getMethod() { return 'GET'; }\n public createResponse() { return new ResponseBase<DigitalTriageProvider>(); }\n}\n(GetDigitalTriageProviders as unknown)[immerable] = true;\n\nexport class SubscribeEventRequest implements IReturn<ResponseBase<T>>\n{\n\n public constructor(init?: Partial<SubscribeEventRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'SubscribeEventRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<T>(); }\n}\n(SubscribeEventRequest as unknown)[immerable] = true;\n\n// @Route(\"/caseflow/executeAction\", \"POST\")\nexport class ExecuteActionRequest implements IReturn<ResponseBase<ActionExecutionResponse>>\n{\n public actionId: string|null;\n public commands: string[]|null;\n public dynamicData: string|null;\n public workflowId: number|null;\n public subWorkflowId: number|null;\n public startTime: string|null;\n public endTime: string|null;\n\n public constructor(init?: Partial<ExecuteActionRequest>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'ExecuteActionRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase<ActionExecutionResponse>(); }\n}\n(ExecuteActionRequest as unknown)[immerable] = true;\n\n/** @description Sign In */\n// @Route(\"/auth\", \"GET,POST\")\n// @Route(\"/auth/{provider}\", \"GET,POST\")\n// @Api(Description=\"Sign In\")\n// @DataContract\nexport class Authenticate implements IReturn<AuthenticateResponse>, IPost\n{\n /** @description AuthProvider, e.g. credentials */\n // @DataMember(Order=1)\n public provider: string|null;\n\n // @DataMember(Order=2)\n public userName: string|null;\n\n // @DataMember(Order=3)\n public password: string|null;\n\n // @DataMember(Order=4)\n public rememberMe: boolean|null;\n\n // @DataMember(Order=5)\n public accessToken: string|null;\n\n // @DataMember(Order=6)\n public accessTokenSecret: string|null;\n\n // @DataMember(Order=7)\n public returnUrl: string|null;\n\n // @DataMember(Order=8)\n public errorView: string|null;\n\n // @DataMember(Order=9)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<Authenticate>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'Authenticate'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AuthenticateResponse(); }\n}\n(Authenticate as unknown)[immerable] = true;\n\n// @Route(\"/assignroles\", \"POST\")\n// @DataContract\nexport class AssignRoles implements IReturn<AssignRolesResponse>, IPost\n{\n // @DataMember(Order=1)\n public userName: string|null;\n\n // @DataMember(Order=2)\n public permissions: string[]|null;\n\n // @DataMember(Order=3)\n public roles: string[]|null;\n\n // @DataMember(Order=4)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<AssignRoles>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'AssignRoles'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new AssignRolesResponse(); }\n}\n(AssignRoles as unknown)[immerable] = true;\n\n// @Route(\"/unassignroles\", \"POST\")\n// @DataContract\nexport class UnAssignRoles implements IReturn<UnAssignRolesResponse>, IPost\n{\n // @DataMember(Order=1)\n public userName: string|null;\n\n // @DataMember(Order=2)\n public permissions: string[]|null;\n\n // @DataMember(Order=3)\n public roles: string[]|null;\n\n // @DataMember(Order=4)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<UnAssignRoles>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'UnAssignRoles'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new UnAssignRolesResponse(); }\n}\n(UnAssignRoles as unknown)[immerable] = true;\n\n// @Route(\"/access-token\")\n// @DataContract\nexport class GetAccessToken implements IReturn<GetAccessTokenResponse>, IPost\n{\n // @DataMember(Order=1)\n public refreshToken: string|null;\n\n // @DataMember(Order=2)\n public meta: { [index:string]: string; }|null;\n\n public constructor(init?: Partial<GetAccessToken>) { (Object as any).assign(this, init); }\n public getTypeName() { return 'GetAccessToken'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new GetAccessTokenResponse(); }\n}\n(GetAccessToken as unknown)[immerable] = true;\n\n"], "mappings": "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", "names": ["init_virtual_process_polyfill", "init_buffer", "SquareCard", "init", "__name", "DRAFTABLE", "SquareMoneyAmount", "SquareRefund", "SquareDeviceCode", "SquareDeviceOptions", "SquareTerminalCheckout", "SquareData", "SquareWebhookData", "BillingItem", "AlphaNumericSearch", "init", "__name", "DRAFTABLE", "LookUpSearch", "init", "__name", "DRAFTABLE", "DateRange", "init", "__name", "DRAFTABLE", "DateTimeSearch", "BooleanSearch", "init", "__name", "DRAFTABLE", "SearchFilterConditionItem", "SearchFilterCondition", "init", "__name", "DRAFTABLE", "QueryField", "BaseAdvancedSearchRequest", "UserRoleLocationDto", "init", "__name", "DRAFTABLE", "CommandBarRequest", "MergeFieldMappingDto", "init", "__name", "DRAFTABLE", "BatchInvoiceMergeDataRequestObject", "BatchMergeDataRequestObject", "CustomerCSVHeaderOverrides", "init", "__name", "DRAFTABLE", "MedicalContactsCSVHeaderOverrides", "DiaryListBase", "BaseAdvancedSearchRequest", "CurrencyRange", "init", "__name", "DRAFTABLE", "ChargeGroup", "InvoiceBatch", "Charge", "Invoice", "Income", "ReconciliationResponse", "TerminalPaymentDto", "init", "__name", "DRAFTABLE", "QuickPayment", "ResponseError", "ResponseStatus", "DownloadBatchRequestObject", "GroupsCSVHeaderOverrides", "init", "__name", "DRAFTABLE", "StockLocationItem", "GroupProfileDto", "NotificationSubscription", "GroupStockResponse", "LocResponse", "AddBusinessModel", "PractitionerLocationPair", "PractitionerStatusUpdate", "init", "__name", "DRAFTABLE", "PractitionerSkillBaseRequest", "BulkUpdateField", "BulkActionBaseRequest", "init", "__name", "AlertResponse", "DRAFTABLE", "AllPractitionersRequest", "BaseAdvancedSearchRequest", "init", "ResponseBase", "__name", "DRAFTABLE", "PractitionerBulkActionBaseRequest", "BulkActionBaseRequest", "RestrictedCustomerAlertDetails", "RestrictedCustomerDetails", "AppointmentResponse", "ServiceCharge", "init", "__name", "DRAFTABLE", "ReferralAppointment", "ReferralAppointmentResponse", "ReferralAuthorisation", "PractitionerDto", "BookingAuditResponse", "Dictionary", "JsonField", "ReferralReport", "init", "__name", "DRAFTABLE", "Appointment", "init", "__name", "DRAFTABLE", "ProntoBillingItem", "ProntoInvoice", "LocationInfo", "OnlineSettings", "ClinicSettings", "GroupLinker", "StockOverrideDto", "ProntoStockDto", "AvailabilitySummary", "ClinicService", "StockResponse", "LocationFacilities", "LocationResponse", "StockOverrideResponse", "PackageBundleItemWithQuantity", "AccountingStockLedgerLookup", "init", "__name", "DRAFTABLE", "StockWithLocationResponse", "StockResponse", "AllStockRequest", "BaseAdvancedSearchRequest", "ResponseBase", "StockBulkActionBaseRequest", "BulkActionBaseRequest", "SingleCacheRequest", "LabelItem", "SecurityDto", "DynamicLabelRequest", "init", "__name", "DRAFTABLE", "TaskForUser", "ScoresGoalsSettingsRequest", "BaseParamsForAllReports", "init", "__name", "DRAFTABLE", "DatePart", "init", "__name", "DRAFTABLE", "DatePartRange", "RegistrationRequest", "QuickStartWizardGroupStock", "init", "__name", "DRAFTABLE", "ClinicServiceSetupDto", "init", "__name", "DRAFTABLE", "Update", "init", "__name", "DRAFTABLE", "OnlineConsent", "init", "__name", "DRAFTABLE", "BatchEmailRequestObject", "Attachment", "AttachmentGroup", "SystemConfig", "init", "__name", "DRAFTABLE", "CasePrintingItem", "init", "__name", "DRAFTABLE", "CaseReport", "AutoSaveUpdate", "Case", "Psfs", "CaseWithCustomerPractitionerLocationDetails", "GraphicResult", "PainAnnotation", "ImageResult", "CaseSummaryResult", "ConsultationItem", "init", "__name", "DRAFTABLE", "PostCloseNotes", "PostCloseNotesWithUser", "CaseScoreGoalResponse", "NewPsfs", "TreatmentDetails", "DynamicUpdate", "ScoreEntryRequest", "ScoreRequest", "GoalEntryRequest", "GoalRequest", "DiaryListResponse", "DiaryListRequest", "DiaryListBase", "ResponseBase", "DiaryBulkActionBaseRequest", "BulkActionBaseRequest", "GuardDeleteResponse", "init", "__name", "DRAFTABLE", "CustomerAdvancedSearchRequest", "BaseAdvancedSearchRequest", "init", "ResponseBase", "__name", "DRAFTABLE", "CustomerBulkActionBaseRequest", "BulkActionBaseRequest", "EventCondition", "init", "__name", "DRAFTABLE", "FutureDateSpecifier", "init", "__name", "DRAFTABLE", "FutureTimeSpecifier", "EventAction", "init", "__name", "DRAFTABLE", "AutomationEvent", "Tag", "init", "__name", "DRAFTABLE", "AuthenticationExtensionsClientOutputs", "init", "__name", "DRAFTABLE", "AssignedCustomAttributeDto", "init", "__name", "DRAFTABLE", "TreatmentAuthResponse", "init", "__name", "DRAFTABLE", "IdDescriminatorType", "init", "__name", "DRAFTABLE", "SearchFilter", "init", "__name", "DRAFTABLE", "LedgerAccountInfo", "LedgerAccountInfoWithCategory", "LedgerAccountInfo", "init", "__name", "DRAFTABLE", "TaxRateInfo", "TaxRateInfoWithCategory", "TaxRateInfo", "init", "__name", "DRAFTABLE", "AccountingSettingInfo", "PackageBundleItemResponse", "init", "__name", "DRAFTABLE", "PackageBundleResponse", "Qualification", "init", "__name", "DRAFTABLE", "AppointmentPractitionerObject", "AppointmentLocationObject", "AppointmentRoomObject", "AppointmentSearchResult", "init", "__name", "DRAFTABLE", "CustomerCardDemographics", "init", "__name", "DRAFTABLE", "TakePaymentRequest", "OnlineGroupDto", "CardDetails", "MsContact", "StripeEntity", "StripeEntity_1", "PaymentMethodAfterpayClearpay", "PaymentMethodAlipay", "PaymentMethodAuBecsDebit", "PaymentMethodBacsDebit", "PaymentMethodBancontact", "Address", "PaymentMethodBillingDetails", "PaymentMethodCardChecks", "PaymentMethodCardNetworks", "PaymentMethodCardThreeDSecureUsage", "PaymentMethodCardWalletAmexExpressCheckout", "PaymentMethodCardWalletApplePay", "PaymentMethodCardWalletGooglePay", "PaymentMethodCardWalletMasterpass", "PaymentMethodCardWalletSamsungPay", "PaymentMethodCardWalletVisaCheckout", "PaymentMethodCardWallet", "PaymentMethodCard", "PaymentMethodCardPresent", "PaymentMethodEps", "PaymentMethodFpx", "PaymentMethodGiropay", "PaymentMethodGrabpay", "PaymentMethodIdeal", "PaymentMethodInteracPresent", "PaymentMethodOxxo", "PaymentMethodP24", "PaymentMethodSepaDebitGeneratedFrom", "PaymentMethodSepaDebit", "PaymentMethodSofort", "PaymentMethod", "OnlineClinicService", "init", "__name", "DRAFTABLE", "OnlineServiceCategory", "OnlineSection", "init", "__name", "DRAFTABLE", "BookingClassResponse", "WaitingList", "ClickInvoiceReqBase", "init", "__name", "DRAFTABLE", "ClassPackageResponse", "init", "__name", "DRAFTABLE", "CapturePointDto", "init", "__name", "DRAFTABLE", "Theme", "init", "__name", "DRAFTABLE", "ThemeResponse", "KendoGridOptionsRequest", "ProcessActionBehaviourDto", "init", "__name", "DRAFTABLE", "ProcessActionDto", "ProcessStatusDto", "ProcessStageDto", "ServiceNetworkMembershipDto", "init", "__name", "DRAFTABLE", "ServiceSlaDto", "init", "__name", "DRAFTABLE", "ServiceType", "ProductServiceDto", "ResponseBase", "SubWorkflowDto", "CapturePointPrice", "init", "__name", "DRAFTABLE", "CaseflowBillingItemDto", "SubWorkflow", "TeamUserDto", "PortalStatus", "init", "__name", "DRAFTABLE", "OperationConfig", "init", "__name", "DRAFTABLE", "EnvironmentConfig", "Environment", "init", "__name", "DRAFTABLE", "ReportTemplateItem", "NestedLookup", "ReserveAppointmentRequest", "AppointmentSearchResult", "Referral", "init", "__name", "DRAFTABLE", "ReferralRequestDTO", "ARpDownloadRequest", "init", "__name", "ExternalReferencesDto", "init", "__name", "DRAFTABLE", "NetworkChargeDto", "NetworkLocationMemberDto", "init", "__name", "DRAFTABLE", "NetworkLocationChargeDto", "ExternalReferencesDto", "ProfessionalMembershipDto", "NM_NetworkChargeTypes", "init", "__name", "DRAFTABLE", "BusinessDetailsDto", "init", "__name", "DRAFTABLE", "AddressDto", "ExternalReferencesDto", "ResponseBase", "NetworkContactDto", "ContactDetailsDto", "IncomingBillingItemDto", "CaseflowBillingItemDtoWithIncomingBillingItemId", "CaseflowBillingItemDto", "BaseContractDto", "init", "__name", "ProductNotificationConfigurationNetworkDto", "init", "__name", "DRAFTABLE", "ProductNotificationConfigurationDto", "init", "__name", "DRAFTABLE", "ProductFormConfigurationDto", "ChargeTypeStockDto", "ProductDto", "init", "ResponseBase", "__name", "DRAFTABLE", "ContractDto", "BaseContractDto", "ChargeTypeDto", "CaseflowBatchMergeDataRequestObject", "DigitalPrescriptionDMDResponse", "init", "__name", "DRAFTABLE", "TwilioRoomResponse", "WorldPayResponse", "init", "__name", "DRAFTABLE", "AutoPayResponse", "init", "__name", "DRAFTABLE", "AddressFindResponse", "AddressRetrieveResponse", "JsonPermissionResponse", "JsonPermissionGetResponse", "Permission", "JsonPermission", "UsersSearchResponse", "UserRoleLocation", "UserRoleLocationWithDetails", "UserLocationsResponse", "BusinessProfileResponse", "ExtractionResponse", "Folder", "File", "FolderResult", "CaseImagingResult", "CommandBarResponse", "BatchMergeDataResponse", "ContactMergeCheckResponse", "MedicalContactResponse", "init", "__name", "DRAFTABLE", "PaymentCard", "CustomerLiteDto", "CustomerBatchConsentResponse", "Customer", "DupEmailResponse", "CustomerSaveResponse", "TransactionItemResponse", "CaseSearchResponse", "JoinedContactResponse", "AccountStatementResponse", "GroupAccountStatementResponse", "BillingItemsResponse", "GroupedPrePaidItems", "init", "__name", "DRAFTABLE", "PrePaidItems", "InvoicePaymentsResponse", "ClickContactSearchResult", "ClickCustomerNotesCheckResponse", "Treatment", "AppointmentCaseResponse", "init", "__name", "DRAFTABLE", "CustomerServiceResponse", "PatientLogResponse", "Patientlog", "PatientInfoLogResponse", "RoomResponse", "NonWorkingDate", "init", "__name", "DRAFTABLE", "NonWorkingDateResponse", "DiarySessionResponse", "ScheduleSession", "ScheduleAppointment", "Schedule", "ScheduleBlock", "ScheduleResponse", "DayOverview", "MonthlyScheduleResponse", "OccurrenceResponse", "PaymentResponse", "Income", "PaymentsResponse", "BillingItemWithNames", "BillingItem", "BillingItemWithNamesExtended", "BillingItemWithNamesAuth", "AccountsExportChargesPreviewResponse", "AccountsExportPaymentsAlertsResponse", "AccountsExportPaymentsFilePreviewResponse", "AccountsExportPaymentsPreviewResponse", "AccountExportHistoryResponse", "GroupBillingItemsResponse", "GroupingResponse", "InvoiceGroupingResponse", "InvoiceWizardResponse", "DebtsResponse", "ExpenditureResponse", "InvoicesResponse", "InvoiceDto", "ProntoInvoiceResponse", "TransactionResponse", "InvoiceBatchResponse", "GroupsAccountSearchResponse", "init", "__name", "DRAFTABLE", "PaymentDetailsResponse", "RemainingAuths", "CancellationReasonResponse", "Group", "init", "__name", "DRAFTABLE", "PrePaid", "PrePaidLegacy", "PrePaidWithBillingDescription", "Stock", "ProntoServiceStock", "init", "__name", "DRAFTABLE", "InvoiceTemplate", "ServiceStock", "ServiceCharge", "ProntoInvoiceSearchResponse", "QuickBillResponse", "QuickbillMedipassResponse", "AppointmentPrePaidResponse", "ReferralAttachment", "AuditListDto", "MyClinicInvoiceResponse", "QuickBillCompleteResponse", "GroupServiceTypeOptions", "GroupResponse", "GroupServiceTypeOptionsResponse", "BusinessResponse", "init", "__name", "DRAFTABLE", "HealthcodeSettingsResponse", "ExportIssueBillingItem", "ExportIssueInvoice", "ExportIssueResponse", "ExportedInvoiceFileResponse", "HealthcodeImportSummaryResponse", "HealthcodeExportSummaryResponse", "MailChimpLoginResponse", "MailchimpList", "AudiencesResponse", "MailChimpDuplicatesResponse", "PostcodeLookupResponse", "CustomListItem", "CustomListItemResponse", "PractitionerGroupResponse", "GroupLocationsResponse", "AddPractitionerResponse", "PracStockLoc", "init", "__name", "DRAFTABLE", "SkillResponse", "init", "__name", "DRAFTABLE", "UpdateFieldBulkActionResponse", "AllowedReports", "BookingAuditResult", "MyBookingsResponse", "LocationDto", "AttachmentFile", "SingleBookingAuditResponse", "ReferrerDto", "init", "__name", "DRAFTABLE", "ProntoClinicalService", "ClinicService", "ProntoServiceDto", "ProntoDisciplineDto", "ProntoNetworkDto", "ServiceDto", "ClinicPractitionerResponse", "MyClinicSummaryResponse", "NestedLookupDto", "SectionDto", "ReportTemplateDto", "ReportSearchResponse", "SubmitReportResponse", "ClickLinkableAppointment", "ReferralAppointment", "BookingAuthorization", "ClientWhoReceivesBookings", "UserActivations", "init", "__name", "DRAFTABLE", "CWBSettings", "init", "__name", "DRAFTABLE", "ClientWhoBooks", "MyClinicLocationResponse", "MyClinicPractitionerResponse", "GroupListResult", "MyClinicGroupListResponse", "MyClinicWhoReceivesBookingsResponse", "ProntoNetworkSettingsResponse", "ClientWhoReceivesBookingsResponse", "ClientWhoReceivesBookings", "ReportsResponse", "StockAtLocationResponse", "StockOverride", "StockListResponse", "StockOnlineCategoryResponse", "StockWithCategoryResponse", "SupplierResponse", "AuditResponse", "ServiceTypeResponse", "ClassTypeResponse", "TagResponse", "LookupResponse", "SecurityResponse", "DynamicLabelResponse", "DiscountCodeDto", "DiscountCodeWithDiscountValueDto", "CacheResponse", "SingleCacheMapResponse", "LookupCacheResponse", "SystemDictionary", "ExtendedNotesResponse", "ExtendedNotes", "ExtendedNotesWithUserName", "NestedLookupResponse", "RegionalLookup", "SecurityStat", "TaskResponse", "UserRoleLocationWithUserName", "UserRoleLocation", "ScoresGoalsSettingsResponse", "DnsInfo", "DomainAuthenticationStatusResponse", "AuthenticateDomainResponse", "ValidationModel", "ValidateDomainResponse", "StockReorder", "StockSales", "InvoiceAnalysisReport", "IncomeAnalysisReport", "ExpenditureMonthSummary", "ExpenditureAnalysisReportDto", "AgedDebtors", "DebtorsByAccount", "DebtorsOnADate", "ChargesAnalysisReport", "PractitionerAvailabilityReport", "PractitionerAvailabilityReportResponse", "AdmissionsAnalysisReport", "AverageTreatmentsReport", "AverageTreatmentsReportResponse", "CasesDueForReviewReport", "CurrentCaseLoadReport", "CurrentCaseLoadReportResponse", "DischargeAnalysisReport", "DischargeAnalysisReportResponse", "LapsedPatientsReport", "ClientAnalysisReport", "ClientAnalysisResponse", "ClientBirthdayReport", "ClientTrackingReport", "ClientTrackingResponse", "ClickReferrerImagePath", "QuickStartWizardGroupResponse", "QuickStartWizardPractitionerResponse", "QuickStartWizardGetStocksResponse", "QuickStartWizardStock", "Template", "QuickStartWizardTemplateOptionsResponse", "ProntoInvoiceTemplate", "ProntoNetworkService", "ProntoCacheResponse", "GetClinicDetailsResponse", "ReferrerOverrideNetworkCharge", "GetClientPaymentDetailsResponse", "ProntoPaymentResponse", "ProntoRegistrationResponse", "License", "StartTrialResponse", "ConfirmClientDowngradeToProntoResponse", "PrescriptionDetails", "GetPatientPrescriptionsResponse", "PrescriptionSummary", "GetPatientPrescriptionsSummaryResponse", "CreateNonRxPrescriptionsResponse", "AddLocationResponse", "SignatureRxResponse", "CreatePrescriptionResponse", "ICD9", "JobHistoryDto", "JobDto", "FormReportResponse", "FormTemplatesResponse", "PatientReport", "ClassesResponse", "PatientClass", "Point", "GraphData", "PieChartSegment", "PieChartData", "TopClients", "DashboardResponse", "Timeline", "OnlineConsentResponse", "OnlineConsent", "ClinicalReportingFieldMap", "ClinicalReportingFieldResponse", "ClinicalMyTemplatesResponse", "Lookup", "ConfigResponse", "PractitionerResponse", "CustomLookupResponse", "ClinicalTemplatesResponse", "TemplateResponse", "ClickAccountPaymentsStatsResponse", "ClickAccountInvoiceStatsResponse", "ClickAccountUninvoicedChargesCountResponse", "CasePrintingStats", "HistoryResult", "CaseAuditDetails", "CasePrintingResponse", "CaseReportTemplate", "CaseReportSectionTemplate", "CaseReportSearchResponse", "CaseDashboardResponse", "Alert", "AutoSaveResult", "CaseDropDownResposne", "CustomerBackgroundResponse", "DiagnosisCodeTempResponse", "AssessmentResult", "CaseConsultationItem", "ScoreEntryResponse", "ScoreResponse", "ScoreSearchResponse", "GoalEntryResponse", "GoalResponse", "GoalSearchResponse", "SMSBulkActionResponse", "EmailBulkActionResponse", "ContactBulkActionResponse", "FormBulkActionResponse", "TagBulkActionResponse", "MailChimpSubscriptionBulkActionResponse", "AutomationJob", "WebinarResponse", "SimpleUser", "PublicKeyCredentialDescriptor", "Fido2ResponseBase", "init", "__name", "AssertionVerificationResult", "DRAFTABLE", "Fido2User", "AttestationVerificationSuccess", "LicenseDetailsResponse", "init", "__name", "DRAFTABLE", "LicenceModule", "ModularLicence", "CustomAttributeDto", "ConfigureCustomAttributeDto", "GetCustomAttributeListsResponse", "CustomAttributes", "TokenSearchResponse", "init", "__name", "DRAFTABLE", "TokenRegisterResponse", "AppointmentDetailsResponse", "init", "__name", "DRAFTABLE", "AppointmentCreateClickCaseResponse", "Tm3BookingAudit", "AppointmentBookingInfoResponse", "CreateTemporaryAppointmentResponse", "AppointmentPrepaidIncomeResponse", "CaseAlertFlagsResponse", "GetAllAdvancedSearchFiltersResponse", "VaultSessionResponse", "GetInitialRegistrationSessionTokenResponse", "AccountingTrackingCategory", "init", "__name", "DRAFTABLE", "AccountingSystemProviderInfo", "AllAccountingConfigAndSettings", "IncomingAccountingPaymentResponse", "init", "__name", "DRAFTABLE", "InvoiceWithAccountingSystemInfo", "Invoice", "init", "__name", "DRAFTABLE", "IncomeWithAccountingSystemInfo", "Income", "BillingItemWithAccountingSystemInfo", "BillingItem", "InvoicePayment", "IncomeWithInvoicePayment", "InvoicePaymentWithAccountingSystemInfo", "AccountingTransactionSyncJobRequest", "AccountingApiSyncHistory", "AccountingApiSyncHistorySearchResponse", "PhioConfigResponse", "SubscriptionResponse", "SubscriptionHistoryResponse", "SquareOAuthResponse", "SquareOAuthPermissionsResponse", "BasicCardDetailsResponse", "FullCardDetailsResponse", "CardDetails", "DeleteCardDetailsResponse", "PackageResponseBase", "PackageResponse", "OnlineAppointmentHistoryResult", "ClassAttendanceResponse", "WaitingListWithDetails", "WaitingList", "ClassSessionBaseResponse", "CourseAttendeeResponse", "CourseResponse", "WaitingListResponse", "OnlineLocationDto", "OnlineWorkflowCaseDetails", "BusinessCategoryResponse", "MyDiaryResponse", "AppointmentSummary", "OnlinePatientFormResponse", "OnlineCancellationOptions", "OnlineCancellationOptionsResponse", "OnlineInvoiceBillingItem", "OnlineInvoice", "OnlineInvoiceListResponse", "OnlinePaymentDetailsResponse", "PackageBundleStatusResponse", "CustomerPackagesResponse", "CustomerSubscriptionResponse", "OnlineMyPackagesResponse", "BuyPackageResponse", "ToursModel", "User", "OnlineReportTemplateItem", "CaseflowTemplate", "OnlineCaseflowFormResponse", "OnlineRole", "OnlineCaseflowContact", "MedicalContactResponse", "OnlineCategoryResponse", "OnlinePractitionerDto", "OnlineInitialResponse", "AvailabilitySession", "LocationFacility", "OnlineNetworkLocation", "AppointmentDto", "GetUserByEmailOrMobileResponse", "init", "__name", "DRAFTABLE", "OnlineRegisterValidationResponse", "OnlineWaitingListReservationConfirmResponse", "ChasedPaymentDTO", "GetSquareCustomerDetailsResponse", "MsBillingItemResponse", "init", "__name", "DRAFTABLE", "MsInvoiceResponse", "Tm3License", "GetClientPricingResponse", "ConfirmClientSignUpResponse", "SaveClientPaymentDetailsResponse", "ClickPPCDetailsResponse", "ClickUpgradeDetailsResponse", "ClickTrialResponse", "ClickDowngradeResponse", "ClientDowngradeToSingleLicenseResponse", "ClientNoLongerWantsToCancelResponse", "ConfirmClientCancellationResponse", "MSCurrencyResponse", "MSSubscriptionResponse", "CreditAutoTopUpAmountResponse", "SMSOrderHistoryResponse", "BundleOption", "SMSBundleOptionsResponse", "ExtraSystemCreditResponse", "SystemCreditBundleOptionsResponse", "CreditOrderHistoryResponse", "PayPerClickDetail", "PayPerClickStats", "PayPerClickStatsResponse", "UnrestrictedUserResponse", "DiaryAnalysisReport", "DiaryAnalysisResponse", "NonReturningReportResponse", "TrafficReportResponse", "init", "__name", "DRAFTABLE", "AutopayReportResult", "GetSettingsResponse", "OnlineSettings", "CanDeleteImageResponse", "BusinessSettingsIdResponse", "ClassSearchResult", "ClassTypeBase", "ClassType", "ClassSearchResponse", "SimilarClass", "ConvertSessionToTokenResponse", "ZoomSaveStateResponse", "ZoomUser", "init", "__name", "DRAFTABLE", "ZoomReauthResponse", "ZoomSaveStateResponse", "WaitingListByIdResponse", "WaitingList", "WaitingListStateHistory", "WaitingListStateHistoryResponse", "AllowedIP", "AllowedIPResponse", "EmbeddableDashboardToken", "SystemLog", "SystemLogWithCustomerName", "SquareGetDeviceCodeResponse", "TerminalPairingResponse", "Terminal", "SquareTerminalPaymentResponse", "ChangeCardResponse", "ClearAcceptConfigResponse", "ApiCredentials", "ClickBillResponse", "ClickDownloadInvoiceResponse", "ClickCreatePaymentResponse", "ClickCommunicationResponse", "CreateClassResponse", "GetDesktopClassResponse", "AddingAttendeeToSessionErrors", "init", "__name", "DRAFTABLE", "AddStudentToClassSessionResponse", "EditClassResponse", "PayForClassResponse", "ClassCommunicationResponse", "PrePaidItemsForClassResponse", "AddStudentToCourseResponse", "EditCourseResponse", "CreateCourseResponse", "RemoveStudentFromClassResponse", "GraphDataSet", "DashboardGraphData", "SearchReferralPortalDashboardStatisticsResponse", "FormUrlResponse", "NM_LocationFacility", "BookingOffers", "BookingOfferWithDetails", "UkGeoCodeResponse", "CoordinatesResponse", "RetrieveNearestResponse", "RoleResponse", "WorkflowContactDto", "BusinessContactsResponse", "CustomerGroupResponse", "GroupResponse", "CustomerFlagResponse", "ProcessDto", "ReferralDto", "CaseflowTemplateDto", "ResponseBase", "ReferralDataResponse", "WorkingHoursDto", "NonWorkingDateDto", "WorkflowReportWithTemplateDataDto", "init", "__name", "DRAFTABLE", "ProductTemplateSummaryDto", "GetCreateReportTemplateAndDraftDataResponse", "ReportSummaryDto", "WorkflowReportDto", "WorkflowAuditDto", "WorkflowAuditWithLinkedDetailsDto", "WorkflowCase", "Case", "WorkflowCaseResponse", "CustomerDto", "PatientMatchResultDto", "AutoMatchResult", "InvoiceWithAccountInfo", "Invoice", "InvoiceWithTemplate", "ReferralPricingDto", "ReferralPricingWithDetailsDto", "WorkflowSummary", "WorkflowSearchFieldsResponse", "ScoresGoalsSettings", "ScoresGoalsSettingsWithFieldName", "WorkflowReportWithScoresGoalsSettingsDto", "SubWorkflowWithLinkedDataDto", "SubWorkflowDto", "WorkflowWithDataSearchResponse", "SubWorkflowWitLinkedDetailsDto", "WorkflowServiceDto", "WorkflowServiceWithLinkedDetailsDto", "CannedSearchResponse", "WorkflowCannedSearch", "ProductService", "TeamResponse", "ResponseBase", "EnvironmentStatus", "SemanticVersion", "EnvironmentVersion", "RegisterEnvironmentResponse", "GetServiceLocationsResponse", "ReferralPortalUserResponse", "DocumentListingFile", "File", "ReferralCommsTemplateResponse", "ReferralPortalAuthorisationDto", "ReferralActionDto", "init", "__name", "DRAFTABLE", "ReferralPortalReferralResponse", "ReferralPortalReferralAppointmentResponse", "ReferralPortalReferralReportResponse", "ReferralPortalReportBodyResponse", "GroupDto", "ReferralPortalReferralSearchResponse", "ReferralPortalAuditResponse", "ContractWithActiveStatusDto", "ContractDto", "ReferralPortalProductResponse", "ReferralPortalAppointmentSearchResult", "AppointmentSearchResult", "ReferralPortalLocationResponse", "ReferralPortalReserveAppointmentResponse", "ReferralPortalTemporaryFileResponse", "ReferralPortalTemporaryFileListingResponse", "ReferralPortalTemporaryFileDeleteResponse", "ReferralPortalCompaniesResponse", "ReferralPortalSettingsResponse", "ReferralPortalFieldsResponse", "CaseflowGroup", "Group", "ReferralPortalStatusResponse", "UserClientDto", "ReferralPortalUser", "WorkflowReferral", "ReferralPortalSharedFilesDownloadResponse", "NoBookingConfirmationSummary", "BusinessSearchResultDto", "ComplianceDto", "ExternalReferencesDto", "ResponseBase", "NM_Audit", "ComplianceWithAuditDto", "ComplianceListWithAuditDto", "BusinessLocationDto", "BasicNetworkLocationSearchResult", "init", "__name", "DRAFTABLE", "ExternalReferences", "NM_Clinician", "NM_Specialism", "SpecialismWithClinician", "ClinicianWithLocationAndSpecialism", "NetworkLocationSearch", "LinkedLocationLookupDto", "ProntoClinicResponse", "NM_LocationSearchResponse", "ExternalReferencesDto", "InternalLocationDto", "ProntoClinicianDto", "IncomingInvoiceResponse", "IncomingInvoiceExportItemResponse", "IncomingInvoiceExportResponse", "BillingItemWithStock", "BillingItem", "PaymentImportValidationError", "PaymentImportResponse", "DistributorContractsResponse", "ReportTemplateResponse", "ProductServiceReport", "init", "__name", "DRAFTABLE", "ChargeTypeWithUsageDto", "ChargeTypeDto", "ServiceSlaType", "CaseflowBatchMergeDataResponse", "MergeDataResponseAcceptsDynamicButReallyWantsMergeDataWhateverOfSpecificTypeSoBeCareful", "TreatmentAuthDto", "init", "__name", "DRAFTABLE", "TreatmentAuthWithLinkedDetailsDto", "CaseflowAppointmentResponse", "BaseCaseflowAppointmentSearchResponse", "EarliestAppointmentSearchResponse", "CaseflowAppointmentFinanceResponse", "ClientPortalCaseResponse", "DigitalTriageBookingResult", "DigitalTriageProvider", "UpdatedEntities", "ActionExecutionErrorMessage", "ActionExecutionResponse", "StripeResponse", "CustomerResponse", "ClinicalScore", "init", "__name", "DRAFTABLE", "Goal", "init", "__name", "DRAFTABLE", "Fido2", "init", "__name", "DRAFTABLE", "AudienceMember", "init", "__name", "DRAFTABLE", "DataPoint", "ClassSessionWithDetails", "ReportingField", "ClinicalScoreEntry", "GoalEntry", "HttpResult", "init", "__name", "DRAFTABLE", "AuthenticateResponse", "ToursResponse", "OnlineCustomerDto", "ResponseBase", "CurrentUser", "FilesListingResponse", "CaseImagingResponse", "SmsResponse", "SmsConsentReponse", "ContactRecentResponse", "PatientNextAppoimentResponse", "PatientRecentResponse", "RecentDocumentResponse", "DiaryDefaultDataForUserResponse", "DiaryStatsResponse", "CalculateWorkingTimesResponse", "Account", "AccountExportResponse", "TransferResponse", "ResponseEnhancerBase", "DeleteResponse", "CopyResponse", "CreateFolderResponse", "RenameResponse", "MoveResponse", "UploadResult", "UploadTempResult", "AttachmentSummaryResponse", "RecentFileResponse", "FileResponse", "FolderTree", "GroupFurtherDetailsResponse", "GroupRecentResponse", "LocationStockResponse", "PhysiotecPractitioner", "ProntoMyClinicRequest", "Room", "SecurityStatsResponse", "StockReorderResponse", "StockSalesResponse", "InvoiceAnalysisResponse", "IncomeAnalysisResponse", "ExpenditureMonthSummaryResponse", "ExpenditureAnalysisResponse", "AgedDebtorsResponse", "DebtorsByAccountResponse", "DebtorsOnADateResponse", "ChargeAnalysisResponse", "AdmissionsAnalysisReportResponse", "CasesDueForReviewReportResponse", "LapsedPatientsReportResponse", "ClientBirthdayResponse", "Location", "DiagnosisCode", "ClinicalSettingsFlagsResponse", "ClientSmsSettings", "ClientCodeRequest", "CaseAuditResponse", "CaseDetailsDto", "ClinicalCacheResponse", "ConsultationItemRequest", "ConsultationAssessmentItemRequest", "ClinicalDiagram", "TreatmentResult", "Treatment", "AssertionOptions", "Fido2ResponseBase", "CaseAlertSearchResponse", "AlertDialogResponse", "Alert", "OAuthCallbackResponse", "OnlineSettingsResponse", "AppointmentSearchResponse", "ReserveAppointmentResponse", "OnlineAutoLoginVerifyCodeResponse", "StripeOAuthResponse", "ZoomLinkToTM3Response", "CaseflowMedicalContactResponse", "MedicalContactResponse", "WorkflowDto", "EnvironmentResponse", "EnvironmentVersionResponse", "ReferralPortalMigrationResponse", "CreateNewReferralResponse", "ListingFolderTree", "NMSettingsDto", "ApplyManagementFeeResponse", "SubworkflowServiceSlaDto", "CaseflowMergeData", "MergeDataResponseAcceptsDynamicButReallyWantsMergeDataWhateverOfSpecificTypeSoBeCareful", "AssignRolesResponse", "UnAssignRolesResponse", "GetAccessTokenResponse", "DigitalPrescriptionDMDRequest", "GetTwilioRoom", "init", "ResponseBase", "__name", "DRAFTABLE", "TwilioReminderRequest", "GetTwilioOnlineRoom", "SquareWebhookRequest", "HttpResult", "WorldPayNotificationRequest", "WorldPayFlushDnsCacheRequest", "WorldPayChargeTokenRequest", "WorldPayRefundRequest", "WorldPayHostedPaymentPageRequest", "WorldPayWaitingTokenRequest", "StripeOnboardRequest", "AutoPayRequest", "CancelChaseRequest", "ResendChaseEmailRequest", "GetDiscountCodesRequest", "GetApplicableDiscountCodes", "GetDiscountCodeBillingItem", "DiaryEventTypesDto", "ClickReferrerLogoRequest", "AddressSearchRequest", "AddressRetrieveRequest", "ReminderDataRequest", "LastReminderRequest", "ReminderSendRequest", "FirstUserVerifyRequest", "EmailVerificationRequest", "AutoLoginRequest", "CurrentUser", "AutoRedirectRequest", "JsonPermissionRuleRequest", "JsonPermissionRequest", "JsonPermissionGetRequest", "JsonPermissionRenameRequest", "JsonPermissionUpdateRequest", "JsonPermissionCloneRequest", "JsonPermissionAddRequest", "JsonPermissionDeleteRequest", "AllUsersLocationRequest", "BaseAdvancedSearchRequest", "AllWorkflowUsersLocationRequest", "UserEmailRequest", "UserEmailReset", "UserResetRequest", "UsersWithRolesRequest", "UsersExportRequest", "UserRequest", "UserLocationsRequest", "UserPermissionRequest", "UserSaveRequest", "BusinessProfileRequest", "BusinessProfilePostRequest", "BusinessProfilePutRequest", "BusinessProfileGetRequest", "ExtractionStatusRequest", "ExtractionRequest", "DownloadUtilRequest", "CancellationFileExtract", "FilesListingResponse", "CaseImagingRequest", "CaseImagingResponse", "CommandBarPatientRequest", "CommandBarRequest", "CommandBarGroupRequest", "CommandBarContactRequest", "CommandBarInvoiceRequest", "CommandBarPaymentRequest", "MergeFieldsRequest", "GetCustomMergeFields", "GetCustomMergeField", "SaveCustomMergeField", "GetCustomFieldMappings", "BatchInvoiceMergeDataRequest", "BatchMergeDataRequest", "MergeDataRequest", "ContactMergeCheckRequest", "SmsSendRequest", "SmsResponse", "SmsConsentCheck", "SmsConsentReponse", "MedicalContactRequest", "LinkedPatientsRequest", "ContactRecentRequest", "ContactRecentResponse", "ContactsLinkedPatients", "MedicalContactSaveRequest", "CustomerRequest", "CustomerLiteRequest", "CustomerSaveConsentRequest", "CustomerBatchConsentRequest", "CustomerEmailDuplicateCheck", "CustomerSaveRequest", "ChangeCustomerSmsEnabled", "Customer", "PatientNextAppoimentRequest", "PatientNextAppoimentResponse", "PatientRecentRequest", "PatientRecentResponse", "RecentDocumentRequest", "RecentDocumentResponse", "CustomerMedicalContactsRequest", "JoinedContactsRequest", "DefaultMedicalContactRequest", "ContactableMedicalContactRequest", "CustomerPatientContactsRequest", "PatientContactRelationshipRequest", "DefaultPatientContactRequest", "DeleteCustomerRequest", "LinkCustomerRequest", "MakeCustomerRealRequest", "RemoveMedicalContactRequest", "RemovePatientContactRequest", "CustomerContactAddRequest", "CustomerPatientContactAddRequest", "AccountStatementRequest", "GroupAccountStatementRequest", "BillingItemsRequest", "GroupBillingItemsRequest", "PrePaidStockRequest", "PrePaidItemRequest", "PrePaidItemAddRequest", "PrePaidItemDeleteRequest", "PrePaidItemsExpiryDateRequest", "InvoicePaymentsRequest", "ContactQuickSearchRequest", "ClickContactQuickSearchRequest", "ContactPatientQuickSearchRequest", "CustomerAdvancedSearchExportCSVRequest", "PatientCountRequest", "MedicalContactCountRequest", "ProvisionalPatientsRequest", "PotentialProvisionalMatchesRequest", "GetPotentialMatchesRequest", "MedicalContactsAdvancedSearchRequest", "MedicalContactsAdvancedSearchExportCSVRequest", "TreatmentAuthCountRequest", "TreatmentAuthRequest", "ClickCustomerNotesCheckRequest", "ClickCustomerCreateCaseRequest", "AppointmentCaseRequest", "AppointmentAuthCode", "TreatmentAuthByIdRequest", "TreatmentAuthIdRequest", "TreatmentAuthDeleteRequest", "TreatmentAuthSave", "SarStatusRequest", "SarDeleteRequest", "SarDownloadRequest", "CustomerServiceRequest", "CustomerServiceUpdate", "PatientLogRequest", "PatientLogDeleteRequest", "PatientInfoLogRequest", "PatientLogSave", "DiaryRequest", "DiaryDefaultDataForUserResponse", "DiaryListExportCSVRequest", "DiaryListBase", "DiaryAppointmentStatsRequest", "DiaryStatsResponse", "DiaryHolidayRequest", "DiaryAllHolidaysRequest", "DiaryAddHolidayRequest", "DiaryRemoveHolidayRequest", "DiarySessionRequest", "ScheduleRequest", "MonthlyScheduleRequest", "OccurrenceRequest", "SessionMoveRequest", "SessionUpdateRequest", "SessionDeleteRequest", "SessionCreateRequest", "CalculateWorkingTimesRequest", "CalculateWorkingTimesResponse", "PatientAccountRequest", "Account", "AccountPaymentsRequest", "AccountBilledItemsRequest", "AccountsExportChargesPreviewRequest", "AccountsExportPaymentsPreviewRequest", "AccountsExportChargesRequest", "AccountExportResponse", "AccountsExportPaymentsRequest", "AccountsChargesExportRequest", "AccountsPaymentsExportRequest", "AccountExportHistoryRequest", "BillingItemRequest", "BillingItemSaveRequest", "ChargeCountRequest", "ChargesSearchRequest", "InvoiceAllGroupingRequest", "ChargeIdsSearchRequest", "InvoiceGroupingRequest", "InvoiceWizardRequest", "DebtAdvancedSearchRequest", "ExpenditureRequest", "ExpenditureCountRequest", "ExpenditureAdvancedSearchRequest", "ExpenditureSaveRequest", "ExpenditureDeleteRequest", "InvoicesRequest", "InvoiceSaveRequest", "ProntoInvoiceAcknowledgeRequest", "ProntoInvoiceResubmitRequest", "ProntoQueriedInvoiceEditRequest", "InvoiceCountRequest", "InvoiceDeleteRequest", "InvoiceChangeRequest", "InvoicePaymentRequest", "InvoiceUsePaymentRequest", "InvoiceUseBillingItemRequest", "InvoiceRemoveReconciliationRequest", "InvoiceRemoveChargeRequest", "InvoiceDeletePaymentRequest", "InvoiceRemoveAllReconciliationsRequest", "CreateChargesRequest", "CreateChargeRequest", "InvoicesAdvancedSearchRequest", "InvoiceBatchRequest", "GroupsAccountSearchRequest", "GroupsBillingItemSearchRequest", "BillingItemDeleteRequest", "TransactionRequest", "InvoiceMedipassRequest", "TransferRequest", "TransferResponse", "ClickInvoiceUseChargesRequest", "GetPaymentRequest", "PaymentCountRequest", "CreatePaymentRequest", "Income", "SavePaymentRequest", "DeletePaymentRequest", "VoidPaymentRequest", "PaymentRefundRequest", "PaymentReconciliationRequest", "PaymentAdvancedSearchRequest", "CancellationReasonRequest", "QuickBillRequest", "ResponseEnhancerBase", "QuickBillMedipassRequest", "QuickBillPrePaidRequest", "QuickPayRequest", "DeleteRequest", "DeleteResponse", "CopyRequest", "CopyResponse", "CreateFolderRequest", "CreateFolderResponse", "RenameRequest", "RenameResponse", "MoveRequest", "MoveResponse", "MoveFolderRequest", "UploadFile", "UploadResult", "UploadTempFile", "UploadTempResult", "PublishTempFolder", "AttachmentSummaryRequest", "AttachmentSummaryResponse", "AttachmentUploadRequest", "FileByPathRequest", "RecentFileRequest", "RecentFileResponse", "UrlLessFileListing", "UrlLessFileRequest", "FileResponse", "FileListing", "GetTempFileListing", "RemoveTempFile", "FileRequest", "DownloadFileRequest", "ViewFileRequest", "DownloadBatchFileRequest", "DownloadEmailRequest", "DownloadAttachmentRequest", "SaveDocument", "ManagementReportDocumentFileListing", "FolderTree", "DocumentFileListing", "TemplatesRequest", "ChartsRequest", "DownloadExtractionRequest", "UpdateDocumentListingRequest", "GroupLocationProviderNumberSaveRequest", "GroupRequest", "GroupCountRequest", "GroupFurtherDetailsRequest", "GroupFurtherDetailsResponse", "GroupRecentRequest", "GroupRecentResponse", "RecentGroupDocumentRequest", "GroupsAdvancedSearchRequest", "GroupsAdvancedSearchExportCSVRequest", "GroupContactsSearchRequest", "GroupContactQuickSearchRequest", "LinkedPatientRequest", "SaveGroupRequest", "GroupLocationSearchRequest", "LocationStockResponse", "LocationNewStockRequest", "UpdateDnaCancelStockRequest", "Group", "LocationNewLocationRequest", "AddAllStockToGroupRequest", "ChangeStockOnGroupRequest", "AddLocationToGroupRequest", "RemoveLocationfromGroupRequest", "ChangeStockfromGroupRequest", "GroupSettingsRequest", "GroupSettingsForCustomerRequest", "GroupNotificationsRequest", "GroupProfileRequest", "GroupServiceTypeOptionsRequest", "GroupServiceTypeOptions", "SaveAllGroupRequest", "GroupCurrentRequest", "ClickGroupServicesRequest", "GetBusinessesRequest", "AddBusinessRequest", "GetAllIscRequest", "SearchIscRequest", "GetProviderCodesRequest", "GetBusinessDetailsRequest", "UpdateHealthcodeLoginDetailRequest", "UpdateBusinessDetailRequest", "UpdateBusinessProviderCodeRequest", "UpdateStockItemDetailRequest", "ValidateExportRequest", "ExportHealthcodeInvoicesRequest", "GetInvoiceExportStatusRequest", "GetUploadedFilesListRequest", "DownloadHealthcodeFileRequest", "DeleteHealthcodeFileRequest", "UploadRemittanceRequest", "GetInvoiceImportStatusRequest", "GetRunningBackgroundJobRequest", "GetInvoiceImportSummaryRequest", "GetInvoiceValidationSummaryRequest", "GetInvoiceExportSummaryRequest", "BusinessStocksRequest", "MailChimpLoginRequest", "PushAllEmailsRequest", "GetMailchimpListRequest", "GetMailchimpSyncProgressRequest", "GetMailChimpSyncSummary", "GetMailChimpSyncDuplicates", "GetMailchimpPushAllEmailsLog", "GetDuplicateRequest", "DuplicatesRequest", "GetSubscriptionListsRequest", "SubscribeCustomerToListRequest", "UnSubscribeCustomerFromListRequest", "UnSubscribeCustomerFromAllListsRequest", "SubscribeCustomersToListRequest", "SyncStatisticRequest", "UnsyncAudienceRequest", "PostcodeLookupRequest", "PhysiotecPractitionerGetRequest", "PhysiotecPractitionerPostRequest", "PhysiotecPractitionerCredentialsRequest", "PhysiotecPractitioner", "PractitionerDisciplineRequest", "DisciplineSave", "PractitionerGroupRequest", "ProviderSave", "PractitionersGroupAllRequest", "ProviderRemove", "PractitionerRequest", "PractitionerByOnlineIdRequest", "PractitionersAtAllLocationsRequest", "AddPractitionerRequest", "AllPractitionersAllRequest", "PractitionerCountRequest", "UserIdByPractitionerOnlineIdRequest", "UpdatePractitionersPatientsByLocation", "LinkPractitionerToZoomUser", "PractitionersAtLocationRequest", "PractitionerPatientsCount", "RecentPractitionerDocumentRequest", "PractitionerSaveRequest", "PractitionersLocationsSave", "PractitionersLocationsCodeSave", "PractitionersLocationsDelete", "PracLocationsWithStock", "NewLocationPractitionersRequest", "PractitionerDiaryOrderRequest", "GetDiaryPractitioners", "GetPractitionersWithLocationsRequest", "PractitionerStatusUpdateRequest", "SavePractitionerSkillRequest", "PractitionerSkillBaseRequest", "DeletePractitionerSkillRequest", "CreateSkillRequest", "DeleteSkillRequest", "SkillRequest", "PractitionerSkillsRequest", "PractitionerUpdateFieldBulkActionRequest", "PractitionerBulkActionBaseRequest", "MyBookingsRequest", "BookingAuditsExportRequest", "SingleBookingAuditRequest", "LinkableAppointmentsRequest", "LinkAppointmentsToReferralRequest", "MyClinicSummaryRequest", "ReferralAppointmentRequest", "ReferralAppointment", "ReportSearchRequest", "EditReportRequest", "DraftReportRequest", "ReferralReport", "SubmitReportRequest", "ProntoInvoiceSearchRequest", "ProntoInvoiceRequest", "ProntoInvoice", "ProntoInvoiceSubmitRequest", "ProntoInvoiceEditRequest", "ReferralAttachmentPathRequest", "GetClickAppointmentsLinkableToProntoReferralRequest", "RejectNewReferralRequest", "AcceptNewReferralRequest", "MyClinicWhoReceivesBookingsRequest", "ProntoNetworkSettingsRequest", "MyClinicSettingsRequest", "ClinicSettings", "MyClinicAuthorizationsRequest", "ClinicActivatedOrDeactivatedEmailRequest", "LinkUpGroupRequest", "RemoveServiceRequest", "ProntoStockRequest", "ProntoStockDto", "SaveServiceRequest", "ClinicService", "ProntoPortalCardExpiryRequest", "ProntoPortalCardDetailsSaveRequest", "ClinicReportsRequestById", "ClinicReportsSaveRequest", "ClinicReportsDeleteRequest", "ReportsRequest", "GetBespokeReports", "ReportsFavouriteRequest", "ReportsDeleteFavouriteRequest", "RoomsRequest", "EditRoomsRequest", "CreateRoomsRequest", "Room", "RoomSearchRequest", "RoomsListRequest", "RoomCountRequest", "DiaryRoomsRequest", "ReportingFieldLookupDto", "GetReportingFieldLookup", "StockUpdateFieldBulkActionRequest", "StockBulkActionBaseRequest", "StockRequest", "StockAtLocationRequest", "StockPricingGroupsRequest", "StockSave", "AllStockAllRequest", "StockExistingTemplateSetsRequest", "StockOnlineCategoriesRequest", "StockWithCategoryRequest", "StockExportRequest", "AllStockRequest", "SupplierRequest", "SupplierSaveRequest", "SuppliersAdvancedSearchRequest", "AuditSearchRequest", "AuditAddRequest", "CacheRequest", "LookupCacheRequest", "SingleCacheRequest", "DictionaryRequestAll", "DynamicLabelUpdate", "ExtendedNotesRequest", "ExtendedNotesDeleteRequest", "GroupExtendedNotesRequest", "MedicalContactExtendedNotesRequest", "PractitionerExtendedNotesRequest", "ExtendedNotesSave", "LockClearRequest", "LockObtainRequest", "LockReleaseRequest", "LockReleaseByUserRequest", "LockSameRequest", "LookupRequest", "AllLookupRequest", "NestedLookupsFromTemplateRequest", "RegionalLookupRequest", "AddLookupItem", "DeleteLookupItem", "LookupItem", "PatternRequest", "SecurityStatsRequest", "SecurityStatsResponse", "SystemMessageRequest", "AcknowledgeSystemMessageRequest", "TaskRequest", "init", "ResponseBase", "__name", "DRAFTABLE", "AllCurrentTasksRequest", "TasksAvailableUsers", "UserTaskRequest", "TaskSaveRequest", "TaskForUser", "UserTasksSearchRequest", "TrialCancellationRequest", "CorrectSubdomainRequest", "ScoresGoalsSettingsSearchRequest", "ScoresGoalsSettingsGetRequest", "ScoresGoalsSettingsPostRequest", "ScoresGoalsSettingsRequest", "ScoresGoalsSettingsPutRequest", "ScoresGoalsSettingsDeleteRequest", "AdjustNumberOfDiariesRequest", "GetDomainsRequest", "GetDomainsAuthenticationStatusRequest", "AuthenticateDomainRequest", "ValidateDomainRequest", "DMARCWarningRequest", "DMARCAcknowledgementRequest", "StockReorderRequest", "BaseParamsForAllReports", "StockReorderResponse", "StockSalesRequest", "StockSalesResponse", "InvoiceAnalysisRequest", "InvoiceAnalysisResponse", "IncomeAnalysisRequest", "IncomeAnalysisResponse", "ExpenditureMonthSummaryRequest", "ExpenditureMonthSummaryResponse", "ExpenditureAnalysisRequest", "ExpenditureAnalysisResponse", "AgedDebtorsReportRequest", "AgedDebtorsResponse", "DebtorsByAccountRequest", "DebtorsByAccountResponse", "DebtorsOnADateReportRequest", "DebtorsOnADateResponse", "ChargesAnalysisReportRequest", "ChargeAnalysisResponse", "PractitionerAvailabilityReportRequest", "AdmissionsAnalysisReportRequest", "AdmissionsAnalysisReportResponse", "AverageTreatmentsReportRequest", "CasesDueForReviewReportRequest", "CasesDueForReviewReportResponse", "CurrentCaseLoadReportRequest", "DischargeAnalysisReportRequest", "LapsedPatientsReportRequest", "LapsedPatientsReportResponse", "ClientAnalysisReportRequest", "ClientBirthdayReportRequest", "ClientBirthdayResponse", "ClientTrackingReportRequest", "ClickReferrerImagePathRequest", "ClickRegistrationRequest", "RegistrationRequest", "TM3SubdomainExistsRequest", "QuickStartWizardSendEnquiryEmailRequest", "QuickStartWizardToggleGroupStocksRequest", "QuickStartWizardGetGroupRequest", "QuickStartWizardGetGroupsRequest", "QuickStartWizardSaveGroupRequest", "QuickStartWizardPractitionersRequest", "QuickStartWizardGetPractitionerRequest", "QuickStartWizardSavePractitionerRequest", "QuickStartWizardUpdateDisciplineRequest", "QuickStartWizardGetDisciplineRequest", "QuickStartWizardGetStocksRequest", "QuickStartWizardSaveStocksRequest", "QuickStartWizardStockReminderRequest", "QuickStartWizardSelectTemplatePackRequest", "QuickStartWizardTemplateOptionsRequest", "ProntoCacheRequest", "GetClinicDetailsRequest", "SubmitClinicDetailsRequest", "GetNetworksRequest", "GetDisciplinesRequest", "GetReferrersRequest", "GetReferralCharge", "GetReferrersLocations", "GetReferralChargeOverrides", "GetProntoPaymentDetailsRequest", "ProntoRegistrationRequest", "StartTrialRequest", "StartSubscriptionRequest", "ClientDowngradeToProntoOnlyRequest", "GetPatientPrescriptionsRequest", "GetPatientPrescriptionsSummaryRequest", "CreateNonRxPrescriptionsRequest", "AddLocationRequest", "AllLocationRequest", "LocationSearchRequest", "BaseAdvancedSearchRequest", "LocationsSearchIdsRequest", "LocationsExportRequest", "LocationGetRequest", "GetFacilitiesListRequest", "LocationPostRequest", "Location", "ExercisePrescriberRequest", "PhysiotecRequest", "PhysiotoolsRequest", "PhysitrackRequest", "SalasoRequest", "SignatureRxRequest", "CreatePrescriptionRequest", "ICD9SearchRequest", "HangfireRequest", "FormByGuidRequest", "FormReportsRequest", "DeleteFormTemplateRequest", "ArchiveFormTemplateRequest", "FormTemplatesRequest", "FormTemplateEditorRequest", "SubmitFormRequest", "CompleteFormRequest", "PinUnlockRequest", "SendFormRequest", "CancelFormRequest", "UpdateCommunicationTemplate", "UpdateFormStatusRequest", "DeclineFormRequest", "ClassesRequest", "FilterClassesRequest", "PatientClassesRequest", "PatientPrePaidClassRequest", "DashboardRequest", "DashboardListRequest", "TimelineRequest", "AnonymiseCustomerRequest", "CustomerUpcomingAppointmentRequest", "CustomerAppointmentRequest", "DownloadPatientRequest", "PatientCaseSearchRequest", "OnlineConsentRequest", "OnlineConsentChangeRequest", "OnlineConsent", "CustomBatchEmailRequest", "PaymentReceiptRequest", "QuickBillEmailRequest", "CustomEmailRequest", "ClearCachedLicenseRequest", "ClearCachedPermissionsRequest", "ClearCachedConfigRequest", "ClearCachedWebTemplatesRequest", "ClearCachedWebReportsRequest", "ClearCachedConfig", "ClearCachedExtractionKeyRequest", "HangfireJobTrigger", "ClearCachedJobsRequest", "ClinicalLabelRequest", "ClinicalReportingFieldRequest", "ClinicalSettingsDiagnosisRequest", "ClinicalSettingsDiagnosisRequestPost", "DiagnosisCode", "ClinicalSettingsDeleteDiagnosisRequest", "ClinicalMyTemplatesRequest", "ClinicalMyTemplatesDeleteRequest", "ClinicalMyTemplatesDefaultRequest", "ClinicalMyTemplatesCloneRequest", "UsedFlagsRequest", "ClinicalSettingsFlagsRequest", "ClinicalSettingsFlagsResponse", "ClinicalSettingsFlagsRequestPost", "ClinicalSettingsAcknowledgeFlagsRequest", "ClinicalSettingsIntegrationsRequest", "ClinicalSettingsIntegrationsRequestPost", "ClinicalSettingsPhysitrackIntegrationRequest", "ClinicalSettingsFixConvertedImagesRequest", "ClinicalMyTemplatesHideRequest", "CustomLookupSearchRequest", "CustomLookupRequest", "CustomLookupsPutRequest", "AlternateLookupRequest", "KeepAliveRequest", "SsoRequest", "ClinicalTemplateRequest", "TemplatesByTypeRequest", "TemplateRequest", "SaveTemplateRequest", "ClickAccountPaymentsStatsRequest", "ClickAccountInvoiceStatsRequest", "ClickAccountUninvoicedChargesCountRequest", "ClickAccountBusinessUninvoicedChargesCountRequest", "ClickAccountBusinessInvoiceStatsRequest", "CasePrintingRequest", "CaseReportSearchRequest", "CaseReportRequest", "CaseReport", "CaseReportSubmitRequest", "CaseReportCloneRequest", "CaseReportAcknowledgeRequest", "CaseReportAttachmentRequest", "CaseDashboardSearchRequest", "CaseSearchRequest", "CaseAudit", "CaseAuditResponse", "CaseAutoSaveRequest", "CaseCloseRequest", "CaseDeleteRequest", "CaseUnlinkAndDelete", "CaseUpdateRequest", "CaseDischargeRequest", "CaseHighlightRequest", "CaseGetRequest", "CaseDetailsDto", "CaseNewRequest", "CaseUpgradeRequest", "CaseHistoryRequest", "CaseDropdownRequest", "CaseReviewDateRequest", "PostCloseNotesRequest", "CaseCustomerRequest", "AppointmentCheck", "CaseBackgroundRequest", "CustomerBackgroundRequest", "BackgroundHighlightRequest", "ClinicalCacheRequest", "ClinicalCacheResponse", "ClinicalLogRequest", "ConsultationItemHighlightRequest", "DiagnosisCodeRequest", "DiagnosisCodeLookupRequest", "DiagramRequest", "ClinicalDiagram", "DiagramLockRequest", "CreatePsfsRequest", "UpdatePsfsRequest", "GetTreatmentRequest", "TreatmentAutoSaveRequest", "TreatmentResult", "TreatmentSaveRequest", "TreatmentHighlightRequest", "ScoreEntryPostRequest", "ScoreEntryRequest", "ScoreEntryPutRequest", "ScoreEntryDeleteRequest", "AvailableScoresRequest", "ScoreSearchRequest", "ScoreOrderRequest", "ScoreGetRequest", "ScoreResponse", "ScorePostRequest", "ScoreRequest", "ScorePutRequest", "ScoreDeleteRequest", "GoalEntryPostRequest", "GoalEntryRequest", "GoalEntryPutRequest", "GoalEntryDeleteRequest", "AvailableGoalsRequest", "GoalSearchRequest", "GoalOrderRequest", "GoalsGetRequest", "GoalResponse", "GoalPostRequest", "GoalRequest", "GoalPutRequest", "GoalDeleteRequest", "BulkUpdateFieldRequest", "DiarySMSBulkActionRequest", "DiaryBulkActionBaseRequest", "DiaryEmailBulkActionRequest", "DiaryContactBulkActionRequest", "DiaryFormBulkActionRequest", "DiaryTagBulkActionRequest", "CustomerSMSBulkActionRequest", "CustomerBulkActionBaseRequest", "CustomerEmailBulkActionRequest", "CustomerFormBulkActionRequest", "CustomerTagBulkActionRequest", "CustomerContactBulkActionRequest", "MailChimpSubscriptionBulkActionRequest", "GetAllAutomationEvents", "GetAutomationEvent", "SaveAutomationEvent", "AutomationEvent", "GetAllAutomationJobs", "ToggleAutomationJobStatus", "CloneAutomationRequest", "ArchiveAutomationRequest", "GetAllTags", "GetTag", "SaveTag", "Tag", "WebinarRequest", "TrainingRequest", "GetCurrentUser", "CurrentUser", "ChangeLoggedInLocation", "AllUsersRequest", "UserRolesRequest", "VerifyCode", "ResetPassword", "ChangePassword", "ChangePasswordRequest", "ChangePINRequest", "ChangeSignatureRequest", "LogoutSoonRequest", "LogoutNowRequest", "GetAssertionOptions", "AssertionOptions", "MakeAssertionRequest", "MakeCredentialsOptionsRequest", "HttpResult", "RegisterCredentialWithServerRequest", "LicenseRequest", "ModularFeaturesRequest", "LicenceModulesRequest", "TwoFactorVerify", "TwoFactorRequestCode", "TwoFactorUpdateSecret", "InboundWebHookRequest", "GetCustomAttributes", "GetCustomAttributeLists", "GetAssignedAttributes", "UpdateCustomAttributeRequest", "CreateNewCustomAttributeRequest", "DeleteCustomAttributeRequest", "TokenSearchRequest", "TokenRegisterRequest", "TokenDeleteRequest", "ServiceTypeRequest", "ServiceTypeSearch", "ServiceTypeSave", "AppointmentGetRequest", "AppointmentPutRequest", "AppointmentDeleteRequest", "AppointmentBookRequest", "AppointmentCreateClickCaseRequest", "LinkAppointmentToCaseRequest", "CreateCaseFromAppointmentPostRequest", "CustomerOtherAppointmentsRequest", "AppointmentAlertsRequest", "AppointmentBookingInfoRequest", "CreateTemporaryAppointmentRequest", "UpdateTemporaryAppointmentRequest", "AppointmentConfirmTemporaryBookingRequest", "AppointmentPrepaidIncomeRequest", "GetDefaultStockRequest", "AlertCompleteRequest", "AlertAcknowledgeRequest", "AlertSearchRequest", "CaseAlertFlagsRequest", "CaseAlertSearchRequest", "CaseAlertSearchResponse", "AlertGetRequest", "AlertDialogResponse", "AlertsGetRequest", "AlertsMultipleGetRequest", "AlertPostRequest", "ClinicalQuickPickAlertPostRequest", "GetAllAdvancedSearchFiltersRequest", "AdvancedSearchSaveFilterRequest", "SearchFilter", "AdvancedSearchDeleteFilterRequest", "GetInitialRegistrationSessionTokenRequest", "DeactivateAccountingSystemRequest", "GetLedgerAccountsRequest", "GetTaxRatesRequest", "GetTrackingCategories", "UpdateLocationTrackingCategory", "GetAccountingSettingsInfoRequest", "SaveAccountingSettingsInfoRequest", "SyncPaymentUpdateFromXeroManuallyRequest", "AccountingApiSyncHistorySearchRequest", "GetAccountingApiSyncHistoryRequest", "CacheApiDeckRequest", "OAuthInitiateRequest", "OAuthCallbackRequest", "OAuthCallbackResponse", "SysConfigRequest", "ConfigUpdate", "BatchConfigUpdates", "TestError", "LocaleRequest", "LoginModeRequest", "FeatureRequest", "GetPhioConfigRequest", "GetMediPassApiKeyRequest", "HeartbeatRequest", "GetSubscriptionRequest", "GetSubscriptionHistoryRequest", "SubscriptionSearchRequest", "CreateSubscriptionRequest", "UpdateSubscriptionRequest", "SquareApplePayVerificationFileRequest", "SquareRedirectRequest", "SquareSaveStateRequest", "SquareIntegrationRequest", "SquareDeAuthRequest", "SquareGetOAuthPermissionsRequest", "BasicCardDetailsRequest", "FullCardDetailsRequest", "DeleteCardDetailsRequest", "GetPackageRequest", "PackagesSearchRequest", "SavePackageRequest", "MyDiaryRequest", "OnlineGetExistingWaitingListsForCustomer", "SaveWaitingListRequest", "WaitingList", "OnlineSaveWaitingListRequest", "DeleteWaitingListRequest", "OnlineDeleteWaitingListRequest", "AppointmentConfirmRequest", "OnlinePatientFormsRequest", "OnlineStripeDeleteCardRequest", "OnlineGetCardDetailsRequest", "OnlineCancelBookingRequest", "OnlineCancellationOptionsRequest", "OnlineInvoiceListRequest", "OnlineInvoiceDownloadRequest", "OnlineGetPaymentDetailsRequest", "OnlineCustomerPackageRequest", "BuyPackageRequest", "OnlinePasswordChangeRequest", "OnlineUpdateSubscriptionRequest", "GetAppointmentLocationsRequest", "GetAuthAppointmentLocationsRequest", "OnlineCaseflowFormRequest", "OnlineCaseflowContactRoleRequest", "OnlineCaseflowContactSearch", "ValidateDiscountCode", "OnlineSettingsRequest", "OnlineSettingsResponse", "OnlineCurrentUserRequest", "OnlineInitialRequest", "ConnectValidateBusinessRouteRequest", "ConnectValidateAccessCodeRequest", "GetOnlineSessions", "GetLocationOverridesRequest", "GetCaseflowNetworkLocationsRequest", "GetOnlineDistinctAppointmentRequest", "AppointmentSearchResponse", "BookTempAppointmentRequest", "ReserveAppointmentResponse", "OnlineDeleteReservationRequest", "GetUserByEmailOrMobile", "OnlineResetRequest", "OnlineChangePasswordByReset", "OnlineLogoutRequest", "OnlineVerifyRequest", "OnlineRegisterRequest", "OnlineCustomerDto", "OnlineRegisterValidationRequest", "OnlineFileByKeyRequest", "OnlineFileByPathRequest", "OnlineContentByKeyRequest", "AppointmentPaymentDetailsRequest", "ResponseEnhancerBase", "OnlinePatientFormRequest", "OnlinePatientFormSubmit", "GetOnlineWaitingListReservedRequest", "ActionWaitingListReserveRequest", "OnlineSiteRequest", "GetChasedPaymentRequest", "GetSquareCustomerDetailsRequest", "PayChasedPaymentRequest", "IsTwoFactorAuthRequired", "OnlineAutoLoginCodeRequest", "OnlineAutoLoginVerifyCodeRequest", "OnlineAutoLoginVerifyCodeResponse", "OnlineRequestAccessCodeRequest", "ConnectFeatureFlagsRequest", "UsedLicenseRequest", "MsInvoicesRequest", "MsInvoiceRequest", "CurrentLicenceQuoteRequest", "MsClientResponse", "MsClientRequest", "GetClientPricing", "ConfirmClientSignUp", "ConfirmClickPlusSignUp", "GetClientPaymentDetailsRequest", "SaveClientPaymentDetailsRequest", "ClickPPCDetailsRequest", "ClickUpgradeDetailsRequest", "ClickTrialRequest", "ClickDowngradeRequest", "ClientDowngradeToSingleLicenseRequest", "ClientNoLongerWantsToCancelRequest", "ConfirmClientCancellation", "HasInvalidCardRequest", "MSCurrencyRequest", "MSSubscriptionRequest", "CreditAutoTopUpAmountRequest", "SMSOrderHistoryRequest", "SMSBundlePurchaseRequest", "SMSBundleOptionsRequest", "SystemCreditBundleOptionsRequest", "CreditOrderHistoryRequest", "CreditBundlePurchaseRequest", "PayMSInvoiceRequest", "DownloadMSInvoiceRequest", "PayPerClickDetailRequest", "PayPerClickSMSDetailRequest", "PayPerClickStatsRequest", "UnrestrictedUserRequest", "AddUnrestrictedUserRequest", "DeleteUnrestrictedUserRequest", "DiaryAnalysisReportRequest", "NonReturningReportRequest", "TrafficReportRequest", "AutopayReportRequest", "StripeRedirectRequest", "StripeStateRequest", "StripeIntegrationRequest", "StripeOAuthResponse", "GetSettingsRequest", "PutSettingsRequest", "OnlineSettings", "GetCategoryAndServicesRequest", "PutServiceRequest", "OnlineClinicService", "PutCategoryRequest", "OnlineServiceCategory", "GetOnlineSectionRequest", "PutSectionRequest", "OnlineSection", "DeleteSectionRequest", "PutCategoriesRequest", "DeleteCategoryRequest", "PutSectionsRequest", "CanDeleteImageRequest", "GetBusinessSettingsIdRequest", "RemoveBusinessSettingsIdRequest", "SearchAllClassesRequest", "FindSimilarTimedClassesRequest", "BookTempClassRequest", "BookingClassResponse", "DeleteTempClassBookingRequest", "GetAllCoursesFromTypeRequest", "BookClassRequest", "TokenRequest", "PublicAuthorisationRedirectRequest", "PublicLinkToZoomRequest", "ZoomLinkToTM3Response", "SaveZoomStateRequest", "CustomRedirectRequest", "AuthorisationRedirectRequest", "GetZoomUsersRequest", "IsZoomIntegrationConfiguredRequest", "UnlinkTm3FromZoomRequest", "AreZoomTokensValid", "WaitingListsRequest", "WaitingListById", "WaitingListStateHistoryRequest", "AllowedIPRequest", "AddAllowedIPRequest", "DeleteAllowedIPRequest", "SentryApmRequest", "EmbeddableDashboardTokenRequest", "ReferralPortalCurrentUserRequest", "GetAllSystemLogRequest", "SquareGetDeviceCodeRequest", "ClearAcceptTerminalSaveRequest", "SquareUnpairTerminalRequest", "TerminalPairCheckRequest", "TerminalListRequest", "TerminalFailPairingRequest", "SquareTerminalPaymentRequest", "AddTerminalPaymentToInvoiceRequest", "GetPaymentFromTerminalDto", "CreatePaymentIntent", "OnlineStripeChangeCardRequest", "CreateChasePaymentIntent", "CreateWaitingListPaymentIntent", "SquareStartPaymentCaptureRequest", "TakePaymentRequest", "OnlineSquareChangeCardRequest", "ClearAcceptSaveCardDetailsRequest", "ClearAcceptRegisterInterest", "ClearAcceptConfigRequest", "ClearAcceptStartPaymentCaptureRequest", "UpdateAddressOnPaymentRequest", "StartTerminalPaymentRequest", "CancelTerminalCheckoutRequest", "TerminalPaymentStatusRequest", "StartVirtualTerminalPaymentCaptureRequest", "CompleteVirtualTerminalPaymentCaptureRequest", "CreateApiCredentials", "RevokeApiCredentials", "GetApiCredentials", "ClickBillRequest", "BlankInvoiceRequest", "ClickInvoiceUsePaymentRequest", "ClickInvoiceReqBase", "ClickEmailInvoiceRequest", "ClickDownloadInvoiceRequest", "ClickInvoiceTransferRequest", "ClickCreatePaymentForInvoiceRequest", "Income", "ClickCreatePaymentRequest", "ClickSendEmailReceiptRequest", "ClickDownloadReceiptRequest", "ClickCommunicationRequest", "GetClassSessionRequest", "CreateClassRequest", "GetDesktopClassRequest", "AddStudentToClassSessionRequest", "EditClassRequest", "CancelClassSessionRequest", "GetStudentOtherSessionsRequest", "PayForClassRequest", "UseCreditRequest", "RemoveStudentFromSessionRequest", "GetClassSessionRequests", "GetWeeklyClassSessionRequests", "MarkClassSessionAttendance", "ClassCommunicationRequest", "CustomerPrepaidRequestForClass", "DeletePayAsYouGoClassRequest", "ClassSessionMarkAllAttendanceRequest", "SaveClassNotesToAttendee", "GetClassTypeRequest", "ClassTypesListRequest", "ClassTypeSaveRequest", "GetCourse", "AddStudentToCourseRequest", "EditCourseRequest", "CreateCourseRequest", "SwapStudentCourseSessionRequest", "CancelCourseSessionRequest", "AddCourseSessionRequest", "GetPotentialSwapDates", "PayForCourseRequest", "RemoveStudentFromCourseRequest", "MarkCourseSessionAttendance", "MarkCourseSessionDna", "CourseSessionMarkAllAttendanceRequest", "DeleteCourseRequest", "SearchReferralPortalDashboardStatisticsRequest", "init", "ResponseBase", "__name", "DRAFTABLE", "FormUrlRequest", "NetworkLocationFacilitySearchRequest", "NetworkLocationFacilityByLocationRequest", "NetworkLocationLocationFacilityPutRequest", "NetworkLocationFacilitySaveRequest", "NetworkLocationFacilityPutRequest", "NetworkLocationFacilityGetRequest", "NetworkLocationFacilityDeleteRequest", "GetWorkflowBookingOffers", "ClearCachedSubWorkflowSearchRequest", "SyncAllSubworkflows", "UkGeoCodeLookupRequest", "LatLongLookupRequest", "StoreFinderFindNearestRequest", "GetWorkflowBespokeReports", "FolderTree", "CapturePointRequest", "UpdateCapturePointRequest", "CapturePointDto", "ReferralPortalRolesRequest", "AutomatedUserRolesRequest", "ReferralPortalCaseflowContactSearch", "CaseflowContactSearch", "WorkflowContactCreateDto", "CaseflowMedicalContactResponse", "CaseflowRemoveWorkflowContact", "HttpResult", "CaseflowAddContact", "SaveContactRoleRequest", "DeleteContactRoleRequest", "RolesRequest", "GetBusinessContacts", "GetCustomerGroupTheme", "SaveCustomerGroupTheme", "ThemeResponse", "CustomerGroupHasLogo", "GetCustomerGroupLogo", "SaveCustomerGroupLogo", "GetValidDistributorGroupsRequest", "GetChildrenForDistributor", "KendoGridOptionsRequest", "CustomerRecipientsDto", "GetCustomerRecipients", "GetValidDistributorChildrenRequest", "AddChildToDistributorRequest", "GetCustomerFlagRequest", "UpdateCustomerFlagRequest", "GroupLookupsRequest", "DeleteGroupLookupItem", "AddGroupLookupItem", "ProcessGetRequest", "CloneProcessRequest", "ProcessSearchRequest", "ProcessGetAllRequest", "ProcessSaveRequest", "GetReferralRequest", "GetReferralDataRequest", "ReferralDataSaveRequest", "RpWorkingHoursGetRequest", "RpGetNonWorkingDatesRequest", "ReferralPortalGetReportDataRequest", "GetProductTemplateSummariesRequest", "GetCreateReportTemplateAndDraftDataRequest", "SaveReportRequest", "GetReportSummariesRequest", "GetReportDataRequest", "UpdateReportDataRequest", "GetUnapprovedReportRequest", "PublishReportRequest", "RevokeReportRequest", "GetReportingFieldsRequest", "UpdateReportActiveRequest", "UpdateSubWorkflowRequest", "SubWorkflowDto", "WorkflowAuditRequest", "UpdateAuditRequest", "CreateWorkflowAuditRequest", "AllWorkflowCasesRequest", "GetWorkflowCaseRequest", "WorkflowCustomerCountRequest", "WorkingHoursGetRequest", "GetNonWorkingDatesRequest", "PatientAutoMatchRequest", "GetAllWorkflowBillingItems", "CreateTemporaryInvoiceRequest", "CreateWorkflowChargeRequest", "EditWorkflowPricingRequest", "GetEditablePricingRequest", "EditWorkflowChargeRequest", "SaveWorkflowChargeRequest", "CaseflowChargesSearchRequest", "CaseflowChargesSearchidsRequest", "GetAllWorkflowInvoices", "WorkflowSearch", "WorkflowLinkExistingPatient", "WorkflowSearchFieldsRequest", "WorkflowWithDataSearchRequest", "WorkflowRequest", "UpdateWorkflowRequest", "CreateWorkflowRequest", "WorkflowDto", "SaveWorkflowSearchRequest", "GetAllCannedSearches", "GetSearchData", "RemoveCannedSearch", "ModifySearchRequest", "BulkAssignWorkflows", "WorkflowCaseSearchRequest", "WorkflowNextActionStartDateRequest", "GetWorkflowAppointmentStockItem", "AllTeamRequest", "TeamGetRequest", "TeamSaveRequest", "PortalStatusDto", "GetPortalStatuses", "GetPortalStatusList", "SavePortalStatusList", "PortalStatus", "GetAllEnvironmentDetails", "EnvironmentResponse", "EnvironmentStatusRequest", "GetEnvironmentVersionRequest", "EnvironmentVersionResponse", "ThisEnvironmentHangfireRequest", "SaveEnvironmentDetails", "Environment", "RegisterThisAsPrimaryConfigEnvironmentRequest", "DeployVersionToEnvironmentRequest", "RegisterThisAsSecondaryConfigEnvironmentRequest", "AddNewEnvironmentRequest", "ResetEnvironmentRequest", "ReInitRepoRequest", "CreateBranchRequest", "PurgeEnvironmentRequest", "UpdateEnvironmentsOrderRequest", "EnableHotfixRequest", "SyncEnvironmentsRequest", "DeployToSecondaryEnvironmentRequest", "OtherEnvironmentHangfireRequest", "RegisterRemoteEnvironmentRequest", "UpdateSecondaryEnvironmentsOrderRequest", "SecondaryEnvironmentCallHomeRequest", "LegacyReferralPortalCaseflowTemplateRequest", "ReferralPortalCaseflowTemplateRequestWithReferralId", "CaseflowTemplateRequest", "TemplateRemoveRequest", "ReferralPortalDeleteAppointmentRequest", "PractitionersFromLocationRequest", "GetServiceLocationsRequest", "LegacyReferralPortalReserveAppointmentRequest", "ConfirmBookingRequest", "AuthorisationApprovedRequest", "AuthorisationDeclinedRequest", "AuthorisationQueriedRequest", "ReferralPortalAuthorisationActionRequest", "CaseflowReferralPortalUserSearchRequest", "ReferralPortalUpdateUserRequest", "CaseflowReferralPortalUserUpdateRequest", "ReferralPortalCreateUserRequest", "CaseflowReferralPortalUserCreateRequest", "CaseflowReferralPortalActivationRequest", "CaseflowReferralPortalTwoFactorUpdateRequest", "CaseflowReferralPortalListPublishedFilesRequest", "CaseflowReferralPortalPublishFileRequest", "ManagementReportRequest", "ReferralPortalDownloadFileRequest", "ManagementReportLogRequest", "GetAllProductsRequest", "ReferralPortalUploadTempFile", "UploadTempResult", "GetReferralPortalTempFileListing", "RemoveReferralPortalTempFile", "DeleteResponse", "ReferralCommsTemplateRequest", "ReferralCommsPasswordResetTemplateRequest", "GetAllReferralPortalAdvancedSearchFiltersRequest", "GetConfigValue", "ReferralPortalMigrationRequest", "ReferralPortalMigrationResponse", "ReferralPortalReferralRequest", "ReferralPortalReferralAppointmentRequest", "ReferralPortalReferralReportRequest", "ReferralPortalReportBodyRequest", "ReferralPortalReferralSearchRequest", "ReferralPortalAuditRequest", "ReferralPortalContractRequest", "ReferralPortalProductRequest", "ReferralPortalLocationRequest", "ReferralPortalAppointmentRequest", "ReferralPortalReserveAppointmentRequest", "ReferralPortalDeleteProvisionalAppointmentRequest", "ReferralPortalTemporaryFileRequest", "ReferralPortalTemporaryFileListingRequest", "ReferralPortalTemporaryFileDeleteRequest", "ReferralPortalAddAppointmentToReferralRequest", "ReferralPortalCancelAppointment", "ReferralPortalCreateReferralRequest", "ReferralPortalContactRolesRequest", "ReferralPortalContactSearchRequest", "ReferralPortalUserRequest", "ReferralPortalUserSearchRequest", "ReferralPortalUserAvatarRequest", "ReferralPortalEditProfileUserRequest", "ReferralPortalUpdateCurrentUserRequest", "ReferralPortalCompaniesRequest", "ReferralPortalLookupCacheRequest", "LookupCacheRequest", "ReferralPortalSettingsRequest", "ReferralPortalSwapCompanyRequest", "ReferralPortalSelfResetPasswordRequest", "ReferralPortalResetPasswordRequest", "ReferralPortalToggleTwoFactorAuthentication", "ReferralPortalTemplateForServiceRequest", "ReferralPortalFieldsForServiceRequest", "ReferralPortalAllowedServicesRequest", "ReferralPortalReferralChangeOwnerRequest", "RegisterGroupOnReferralPortalRequest", "DisableClientRequest", "ReferralPortalStatusRequest", "LegacyReferralPortalUserRequest", "ReferralPortalUserCreationRequest", "LegacyReferralPortalUserUpdateRequest", "ReferralPortalPasswordResetRequest", "ReferralPortalTwoFactorResetRequest", "ReferralPortalEmailCheckRequest", "ReferralPortalToggleTwoFactorRequest", "ReferralPortalResetLockedAccount", "ReferralPortalReactivateGroup", "CreateNewReferralRequest", "CreateNewReferralResponse", "GetLookupRequest", "UpdateReportMessageRequest", "GetChildCustomerRequest", "ReferralPortalSharedFilesRequest", "ReferralPortalFilesByWorkflowIdRequest", "ListingFolderTree", "ReferralPortalSharedFilesDownloadRequest", "ARpDownloadRequest", "ReferralPortalDownloadManagementReportRequest", "ReferralPortalViewFileRequest", "ReferralPortalViewManagementReportRequest", "SyncReferralsToRpRequest", "ProntoCaseflowWebHookRequest", "ReferrerSingleBookingAuditRequest", "PhioWebhookRequest", "NoBookingConfirmRequest", "NetworkMgmtDocumentRequest", "CaseflowUploadFile", "UploadResult", "NetworkDto", "ExternalReferencesDto", "GetNetwork", "NetworkSearch", "GetNetworkMergeFields", "GetNetworkLocationCharges", "ClinicianLocationDto", "ClinicianSpecialismDto", "ClinicianDto", "ClinicianSearch", "BusinessSearch", "NetworkLocationDto", "LocationSearch", "GetNetworkLocation", "DeleteLocationDto", "DeleteClinicianDto", "NetworkContractDto", "BusinessSettingsDto", "CreateBusinessDto", "GetBusiness", "GetBusinessSettings", "GetNetworkLocationForAppointmentRequest", "GetNetworkLocationsLinkedToInternalLocationRequest", "NetworkLocationLocationDto", "GetNetworkLocations", "ComplianceListDto", "GetCompliance", "GetComplianceWithAudit", "SaveNetworkLocationDto", "GetNetworkContracts", "GetNetworkContacts", "GetClinician", "UpdateClinicianLocationsDto", "ClinicianNoteDto", "GetClinicianNotes", "DeleteClinicianNoteRequest", "BusinessNoteDto", "GetBusinessNotes", "GetBusinessAlerts", "GetAddresses", "NetworkServiceDto", "ClinicalDisciplineDto", "GetDisciplines", "GetNetworkServices", "SpecialismDto", "GetSpecialisms", "SpecialismDeleteRequest", "ImageFileDto", "GetNetworkBusinessImages", "GetBusinessLocations", "GetNetworkNetworkLocations", "GetClinicianLocations", "GetClinicianSpecialisms", "ClinicianProofDto", "GetClinicianProofs", "SingleLocationSearchRequest", "LocationWithDistanceSearchRequest", "GetProviderSelectionFilterLookupsRequest", "GetNetworksNotLinkedToLocation", "GetMatchingProntoLocation", "GetMatchingCaseflowLocation", "GetProntoNetworks", "GetProntoServicesForNetwork", "GetProntoClinicsRequest", "GetAllProntoServices", "RemoveNetworkLocationDto", "NM_LocationSearchDto", "NM_LocationMapSearch", "AddLocationsToNetworkDto", "SaveNMNoteRequestDto", "EditNMNoteRequestDto", "DeleteNMNoteRequestDto", "GetInternalLocations", "GetProntoCliniciansByClinic", "GetLocationBusinessGuidRequest", "GetProntoCliniciansByMultiLocation", "NMSettingsRequest", "NMSettingsDto", "AddBusinessIndividualDto", "EditBusinessIndividualDto", "GetNMBusiness", "GetNMContactRequest", "SearchBusinessCases", "GetNetworkChargeTypes", "GetBusinessAudits", "NMAuditDto", "GetNetworksMap", "PhysitrackCaseflowRequest", "BatchRaiseChargesRequest", "AddIncomingInvoiceRequest", "UpdateIncomingInvoiceRequest", "InsertIncomingInvoiceRequest", "IncomingInvoicesAdvancedSearchRequest", "IncomingInvoiceDetailsSearch", "DeleteIncomingInvoiceRequest", "ConvertIncomingInvoiceToBillingItemsRequest", "ConfirmConvertIncomingInvoiceToBillingItemsRequest", "GetServicesForIncomingInvoice", "BillingItemDeleteObject", "BillingItemInsertObject", "BillingItemUpdateObject", "CreditIncomingInvoiceRequest", "IncomingInvoiceExportPreviewRequest", "IncomingInvoiceExportRequest", "IncomingInvoiceExportDownloadRequest", "ChargesExportRequest", "InvoiceExportRequest", "ApplyManagementFeeRequest", "ApplyManagementFeeResponse", "PaymentExportRequest", "PaymentImportRequest", "PaymentImportTemplateRequest", "GetContracts", "GetDistributorContracts", "GetProducts", "GetServicesForProduct", "GetServices", "ValidateProductServiceDto", "SaveContractMappingRequest", "RemoveCustomerDistributorRequest", "ReportTemplatesForProduct", "SaveContractRequest", "GetServicesReports", "CaseflowProductServiceTypeDto", "GetCaseflowProductServiceTypes", "NotificationRecipientTypeDto", "GetProductNotificationRecipientTypes", "ActivateContractDto", "DeactivateContractDto", "SaveChargeTypeRequest", "ChargeTypeDto", "GetChargeTypeRequest", "DeleteChargeTypeRequest", "SearchProductChargeTypesWithUsage", "GetProductChargeTypes", "GetProductServiceCodes", "GetServiceSlaTypes", "GetSubworkflowServiceSla", "PutSubworkflowServiceSla", "SubworkflowServiceSlaDto", "CaseflowMergeFieldsRequest", "CaseflowBatchMergeDataRequest", "CaseflowMergeDataRequest", "MergeDataRequest", "CaseflowMergeData", "CommunicationSenderRequest", "CfBusinessRpSettingsAutomationRolesRequest", "CfBusinessRpSettingsAutomationSelectedRequest", "CfBusinessRpSettingsAutomationSelectedSaveRequest", "GetAuthCodesByWorkflowRequest", "GetCurrentInboundAuthorisations", "GetDefaultAuthorisationCountForService", "GetAuthCodeRequest", "InsertAuthCodeRequest", "EditAuthCodeRequest", "GetValidOutboundAuthorisationRequest", "GetAppointmentWithChargesRequest", "CustomerAppointmentByWorkflowRequest", "GetCustomerAppointmentRequest", "UpdateAppointmentRequest", "UpdateCustomerAppointmentRequest", "SaveAppointmentRequest", "DeleteAppointmentRequest", "BulkEarliestAppointmentSearchRequest", "EnabledClinics", "HowToOrderAppointmentSearchRequest", "CaseflowReserveAppointmentRequest", "DeleteProvisionalAppointmentRequest", "AppointmentSearchRequest", "CaseflowAppointmentFinanceRequest", "GetClientPortalCasesRequest", "GetClientPortalCaseRequest", "GetAllowedPlaceholderServicesForCase", "StartDigitalTriageRequest", "DigitalTriageRedirectRequest", "GetDigitalTriageProviders", "SubscribeEventRequest", "ExecuteActionRequest", "Authenticate", "AuthenticateResponse", "AssignRoles", "AssignRolesResponse", "UnAssignRoles", "UnAssignRolesResponse", "GetAccessToken", "GetAccessTokenResponse"] }