{ "version": 3, "sources": ["../../../packages/shared/tm3-core/api.dtos.ts"], "sourcesContent": ["import { immerable } from \"immer\";\n\nexport interface IReturn\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 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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|null;\n public decimalSearchFieldCondition: NumericSearch|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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\n// @Flags()\nexport enum EPrePaidType\n{\n Items = 0,\n Credits = 1,\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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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 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>) { (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) { (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) { (Object as any).assign(this, init); }\n}\n\n// @Route(\"/practitioners/all\")\nexport class AllPractitionersRequest extends BaseAdvancedSearchRequest implements IReturn>\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) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AllPractitionersRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase(); }\n}\n(AllPractitionersRequest as unknown)[immerable] = true;\n\nexport class PractitionerBulkActionBaseRequest extends BulkActionBaseRequest\n{\n\n public constructor(init?: Partial) { 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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(BookingAuditResponse as unknown)[immerable] = true;\n\nexport class Dictionary { [Key: string]: T; }\n\nexport class JsonField extends Dictionary\n{\n\n public constructor(init?: Partial) { 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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(LocationInfo as unknown)[immerable] = true;\n\n// @Flags()\nexport enum ESSocialSignOn\n{\n Apple = 1,\n Google = 2,\n Microsoft = 4,\n Facebook = 8,\n}\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 public unauthenticatedMessage: string|null;\n public sso: ESSocialSignOn|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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) { (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) { (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 public eligibleForTaxExemption: boolean|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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) { (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) { 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>\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) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'AllStockRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase(); }\n}\n(AllStockRequest as unknown)[immerable] = true;\n\nexport class StockBulkActionBaseRequest extends BulkActionBaseRequest\n{\n\n public constructor(init?: Partial) { 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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(SecurityDto as unknown)[immerable] = true;\n\nexport interface ISecurityLocator\n{\n securityLocator: Func|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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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 public taxExempt: boolean|null;\n // @Ignore()\n public documentsSubDirectory: string|null;\n\n public constructor(init?: Partial) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(DiaryListResponse as unknown)[immerable] = true;\n\nexport class DiaryListRequest extends DiaryListBase implements IReturn>\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'DiaryListRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase(); }\n}\n(DiaryListRequest as unknown)[immerable] = true;\n\nexport class DiaryBulkActionBaseRequest extends BulkActionBaseRequest\n{\n\n public constructor(init?: Partial) { 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) { (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 taxExempt: boolean|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) { (Object as any).assign(this, init); }\n}\n\n// @Route(\"/customers/search\")\nexport class CustomerAdvancedSearchRequest extends BaseAdvancedSearchRequest implements IReturn>\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) { super(init); (Object as any).assign(this, init); }\n public getTypeName() { return 'CustomerAdvancedSearchRequest'; }\n public getMethod() { return 'POST'; }\n public createResponse() { return new ResponseBase(); }\n}\n(CustomerAdvancedSearchRequest as unknown)[immerable] = true;\n\nexport class CustomerBulkActionBaseRequest extends BulkActionBaseRequest\n{\n\n public constructor(init?: Partial) { 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 FallsBelowCreditThreshold = 'FallsBelowCreditThreshold',\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 HasHad = 'HasHad',\n HasNotHad = 'HasNotHad',\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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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 creditValue: 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) { (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 CreditBasedPackage = 7,\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) { (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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n\nexport class StripeEntity_1 extends StripeEntity\n{\n\n public constructor(init?: Partial>) { super(init); (Object as any).assign(this, init); }\n}\n\nexport class PaymentMethodAcssDebit extends StripeEntity_1\n{\n public bankName: string|null;\n public fingerprint: string|null;\n public institutionNumber: string|null;\n public last4: string|null;\n public transitNumber: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAcssDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodAffirm extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAffirm as unknown)[immerable] = true;\n\nexport class PaymentMethodAfterpayClearpay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAfterpayClearpay as unknown)[immerable] = true;\n\nexport class PaymentMethodAlipay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAlipay as unknown)[immerable] = true;\n\nexport class PaymentMethodAlma extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAlma as unknown)[immerable] = true;\n\nexport class PaymentMethodAmazonPay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAmazonPay as unknown)[immerable] = true;\n\nexport class PaymentMethodAuBecsDebit extends StripeEntity_1\n{\n public bsbNumber: string|null;\n public fingerprint: string|null;\n public last4: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodAuBecsDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodBacsDebit extends StripeEntity_1\n{\n public fingerprint: string|null;\n public last4: string|null;\n public sortCode: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBacsDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodBancontact extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBancontact as unknown)[immerable] = true;\n\nexport class Address extends StripeEntity_1
\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
) { super(init); (Object as any).assign(this, init); }\n}\n(Address as unknown)[immerable] = true;\n\nexport class PaymentMethodBillingDetails extends StripeEntity_1\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) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBillingDetails as unknown)[immerable] = true;\n\nexport class PaymentMethodBlik extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBlik as unknown)[immerable] = true;\n\nexport class PaymentMethodBoleto extends StripeEntity_1\n{\n public taxId: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodBoleto as unknown)[immerable] = true;\n\nexport class PaymentMethodCardChecks extends StripeEntity_1\n{\n public addressLine1Check: string|null;\n public addressPostalCodeCheck: string|null;\n public cvcCheck: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardChecks as unknown)[immerable] = true;\n\nexport class PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentOffline extends StripeEntity_1\n{\n public storedAt: string|null;\n public type: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentOffline as unknown)[immerable] = true;\n\nexport class PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentReceipt extends StripeEntity_1\n{\n public accountType: string|null;\n public applicationCryptogram: string|null;\n public applicationPreferredName: string|null;\n public authorizationCode: string|null;\n public authorizationResponseCode: string|null;\n public cardholderVerificationMethod: string|null;\n public dedicatedFileName: string|null;\n public terminalVerificationResults: string|null;\n public transactionStatusInformation: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentReceipt as unknown)[immerable] = true;\n\nexport class PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentWallet extends StripeEntity_1\n{\n public type: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentWallet as unknown)[immerable] = true;\n\nexport class PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresent extends StripeEntity_1\n{\n public amountAuthorized: number|null;\n public brand: string|null;\n public brandProduct: string|null;\n public captureBefore: string|null;\n public cardholderName: string|null;\n public country: string|null;\n public description: string|null;\n public emvAuthData: string|null;\n public expMonth: number|null;\n public expYear: number|null;\n public fingerprint: string|null;\n public funding: string|null;\n public generatedCard: string|null;\n public iin: string|null;\n public incrementalAuthorizationSupported: boolean|null;\n public issuer: string|null;\n public last4: string|null;\n public network: string|null;\n public networkTransactionId: string|null;\n public offline: PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentOffline|null;\n public overcaptureSupported: boolean|null;\n public preferredLocales: string[]|null;\n public readMethod: string|null;\n public receipt: PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentReceipt|null;\n public wallet: PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresentWallet|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresent as unknown)[immerable] = true;\n\nexport class PaymentMethodCardGeneratedFromPaymentMethodDetails extends StripeEntity_1\n{\n public cardPresent: PaymentMethodCardGeneratedFromPaymentMethodDetailsCardPresent|null;\n public type: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardGeneratedFromPaymentMethodDetails as unknown)[immerable] = true;\n\nexport class PaymentMethodCardGeneratedFrom extends StripeEntity_1\n{\n public charge: string|null;\n public paymentMethodDetails: PaymentMethodCardGeneratedFromPaymentMethodDetails|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardGeneratedFrom as unknown)[immerable] = true;\n\nexport class PaymentMethodCardNetworks extends StripeEntity_1\n{\n public available: string[]|null;\n public preferred: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardNetworks as unknown)[immerable] = true;\n\nexport class PaymentMethodCardThreeDSecureUsage extends StripeEntity_1\n{\n public supported: boolean|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardThreeDSecureUsage as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletAmexExpressCheckout extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletAmexExpressCheckout as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletApplePay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletApplePay as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletGooglePay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletGooglePay as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletLink extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletLink as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletMasterpass extends StripeEntity_1\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) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletMasterpass as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletSamsungPay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletSamsungPay as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWalletVisaCheckout extends StripeEntity_1\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) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWalletVisaCheckout as unknown)[immerable] = true;\n\nexport class PaymentMethodCardWallet extends StripeEntity_1\n{\n public amexExpressCheckout: PaymentMethodCardWalletAmexExpressCheckout|null;\n public applePay: PaymentMethodCardWalletApplePay|null;\n public dynamicLast4: string|null;\n public googlePay: PaymentMethodCardWalletGooglePay|null;\n public link: PaymentMethodCardWalletLink|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) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardWallet as unknown)[immerable] = true;\n\nexport class PaymentMethodCard extends StripeEntity_1\n{\n public brand: string|null;\n public checks: PaymentMethodCardChecks|null;\n public country: string|null;\n public description: string|null;\n public displayBrand: string|null;\n public expMonth: number|null;\n public expYear: number|null;\n public fingerprint: string|null;\n public funding: string|null;\n public generatedFrom: PaymentMethodCardGeneratedFrom|null;\n public iin: string|null;\n public issuer: string|null;\n public last4: string|null;\n public networks: PaymentMethodCardNetworks|null;\n public regulatedStatus: string|null;\n public threeDSecureUsage: PaymentMethodCardThreeDSecureUsage|null;\n public wallet: PaymentMethodCardWallet|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCard as unknown)[immerable] = true;\n\nexport class PaymentMethodCardPresentNetworks extends StripeEntity_1\n{\n public available: string[]|null;\n public preferred: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardPresentNetworks as unknown)[immerable] = true;\n\nexport class PaymentMethodCardPresentOffline extends StripeEntity_1\n{\n public storedAt: string|null;\n public type: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardPresentOffline as unknown)[immerable] = true;\n\nexport class PaymentMethodCardPresentWallet extends StripeEntity_1\n{\n public type: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardPresentWallet as unknown)[immerable] = true;\n\nexport class PaymentMethodCardPresent extends StripeEntity_1\n{\n public brand: string|null;\n public brandProduct: string|null;\n public cardholderName: string|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: PaymentMethodCardPresentNetworks|null;\n public offline: PaymentMethodCardPresentOffline|null;\n public preferredLocales: string[]|null;\n public readMethod: string|null;\n public wallet: PaymentMethodCardPresentWallet|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCardPresent as unknown)[immerable] = true;\n\nexport class PaymentMethodCashapp extends StripeEntity_1\n{\n public buyerId: string|null;\n public cashtag: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCashapp as unknown)[immerable] = true;\n\nexport class PaymentMethodCustomerBalance extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodCustomerBalance as unknown)[immerable] = true;\n\nexport class PaymentMethodEps extends StripeEntity_1\n{\n public bank: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodEps as unknown)[immerable] = true;\n\nexport class PaymentMethodFpx extends StripeEntity_1\n{\n public accountHolderType: string|null;\n public bank: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodFpx as unknown)[immerable] = true;\n\nexport class PaymentMethodGiropay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodGiropay as unknown)[immerable] = true;\n\nexport class PaymentMethodGrabpay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodGrabpay as unknown)[immerable] = true;\n\nexport class PaymentMethodIdeal extends StripeEntity_1\n{\n public bank: string|null;\n public bic: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodIdeal as unknown)[immerable] = true;\n\nexport class PaymentMethodInteracPresentNetworks extends StripeEntity_1\n{\n public available: string[]|null;\n public preferred: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodInteracPresentNetworks as unknown)[immerable] = true;\n\nexport class PaymentMethodInteracPresent extends StripeEntity_1\n{\n public brand: string|null;\n public cardholderName: string|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: PaymentMethodInteracPresentNetworks|null;\n public preferredLocales: string[]|null;\n public readMethod: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodInteracPresent as unknown)[immerable] = true;\n\nexport class PaymentMethodKakaoPay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodKakaoPay as unknown)[immerable] = true;\n\nexport class PaymentMethodKlarnaDob extends StripeEntity_1\n{\n public day: number|null;\n public month: number|null;\n public year: number|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodKlarnaDob as unknown)[immerable] = true;\n\nexport class PaymentMethodKlarna extends StripeEntity_1\n{\n public dob: PaymentMethodKlarnaDob|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodKlarna as unknown)[immerable] = true;\n\nexport class PaymentMethodKonbini extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodKonbini as unknown)[immerable] = true;\n\nexport class PaymentMethodKrCard extends StripeEntity_1\n{\n public brand: string|null;\n public last4: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodKrCard as unknown)[immerable] = true;\n\nexport class PaymentMethodLink extends StripeEntity_1\n{\n public email: string|null;\n public persistentToken: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodLink as unknown)[immerable] = true;\n\nexport class PaymentMethodMobilepay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodMobilepay as unknown)[immerable] = true;\n\nexport class PaymentMethodMultibanco extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodMultibanco as unknown)[immerable] = true;\n\nexport class PaymentMethodNaverPay extends StripeEntity_1\n{\n public funding: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodNaverPay as unknown)[immerable] = true;\n\nexport class PaymentMethodOxxo extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodOxxo as unknown)[immerable] = true;\n\nexport class PaymentMethodP24 extends StripeEntity_1\n{\n public bank: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodP24 as unknown)[immerable] = true;\n\nexport class PaymentMethodPayByBank extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodPayByBank as unknown)[immerable] = true;\n\nexport class PaymentMethodPayco extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodPayco as unknown)[immerable] = true;\n\nexport class PaymentMethodPaynow extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodPaynow as unknown)[immerable] = true;\n\nexport class PaymentMethodPaypal extends StripeEntity_1\n{\n public country: string|null;\n public payerEmail: string|null;\n public payerId: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodPaypal as unknown)[immerable] = true;\n\nexport class PaymentMethodPix extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodPix as unknown)[immerable] = true;\n\nexport class PaymentMethodPromptpay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodPromptpay as unknown)[immerable] = true;\n\nexport class PaymentMethodRadarOptions extends StripeEntity_1\n{\n public session: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodRadarOptions as unknown)[immerable] = true;\n\nexport class PaymentMethodRevolutPay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodRevolutPay as unknown)[immerable] = true;\n\nexport class PaymentMethodSamsungPay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSamsungPay as unknown)[immerable] = true;\n\nexport class PaymentMethodSepaDebitGeneratedFrom extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSepaDebitGeneratedFrom as unknown)[immerable] = true;\n\nexport class PaymentMethodSepaDebit extends StripeEntity_1\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) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSepaDebit as unknown)[immerable] = true;\n\nexport class PaymentMethodSofort extends StripeEntity_1\n{\n public country: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSofort as unknown)[immerable] = true;\n\nexport class PaymentMethodSwish extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodSwish as unknown)[immerable] = true;\n\nexport class PaymentMethodTwint extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodTwint as unknown)[immerable] = true;\n\nexport class PaymentMethodUsBankAccountNetworks extends StripeEntity_1\n{\n public preferred: string|null;\n public supported: string[]|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodUsBankAccountNetworks as unknown)[immerable] = true;\n\nexport class PaymentMethodUsBankAccountStatusDetailsBlocked extends StripeEntity_1\n{\n public networkCode: string|null;\n public reason: string|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodUsBankAccountStatusDetailsBlocked as unknown)[immerable] = true;\n\nexport class PaymentMethodUsBankAccountStatusDetails extends StripeEntity_1\n{\n public blocked: PaymentMethodUsBankAccountStatusDetailsBlocked|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodUsBankAccountStatusDetails as unknown)[immerable] = true;\n\nexport class PaymentMethodUsBankAccount extends StripeEntity_1\n{\n public accountHolderType: string|null;\n public accountType: string|null;\n public bankName: string|null;\n public financialConnectionsAccount: string|null;\n public fingerprint: string|null;\n public last4: string|null;\n public networks: PaymentMethodUsBankAccountNetworks|null;\n public routingNumber: string|null;\n public statusDetails: PaymentMethodUsBankAccountStatusDetails|null;\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodUsBankAccount as unknown)[immerable] = true;\n\nexport class PaymentMethodWechatPay extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodWechatPay as unknown)[immerable] = true;\n\nexport class PaymentMethodZip extends StripeEntity_1\n{\n\n public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); }\n}\n(PaymentMethodZip as unknown)[immerable] = true;\n\nexport class PaymentMethod extends StripeEntity_1 implements IHasId, IHasMetadata, IHasObject\n{\n public id: string|null;\n public object: string|null;\n public acssDebit: PaymentMethodAcssDebit|null;\n public affirm: PaymentMethodAffirm|null;\n public afterpayClearpay: PaymentMethodAfterpayClearpay|null;\n public alipay: PaymentMethodAlipay|null;\n public allowRedisplay: string|null;\n public alma: PaymentMethodAlma|null;\n public amazonPay: PaymentMethodAmazonPay|null;\n public auBecsDebit: PaymentMethodAuBecsDebit|null;\n public bacsDebit: PaymentMethodBacsDebit|null;\n public bancontact: PaymentMethodBancontact|null;\n public billingDetails: PaymentMethodBillingDetails|null;\n public blik: PaymentMethodBlik|null;\n public boleto: PaymentMethodBoleto|null;\n public card: PaymentMethodCard|null;\n public cardPresent: PaymentMethodCardPresent|null;\n public cashapp: PaymentMethodCashapp|null;\n public created: string|null;\n public customerBalance: PaymentMethodCustomerBalance|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 kakaoPay: PaymentMethodKakaoPay|null;\n public klarna: PaymentMethodKlarna|null;\n public konbini: PaymentMethodKonbini|null;\n public krCard: PaymentMethodKrCard|null;\n public link: PaymentMethodLink|null;\n public livemode: boolean|null;\n public metadata: { [index:string]: string; }|null;\n public mobilepay: PaymentMethodMobilepay|null;\n public multibanco: PaymentMethodMultibanco|null;\n public naverPay: PaymentMethodNaverPay|null;\n public oxxo: PaymentMethodOxxo|null;\n public p24: PaymentMethodP24|null;\n public payByBank: PaymentMethodPayByBank|null;\n public payco: PaymentMethodPayco|null;\n public paynow: PaymentMethodPaynow|null;\n public paypal: PaymentMethodPaypal|null;\n public pix: PaymentMethodPix|null;\n public promptpay: PaymentMethodPromptpay|null;\n public radarOptions: PaymentMethodRadarOptions|null;\n public revolutPay: PaymentMethodRevolutPay|null;\n public samsungPay: PaymentMethodSamsungPay|null;\n public sepaDebit: PaymentMethodSepaDebit|null;\n public sofort: PaymentMethodSofort|null;\n public swish: PaymentMethodSwish|null;\n public twint: PaymentMethodTwint|null;\n public type: string|null;\n public usBankAccount: PaymentMethodUsBankAccount|null;\n public wechatPay: PaymentMethodWechatPay|null;\n public zip: PaymentMethodZip|null;\n\n public constructor(init?: Partial) { 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) { (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 hideFromExplore: boolean|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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 ExistingCreditPackage = 'ExistingCreditPackage',\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 public restrictToPrivateCharges: boolean|null;\n\n public constructor(init?: Partial) { (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 ExistingCredits = 'ExistingCredits',\n ExistingCreditPackage = 'ExistingCreditPackage',\n}\n\nexport enum CourseEditAppliesTo\n{\n ThisSessionOnly = 'ThisSessionOnly',\n ThisAndAllSubsequentSessions = 'ThisAndAllSubsequentSessions',\n}\n\nexport class DigitalPrescriptionDMDResponse\n{\n public name: string|null;\n public productId: BigInteger|null;\n\n public constructor(init?: Partial) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(WorldPayResponse as unknown)[immerable] = true;\n\nexport class StripeTerminal\n{\n public id: string|null;\n public displayName: string|null;\n public locationId: string|null;\n\n public constructor(init?: Partial) { (Object as any).assign(this, init); }\n}\n(StripeTerminal as unknown)[immerable] = true;\n\nexport class StripeTerminalLocation\n{\n public id: string|null;\n public displayName: string|null;\n public locationTerminals: StripeTerminal[]|null;\n public hasTerminals: boolean|null;\n\n public constructor(init?: Partial) { (Object as any).assign(this, init); }\n}\n(StripeTerminalLocation as unknown)[immerable] = true;\n\nexport class StripeTerminalLocationsResponse\n{\n public terminalLocations: StripeTerminalLocation[]|null;\n\n public constructor(init?: Partial) { (Object as any).assign(this, init); }\n}\n(StripeTerminalLocationsResponse 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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 public totalCredits: number|null;\n public creditsRemaining: number|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(OccurrenceResponse as unknown)[immerable] = true;\n\nexport interface IHasGlobalGuid\n{\n globalGuid: string|null;\n}\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) { 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) { 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) { 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) { 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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { 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 public billingItemStockId: number|null;\n public type: EPrePaidType|null;\n\n public constructor(init?: Partial) { 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 public eligibleForTaxExemption: boolean|null;\n\n public constructor(init?: Partial) { (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) { 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) { (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) { (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) { 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) { (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 creditFee: 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) { (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) { (Object as any).assign(this, init); }\n}\n(QuickbillMedipassResponse as unknown)[immerable] = true;\n\nexport class AppointmentPrePaidResponse\n{\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(SkillResponse as unknown)[immerable] = true;\n\nexport class UpdateFieldBulkActionResponse\n{\n\n public constructor(init?: Partial) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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 cancellationCreditCharge: 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 public isPrivateCharge: boolean|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(SecurityResponse 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) { (Object as any).assign(this, init); }\n}\n(NestedLookup 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) { (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\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) { (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) { 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) { (Object as any).assign(this, init); }\n}\n(CacheResponse as unknown)[immerable] = true;\n\nexport class SingleCacheMapResponse\n{\n public version: string|null;\n public value: { [index:string]: T; }|null;\n\n public constructor(init?: Partial>) { (Object as any).assign(this, init); }\n}\n\nexport class LookupCacheResponse extends SingleCacheMapResponse\n{\n\n public constructor(init?: Partial) { 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) { (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) { (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 public printOnDocument: boolean|null;\n\n public constructor(init?: Partial) { (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) { 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) { (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) { (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) { (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) { (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) { 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) { (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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(ValidateDomainResponse as unknown)[immerable] = true;\n\n// @Flags()\nexport enum LocationStatus\n{\n Active = 0,\n ActiveViewOnly = 1,\n InactiveHidden = 2,\n}\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) { (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) { (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) { (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) { (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) { (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) { (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) { (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: number|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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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: string|null;\n public bookingMethod: string|null;\n public lastAppointmentDate: string|null;\n\n public constructor(init?: Partial) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (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) { (Object as any).assign(this, init); }\n}\n(QuickStartWizardPractitionerResponse 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) { (Object as any).assign(this, init); }\n}\n(ServiceType 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) { (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) { (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